zte's code,first commit

Change-Id: I9a04da59e459a9bc0d67f101f700d9d7dc8d681b
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/CMakeLists.txt b/ap/lib/libcurl/curl-7.54.1/tests/CMakeLists.txt
new file mode 100644
index 0000000..63b4cda
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/CMakeLists.txt
@@ -0,0 +1,4 @@
+add_subdirectory(data)
+add_subdirectory(libtest)
+add_subdirectory(server)
+add_subdirectory(unit)
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/FILEFORMAT b/ap/lib/libcurl/curl-7.54.1/tests/FILEFORMAT
new file mode 100644
index 0000000..5c1e96f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/FILEFORMAT
@@ -0,0 +1,450 @@
+ The test suite's file format is very simple and extensible, closely
+resembling XML. All data for a single test case resides in a single
+ASCII file. Labels mark the beginning and the end of all sections, and each
+label must be written in its own line.  Comments are either XML-style
+(enclosed with <!-- and -->) or C-style (beginning with #) and must appear
+on their own lines and not alongside actual test data.  Most test data files
+are syntactically valid XML, although a few files are not (lack of
+support for character entities and the preservation of CR/LF characters at
+the end of lines are the biggest differences).
+
+ The file begins with a 'testcase' tag, which encompasses the remainder of
+the file.
+
+<testcase>
+
+ Each file is split up in three main sections: reply, client and verify. The
+reply section is used for the server to know what to send as a reply for the
+requests curl sends, the client section defines how the client should behave
+while the verify section defines how to verify that the data stored after a
+command has been run ended up correctly.
+
+ Each main section has a number of available subsections that can be
+specified, that will be checked/used if specified. This document includes all
+the subsections currently supported.
+
+Main sections are 'info', 'reply', 'client' and 'verify'.
+
+<info>
+<keywords>
+A newline-separated list of keywords describing what this test case uses and
+tests. Try to use an already used keyword.  These keywords will be used for
+statistical/informational purposes and for choosing or skipping classes
+of tests.  "Keywords" must begin with an alphabetic character, "-", "["
+or "{" and may actually consist of multiple words separated by spaces
+which are treated together as a single identifier.
+</keywords>
+</info>
+
+<reply>
+<data [nocheck="yes"] [sendzero="yes"] [base64="yes"]>
+data to be sent to the client on its request and later verified that it arrived
+safely. Set nocheck="yes" to prevent the test script from verifying the arrival
+of this data.
+
+If the data contains 'swsclose' anywhere within the start and end tag, and
+this is a HTTP test, then the connection will be closed by the server after
+this response is sent. If not, the connection will be kept persistent.
+
+If the data contains 'swsbounce' anywhere within the start and end tag, the
+HTTP server will detect if this is a second request using the same test and
+part number and will then increase the part number with one. This is useful
+for auth tests and similar.
+
+'sendzero' set to yes means that the (FTP) server will "send" the data even if
+the size is zero bytes. Used to verify curl's behaviour on zero bytes
+transfers.
+
+'base64' set to yes means that the data provided in the test-file is a chunk
+of data encoded with base64. It is the only way a test case can contain binary
+data. (This attribute can in fact be used on any section, but it doesn't make
+much sense for other sections than "data").
+
+For FTP file listings, the <data> section will be used *only* if you make sure
+that there has been a CWD done first to a directory named 'test-[num]' where
+[num] is the test case number. Otherwise the ftp server can't know from which
+test file to load the list content.
+
+</data>
+<dataNUM>
+Send back this contents instead of the <data> one. The num is set by:
+A) The test number in the request line is >10000 and this is the remainder
+of [test case number]%10000.
+B) The request was HTTP and included digest details, which adds 1000 to NUM
+C) If a HTTP request is NTLM type-1, it adds 1001 to num
+D) If a HTTP request is NTLM type-3, it adds 1002 to num
+E) If a HTTP request is Basic and num is already >=1000, it adds 1 to num
+
+Dynamically changing num in this way allows the test harness to be used to
+test authentication negotiation where several different requests must be sent
+to complete a transfer. The response to each request is found in its own data
+section.  Validating the entire negotiation sequence can be done by
+specifying a datacheck section.
+</dataNUM>
+<connect>
+The connect section is used instead of the 'data' for all CONNECT
+requests. The remainder of the rules for the data section then apply but with
+a connect prefix.
+</connect>
+<datacheck [mode="text"] [nonewline="yes"]>
+if the data is sent but this is what should be checked afterwards. If
+'nonewline' is set, we will cut off the trailing newline of this given data
+before comparing with the one actually received by the client.
+
+Use the mode="text" attribute if the output is in text mode on platforms that
+have a text/binary difference.
+</datacheck>
+<datacheckNUM [nonewline="yes"] [mode="text"]>
+The contents of numbered datacheck sections are appended to the non-numbered
+one.
+</datacheckNUM>
+<size>
+number to return on a ftp SIZE command (set to -1 to make this command fail)
+</size>
+<mdtm>
+what to send back if the client sends a (FTP) MDTM command, set to -1 to
+have it return that the file doesn't exist
+</mdtm>
+<postcmd>
+special purpose server-command to control its behavior *after* the
+reply is sent
+For HTTP/HTTPS, these are supported:
+
+wait [secs]
+ - Pause for the given time
+</postcmd>
+<servercmd>
+Special-commands for the server.
+For FTP/SMTP/POP/IMAP, these are supported:
+
+REPLY [command] [return value] [response string]
+ - Changes how the server responds to the [command]. [response string] is
+   evaluated as a perl string, so it can contain embedded \r\n, for example.
+   There's a special [command] named "welcome" (without quotes) which is the
+   string sent immediately on connect as a welcome.
+COUNT [command] [num]
+ - Do the REPLY change for [command] only [num] times and then go back to the
+   built-in approach
+DELAY [command] [secs]
+ - Delay responding to this command for the given time
+RETRWEIRDO
+ - Enable the "weirdo" RETR case when multiple response lines appear at once
+   when a file is transferred
+RETRNOSIZE
+ - Make sure the RETR response doesn't contain the size of the file
+NOSAVE
+ - Don't actually save what is received
+SLOWDOWN
+ - Send FTP responses with 0.01 sec delay between each byte
+PASVBADIP
+ - makes PASV send back an illegal IP in its 227 response
+CAPA [capabilities]
+ - Enables support for and specifies a list of space separated capabilities to
+   return to the client for the IMAP CAPABILITY, POP3 CAPA and SMTP EHLO
+   commands
+AUTH [mechanisms]
+ - Enables support for SASL authentication and specifies a list of space
+   separated mechanisms for IMAP, POP3 and SMTP
+
+For HTTP/HTTPS:
+auth_required   if this is set and a POST/PUT is made without auth, the
+                server will NOT wait for the full request body to get sent
+idle            do nothing after receiving the request, just "sit idle"
+stream          continuously send data to the client, never-ending
+writedelay: [secs] delay this amount between reply packets
+pipe: [num]     tell the server to expect this many HTTP requests before
+                sending back anything, to allow pipelining tests
+skip: [num]     instructs the server to ignore reading this many bytes from a PUT
+                or POST request
+
+rtp: part [num] channel [num] size [num]
+               stream a fake RTP packet for the given part on a chosen channel
+               with the given payload size
+
+connection-monitor When used, this will log [DISCONNECT] to the server.input
+               log when the connection is disconnected.
+upgrade        when an HTTP upgrade header is found, the server will upgrade
+               to http2
+
+For TFTP:
+writedelay: [secs] delay this amount between reply packets (each packet being
+                   512 bytes payload)
+</servercmd>
+</reply>
+
+<client>
+
+<server>
+What server(s) this test case requires/uses:
+
+file
+ftp
+ftp-ipv6
+ftps
+http
+http-ipv6
+http-pipe
+http-proxy
+http-unix
+https
+httptls+srp
+httptls+srp-ipv6
+http/2
+imap
+none
+pop3
+rtsp
+rtsp-ipv6
+scp
+sftp
+smtp
+socks4
+socks5
+
+Give only one per line.  This subsection is mandatory.
+</server>
+
+<features>
+A list of features that MUST be present in the client/library for this test to
+be able to run. If a required feature is not present then the test will be
+SKIPPED.
+
+Alternatively a feature can be prefixed with an exclamation mark to indicate a
+feature is NOT required. If the feature is present then the test will be
+SKIPPED.
+
+Features testable here are:
+
+axTLS
+crypto
+debug
+getrlimit
+GnuTLS
+GSS-API
+http2
+idn
+ipv6
+Kerberos
+large_file
+libz
+Metalink
+NSS
+NTLM
+OpenSSL
+PSL
+socks
+SPNEGO
+SSL
+SSLpinning
+SSPI
+TLS-SRP
+TrackMemory
+unittest
+unix-sockets
+WinSSL
+
+as well as each protocol that curl supports.  A protocol only needs to be
+specified if it is different from the server (useful when the server
+is 'none').
+</features>
+
+<killserver>
+Using the same syntax as in <server> but when mentioned here these servers
+are explicitly KILLED when this test case is completed. Only use this if there
+is no other alternatives. Using this of course requires subsequent tests to
+restart servers.
+</killserver>
+
+<precheck>
+A command line that if set gets run by the test script before the test. If an
+output is displayed by the command or if the return code is non-zero, the test
+will be skipped and the (single-line) output will be displayed as reason for
+not running the test.  Variables are substituted as in the <command> section.
+</precheck>
+
+<postcheck>
+A command line that if set gets run by the test script after the test. If
+the command exists with a non-zero status code, the test will be considered
+to have failed. Variables are substituted as in the <command> section.
+</postcheck>
+
+<tool>
+Name of tool to use instead of "curl". This tool must be built and exist
+either in the libtest/ directory (if the tool starts with 'lib') or in the
+unit/ directory (if the tool starts with 'unit').
+</tool>
+
+<name>
+test case description
+</name>
+
+<setenv>
+variable1=contents1
+variable2=contents2
+
+Set the given environment variables to the specified value before the actual
+command is run. They are cleared again after the command has been run.
+Variables are first substituted as in the <command> section.
+</setenv>
+
+<command [option="no-output/no-include"] [timeout="secs"] [delay="secs"]
+         [type="perl"]>
+command line to run, there's a bunch of %variables that get replaced
+accordingly.
+
+Note that the URL that gets passed to the server actually controls what data
+that is returned. The last slash in the URL must be followed by a number. That
+number (N) will be used by the test-server to load test case N and return the
+data that is defined within the <reply><data></data></reply> section.
+
+If there's no test number found above, the HTTP test server will use the
+number following the last dot in the given hostname (made so that a CONNECT
+can still pass on test number) so that "foo.bar.123" gets treated as test case
+123. Alternatively, if an IPv6 address is provided to CONNECT, the last
+hexadecimal group in the address will be used as the test number! For example
+the address "[1234::ff]" would be treated as test case 255.
+
+Set type="perl" to write the test case as a perl script. It implies that
+there's no memory debugging and valgrind gets shut off for this test.
+
+Set option="no-output" to prevent the test script to slap on the --output
+argument that directs the output to a file. The --output is also not added if
+the verify/stdout section is used.
+
+Set option="no-include" to prevent the test script to slap on the --include
+argument.
+
+Set timeout="secs" to override default server logs advisor read lock timeout.
+This timeout is used by the test harness, once that the command has completed
+execution, to wait for the test server to write out server side log files and
+remove the lock that advised not to read them. The "secs" parameter is the not
+negative integer number of seconds for the timeout. This 'timeout' attribute
+is documented for completeness sake, but is deep test harness stuff and only
+needed for very singular and specific test cases. Avoid using it.
+
+Set delay="secs" to introduce a time delay once that the command has completed
+execution and before the <postcheck> section runs. The "secs" parameter is the
+not negative integer number of seconds for the delay. This 'delay' attribute
+is intended for very specific test cases, and normally not needed.
+
+Available substitute variables include:
+%CLIENT6IP - IPv6 address of the client running curl
+%CLIENTIP  - IPv4 address of the client running curl
+%CURL      - Path to the curl executable
+%FTP2PORT  - Port number of the FTP server 2
+%FTP6PORT  - IPv6 port number of the FTP server
+%FTPPORT   - Port number of the FTP server
+%FTPSPORT  - Port number of the FTPS server
+%FTPTIME2  - Timeout in seconds that should be just sufficient to receive
+             a response from the test FTP server
+%FTPTIME3  - Even longer than %FTPTIME2
+%GOPHER6PORT  - IPv6 port number of the Gopher server
+%GOPHERPORT   - Port number of the Gopher server
+%HOST6IP      - IPv6 address of the host running this test
+%HOSTIP       - IPv4 address of the host running this test
+%HTTP6PORT    - IPv6 port number of the HTTP server
+%HTTPPIPEPORT - Port number of the HTTP pipelining server
+%HTTPUNIXPATH - Path to the Unix socket of the HTTP server
+%HTTPPORT     - Port number of the HTTP server
+%HTTPSPORT    - Port number of the HTTPS server
+%HTTPTLS6PORT - IPv6 port number of the HTTP TLS server
+%HTTPTLSPORT  - Port number of the HTTP TLS server
+%IMAP6PORT - IPv6 port number of the IMAP server
+%IMAPPORT  - Port number of the IMAP server
+%POP36PORT - IPv6 port number of the POP3 server
+%POP3PORT  - Port number of the POP3 server
+%PROXYPORT - Port number of the HTTP proxy
+%PWD       - Current directory
+%RTSP6PORT - IPv6 port number of the RTSP server
+%RTSPPORT  - Port number of the RTSP server
+%SMTP6PORT - IPv6 port number of the SMTP server
+%SMTPPORT  - Port number of the SMTP server
+%SOCKSPORT - Port number of the SOCKS4/5 server
+%SRCDIR    - Full path to the source dir
+%SSHPORT   - Port number of the SCP/SFTP server
+%TFTP6PORT - IPv6 port number of the TFTP server
+%TFTPPORT  - Port number of the TFTP server
+%USER      - Login ID of the user running the test
+</command>
+
+<file name="log/filename">
+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.
+Variables are substituted on the contents of the file as in the <command>
+section.
+</file>
+
+<stdin [nonewline="yes"]>
+Pass this given data on stdin to the tool.
+
+If 'nonewline' is set, we will cut off the trailing newline of this given data
+before comparing with the one actually received by the client
+</stdin>
+
+</client>
+
+<verify>
+<errorcode>
+numerical error code curl is supposed to return. Specify a list of accepted
+error codes by separating multiple numbers with comma. See test 237 for an
+example.
+</errorcode>
+<strip>
+One regex per line that is removed from the protocol dumps before the
+comparison is made. This is very useful to remove dependencies on dynamically
+changing protocol data such as port numbers or user-agent strings.
+</strip>
+<strippart>
+One perl op per line that operates on the protocol dump. This is pretty
+advanced. Example: "s/^EPRT .*/EPRT stripped/"
+</strippart>
+
+<protocol [nonewline="yes"]>
+
+the protocol dump curl should transmit, if 'nonewline' is set, we will cut off
+the trailing newline of this given data before comparing with the one actually
+sent by the client Variables are substituted as in the <command> section.  The
+<strip> and <strippart> rules are applied before comparisons are made.
+
+</protocol>
+
+<proxy [nonewline="yes"]>
+
+The protocol dump curl should transmit to a HTTP proxy (when the http-proxy
+server is used), if 'nonewline' is set, we will cut off the trailing newline
+of this given data before comparing with the one actually sent by the client
+Variables are substituted as in the <command> section. The <strip> and
+<strippart> rules are applied before comparisons are made.
+
+</proxy>
+
+<stdout [mode="text"] [nonewline="yes"]>
+This verifies that this data was passed to stdout.  Variables are
+substituted as in the <command> section.
+
+Use the mode="text" attribute if the output is in text mode on platforms that
+have a text/binary difference.
+
+If 'nonewline' is set, we will cut off the trailing newline of this given data
+before comparing with the one actually received by the client
+</stdout>
+<file name="log/filename" [mode="text"]>
+The file's contents must be identical to this after the test is complete.
+Use the mode="text" attribute if the output is in text mode on platforms that
+have a text/binary difference.
+Variables are substituted as in the <command> section.
+</file>
+<stripfile>
+One perl op per line that operates on the output file or stdout before being
+compared with what is stored in the test file. This is pretty
+advanced. Example: "s/^EPRT .*/EPRT stripped/"
+</stripfile>
+<upload>
+the contents of the upload data curl should have sent
+</upload>
+<valgrind>
+disable - disables the valgrind log check for this test
+</valgrind>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/Makefile.am
new file mode 100644
index 0000000..52eac32
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/Makefile.am
@@ -0,0 +1,116 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+HTMLPAGES = testcurl.html runtests.html
+PDFPAGES = testcurl.pdf runtests.pdf
+MANDISTPAGES = runtests.1.dist testcurl.1.dist
+
+EXTRA_DIST = ftpserver.pl httpserver.pl secureserver.pl runtests.pl getpart.pm \
+ FILEFORMAT README stunnel.pem memanalyze.pl testcurl.pl valgrind.pm ftp.pm   \
+ sshserver.pl sshhelp.pm pathhelp.pm testcurl.1 runtests.1 \
+ serverhelp.pm tftpserver.pl rtspserver.pl directories.pm symbol-scan.pl \
+ CMakeLists.txt mem-include-scan.pl valgrind.supp http_pipe.py extern-scan.pl \
+ manpage-scan.pl nroff-scan.pl http2-server.pl
+
+DISTCLEANFILES = configurehelp.pm
+
+# we have two variables here to make sure DIST_SUBDIRS won't get 'unit'
+# added twice as then targets such as 'distclean' misbehave and try to
+# do things twice in that subdir at times (and thus fails).
+if BUILD_UNITTESTS
+BUILD_UNIT = unit
+DIST_UNIT =
+else
+BUILD_UNIT =
+DIST_UNIT = unit
+endif
+
+SUBDIRS = certs data server libtest $(BUILD_UNIT)
+DIST_SUBDIRS = $(SUBDIRS) $(DIST_UNIT)
+
+PERLFLAGS = -I$(srcdir)
+
+CLEANFILES = .http.pid .https.pid .ftp.pid .ftps.pid $(MANDISTPAGES)
+
+MAN2HTML= roffit $< >$@
+
+curl:
+	@cd $(top_builddir) && $(MAKE)
+
+if CROSSCOMPILING
+TEST = @echo "NOTICE: we can't run the tests when cross-compiling!"
+else # if not cross-compiling:
+TEST = srcdir=$(srcdir) $(PERL) $(PERLFLAGS) $(srcdir)/runtests.pl
+TEST_Q = -a -s
+TEST_AM = -a -am
+TEST_F = -a -p -r
+TEST_T = -a -t
+TEST_E = -a -e
+
+# !flaky means that it'll skip all tests using the flaky keyword
+TEST_NF = -a -p -r !flaky
+endif
+
+# make sure that PERL is pointing to an executable
+perlcheck:
+	@if ! test -x "$(PERL)"; then echo "No perl!"; exit 2; fi
+
+test: perlcheck all
+	$(TEST) $(TFLAGS)
+
+quiet-test: perlcheck all
+	$(TEST) $(TEST_Q) $(TFLAGS)
+
+am-test: perlcheck all
+	$(TEST) $(TEST_AM) $(TFLAGS)
+
+full-test: perlcheck all
+	$(TEST) $(TEST_F) $(TFLAGS)
+
+nonflaky-test: perlcheck all
+	$(TEST) $(TEST_NF) $(TFLAGS)
+
+torture-test: perlcheck all
+	$(TEST) $(TEST_T) $(TFLAGS)
+
+event-test: perlcheck all
+	$(TEST) $(TEST_E) $(TFLAGS)
+
+.1.html:
+	$(MAN2HTML)
+
+.1.pdf:
+	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
+	groff -Tps -man $< >$$foo.ps; \
+	ps2pdf $$foo.ps $@; \
+	rm $$foo.ps; \
+	echo "converted $< to $@")
+
+checksrc:
+	cd libtest && $(MAKE) checksrc
+	cd unit && $(MAKE) checksrc
+	cd server && $(MAKE) checksrc
+
+if CURLDEBUG
+# for debug builds, we scan the sources on all regular make invokes
+all-local: checksrc
+endif
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/Makefile.in
new file mode 100644
index 0000000..c1447b6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/Makefile.in
@@ -0,0 +1,815 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+	ctags-recursive dvi-recursive html-recursive info-recursive \
+	install-data-recursive install-dvi-recursive \
+	install-exec-recursive install-html-recursive \
+	install-info-recursive install-pdf-recursive \
+	install-ps-recursive install-recursive installcheck-recursive \
+	installdirs-recursive pdf-recursive ps-recursive \
+	tags-recursive uninstall-recursive
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
+  distclean-recursive maintainer-clean-recursive
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
+	distdir
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+am__DIST_COMMON = $(srcdir)/Makefile.in README
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+HTMLPAGES = testcurl.html runtests.html
+PDFPAGES = testcurl.pdf runtests.pdf
+MANDISTPAGES = runtests.1.dist testcurl.1.dist
+EXTRA_DIST = ftpserver.pl httpserver.pl secureserver.pl runtests.pl getpart.pm \
+ FILEFORMAT README stunnel.pem memanalyze.pl testcurl.pl valgrind.pm ftp.pm   \
+ sshserver.pl sshhelp.pm pathhelp.pm testcurl.1 runtests.1 \
+ serverhelp.pm tftpserver.pl rtspserver.pl directories.pm symbol-scan.pl \
+ CMakeLists.txt mem-include-scan.pl valgrind.supp http_pipe.py extern-scan.pl \
+ manpage-scan.pl nroff-scan.pl http2-server.pl
+
+DISTCLEANFILES = configurehelp.pm
+@BUILD_UNITTESTS_FALSE@BUILD_UNIT = 
+
+# we have two variables here to make sure DIST_SUBDIRS won't get 'unit'
+# added twice as then targets such as 'distclean' misbehave and try to
+# do things twice in that subdir at times (and thus fails).
+@BUILD_UNITTESTS_TRUE@BUILD_UNIT = unit
+@BUILD_UNITTESTS_FALSE@DIST_UNIT = unit
+@BUILD_UNITTESTS_TRUE@DIST_UNIT = 
+SUBDIRS = certs data server libtest $(BUILD_UNIT)
+DIST_SUBDIRS = $(SUBDIRS) $(DIST_UNIT)
+PERLFLAGS = -I$(srcdir)
+CLEANFILES = .http.pid .https.pid .ftp.pid .ftps.pid $(MANDISTPAGES)
+MAN2HTML = roffit $< >$@
+@CROSSCOMPILING_FALSE@TEST = srcdir=$(srcdir) $(PERL) $(PERLFLAGS) $(srcdir)/runtests.pl
+@CROSSCOMPILING_TRUE@TEST = @echo "NOTICE: we can't run the tests when cross-compiling!"
+@CROSSCOMPILING_FALSE@TEST_Q = -a -s
+@CROSSCOMPILING_FALSE@TEST_AM = -a -am
+@CROSSCOMPILING_FALSE@TEST_F = -a -p -r
+@CROSSCOMPILING_FALSE@TEST_T = -a -t
+@CROSSCOMPILING_FALSE@TEST_E = -a -e
+
+# !flaky means that it'll skip all tests using the flaky keyword
+@CROSSCOMPILING_FALSE@TEST_NF = -a -p -r !flaky
+all: all-recursive
+
+.SUFFIXES:
+.SUFFIXES: .1 .html .pdf
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+	@fail=; \
+	if $(am__make_keepgoing); then \
+	  failcom='fail=yes'; \
+	else \
+	  failcom='exit 1'; \
+	fi; \
+	dot_seen=no; \
+	target=`echo $@ | sed s/-recursive//`; \
+	case "$@" in \
+	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+	  *) list='$(SUBDIRS)' ;; \
+	esac; \
+	for subdir in $$list; do \
+	  echo "Making $$target in $$subdir"; \
+	  if test "$$subdir" = "."; then \
+	    dot_seen=yes; \
+	    local_target="$$target-am"; \
+	  else \
+	    local_target="$$target"; \
+	  fi; \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  || eval $$failcom; \
+	done; \
+	if test "$$dot_seen" = "no"; then \
+	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+	fi; test -z "$$fail"
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+	  include_option=--etags-include; \
+	  empty_fix=.; \
+	else \
+	  include_option=--include; \
+	  empty_fix=; \
+	fi; \
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    test ! -f $$subdir/TAGS || \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+	  fi; \
+	done; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    $(am__make_dryrun) \
+	      || test -d "$(distdir)/$$subdir" \
+	      || $(MKDIR_P) "$(distdir)/$$subdir" \
+	      || exit 1; \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
+	      $(MAKE) $(AM_MAKEFLAGS) \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
+		am__remove_distdir=: \
+		am__skip_length_check=: \
+		am__skip_mode_fix=: \
+	        distdir) \
+	      || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-recursive
+@CURLDEBUG_FALSE@all-local:
+all-am: Makefile all-local
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(am__recursive_targets) install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \
+	check check-am clean clean-generic clean-libtool cscopelist-am \
+	ctags ctags-am distclean distclean-generic distclean-libtool \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-dvi \
+	install-dvi-am install-exec install-exec-am install-html \
+	install-html-am install-info install-info-am install-man \
+	install-pdf install-pdf-am install-ps install-ps-am \
+	install-strip installcheck installcheck-am installdirs \
+	installdirs-am maintainer-clean maintainer-clean-generic \
+	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+	ps ps-am tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+curl:
+	@cd $(top_builddir) && $(MAKE)
+
+# make sure that PERL is pointing to an executable
+perlcheck:
+	@if ! test -x "$(PERL)"; then echo "No perl!"; exit 2; fi
+
+test: perlcheck all
+	$(TEST) $(TFLAGS)
+
+quiet-test: perlcheck all
+	$(TEST) $(TEST_Q) $(TFLAGS)
+
+am-test: perlcheck all
+	$(TEST) $(TEST_AM) $(TFLAGS)
+
+full-test: perlcheck all
+	$(TEST) $(TEST_F) $(TFLAGS)
+
+nonflaky-test: perlcheck all
+	$(TEST) $(TEST_NF) $(TFLAGS)
+
+torture-test: perlcheck all
+	$(TEST) $(TEST_T) $(TFLAGS)
+
+event-test: perlcheck all
+	$(TEST) $(TEST_E) $(TFLAGS)
+
+.1.html:
+	$(MAN2HTML)
+
+.1.pdf:
+	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
+	groff -Tps -man $< >$$foo.ps; \
+	ps2pdf $$foo.ps $@; \
+	rm $$foo.ps; \
+	echo "converted $< to $@")
+
+checksrc:
+	cd libtest && $(MAKE) checksrc
+	cd unit && $(MAKE) checksrc
+	cd server && $(MAKE) checksrc
+
+# for debug builds, we scan the sources on all regular make invokes
+@CURLDEBUG_TRUE@all-local: checksrc
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/README b/ap/lib/libcurl/curl-7.54.1/tests/README
new file mode 100644
index 0000000..633eac5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/README
@@ -0,0 +1,285 @@
+                                  _   _ ____  _
+                              ___| | | |  _ \| |
+                             / __| | | | |_) | |
+                            | (__| |_| |  _ <| |___
+                             \___|\___/|_| \_\_____|
+
+The curl Test Suite
+
+ 1. Running
+  1.1 Requires to run
+  1.2 Port numbers used by test servers
+  1.3 Test servers
+  1.4 Run
+  1.5 Shell startup scripts
+  1.6 Memory test
+  1.7 Debug
+  1.8 Logs
+  1.9 Test input files
+  1.10 Code coverage
+  1.11 Remote testing
+
+ 2. Numbering
+  2.1 Test case numbering
+
+ 3. Write tests
+  3.1 test data
+  3.2 curl tests
+  3.3 libcurl tests
+  3.4 unit tests
+
+ 4. TODO
+  4.1 More protocols
+  4.2 SOCKS auth
+
+==============================================================================
+
+1. Running
+
+ 1.1 Requires to run
+
+  perl (and a unix-style shell)
+  python (and a unix-style shell)
+  diff (when a test fails, a diff is shown)
+  stunnel (for HTTPS and FTPS tests)
+  OpenSSH or SunSSH (for SCP, SFTP and SOCKS4/5 tests)
+  nghttpx (for HTTP/2 tests)
+  nroff (for --manual tests)
+
+ 1.2 Port numbers used by test servers
+
+  - TCP/8990 for HTTP
+  - TCP/8991 for HTTPS
+  - TCP/8992 for FTP
+  - TCP/8993 for FTPS
+  - TCP/8994 for HTTP IPv6
+  - TCP/8995 for FTP (2)
+  - TCP/8996 for FTP IPv6
+  - UDP/8997 for TFTP
+  - UDP/8998 for TFTP IPv6
+  - TCP/8999 for SCP/SFTP
+  - TCP/9000 for SOCKS
+  - TCP/9001 for POP3
+  - TCP/9002 for POP3 IPv6
+  - TCP/9003 for IMAP
+  - TCP/9004 for IMAP IPv6
+  - TCP/9005 for SMTP
+  - TCP/9006 for SMTP IPv6
+  - TCP/9007 for RTSP
+  - TCP/9008 for RTSP IPv6
+  - TCP/9009 for GOPHER
+  - TCP/9010 for GOPHER IPv6
+  - TCP/9011 for HTTPS server with TLS-SRP support
+  - TCP/9012 for HTTPS IPv6 server with TLS-SRP support
+  - TCP/9013 for HTTP proxy server for CONNECT
+  - TCP/9014 for HTTP pipelining server
+  - TCP/9015 for HTTP/2 server
+
+ 1.3 Test servers
+
+  The test suite runs simple FTP, POP3, IMAP, SMTP, HTTP and TFTP stand-alone
+  servers on the ports listed above to which it makes requests. For SSL tests,
+  it runs stunnel to handle encryption to the regular servers. For SSH, it
+  runs a standard OpenSSH server. For SOCKS4/5 tests SSH is used to perform
+  the SOCKS functionality and requires a SSH client and server.
+
+  The base port number (8990), which all the individual port numbers are
+  indexed from, can be set explicitly using runtests.pl' -b option to allow
+  running more than one instance of the test suite simultaneously on one
+  machine, or just move the servers in case you have local services on any of
+  those ports.
+
+  The HTTP server supports listening on a Unix domain socket, the default
+  location is 'http.sock'.
+
+ 1.4 Run
+
+  './configure && make && make test'. This builds the test suite support code
+  and invokes the 'runtests.pl' perl script to run all the tests. Edit the top
+  variables of that script in case you have some specific needs, or run the
+  script manually (after the support code has been built).
+
+  The script breaks on the first test that doesn't do OK. Use -a to prevent
+  the script from aborting on the first error. Run the script with -v for more
+  verbose output. Use -d to run the test servers with debug output enabled as
+  well. Specifying -k keeps all the log files generated by the test intact.
+
+  Use -s for shorter output, or pass test numbers to run specific tests only
+  (like "./runtests.pl 3 4" to test 3 and 4 only). It also supports test case
+  ranges with 'to', as in "./runtests 3 to 9" which runs the seven tests from
+  3 to 9. Any test numbers starting with ! are disabled, as are any test
+  numbers found in the files data/DISABLED or data/DISABLED.local (one per
+  line). The latter is meant for local temporary disables and will be ignored
+  by git.
+
+  When -s is not present, each successful test will display on one line the
+  test number and description and on the next line a set of flags, the test
+  result, current test sequence, total number of tests to be run and an
+  estimated amount of time to complete the test run. The flags consist of
+  these letters describing what is checked in this test:
+
+    s stdout
+    d data
+    u upload
+    p protocol
+    o output
+    e exit code
+    m memory
+    v valgrind
+
+ 1.5 Shell startup scripts
+
+  Tests which use the ssh test server, SCP/SFTP/SOCKS tests, might be badly
+  influenced by the output of system wide or user specific shell startup
+  scripts, .bashrc, .profile, /etc/csh.cshrc, .login, /etc/bashrc, etc. which
+  output text messages or escape sequences on user login.  When these shell
+  startup messages or escape sequences are output they might corrupt the
+  expected stream of data which flows to the sftp-server or from the ssh
+  client which can result in bad test behaviour or even prevent the test
+  server from running.
+
+  If the test suite ssh or sftp server fails to start up and logs the message
+  'Received message too long' then you are certainly suffering the unwanted
+  output of a shell startup script.  Locate, cleanup or adjust the shell
+  script.
+
+ 1.6 Memory test
+
+  The test script will check that all allocated memory is freed properly IF
+  curl has been built with the CURLDEBUG define set. The script will
+  automatically detect if that is the case, and it will use the
+  'memanalyze.pl' script to analyze the memory debugging output.
+
+  Also, if you run tests on a machine where valgrind is found, the script will
+  use valgrind to run the test with (unless you use -n) to further verify
+  correctness.
+
+  runtests.pl's -t option will enable torture testing mode, which runs each
+  test many times and makes each different memory allocation fail on each
+  successive run.  This tests the out of memory error handling code to ensure
+  that memory leaks do not occur even in those situations. It can help to
+  compile curl with CPPFLAGS=-DMEMDEBUG_LOG_SYNC when using this option, to
+  ensure that the memory log file is properly written even if curl crashes.
+
+ 1.7 Debug
+
+  If a test case fails, you can conveniently get the script to invoke the
+  debugger (gdb) for you with the server running and the exact same command
+  line parameters that failed. Just invoke 'runtests.pl <test number> -g' and
+  then just type 'run' in the debugger to perform the command through the
+  debugger.
+
+ 1.8 Logs
+
+  All logs are generated in the log/ subdirectory (it is emptied first in the
+  runtests.pl script). Use runtests.pl -k to force it to keep the temporary
+  files after the test run since successful runs will clean it up otherwise.
+
+ 1.9 Test input files
+
+  All test cases are put in the data/ subdirectory. Each test is stored in the
+  file named according to the test number.
+
+  See FILEFORMAT for the description of the test case files.
+
+ 1.10 Code coverage
+
+  gcc provides a tool that can determine the code coverage figures for
+  the test suite.  To use it, configure curl with
+  CFLAGS='-fprofile-arcs -ftest-coverage -g -O0'.  Make sure you run the normal
+  and torture tests to get more full coverage, i.e. do:
+
+    make test
+    make test-torture
+
+  The graphical tool ggcov can be used to browse the source and create
+  coverage reports on *NIX hosts:
+
+    ggcov -r lib src
+
+  The text mode tool gcov may also be used, but it doesn't handle object files
+  in more than one directory very well.
+
+ 1.11 Remote testing
+
+  The runtests.pl script provides some hooks to allow curl to be tested on a
+  machine where perl can not be run.  The test framework in this case runs on
+  a workstation where perl is available, while curl itself is run on a remote
+  system using ssh or some other remote execution method.  See the comments at
+  the beginning of runtests.pl for details.
+
+2. Numbering
+
+ 2.1 Test case numbering
+
+     1   -  99   HTTP
+     100 - 199   FTP
+     200 - 299   FILE
+     300 - 399   HTTPS
+     400 - 499   FTPS
+     500 - 599   libcurl source code tests, not using the curl command tool
+     600 - 699   SCP/SFTP
+     700 - 799   SOCKS4 (even numbers) and SOCK5 (odd numbers)
+     800 - 849   IMAP
+     850 - 899   POP3
+     900 - 999   SMTP
+     1000 - 1299 miscellaneous
+     1300 - 1399 unit tests
+     1400 - 1499 miscellaneous
+     1500 - 1599 libcurl source code tests, not using the curl command tool
+                 (same as 5xx)
+     1600 - 1699 unit tests
+     2000 - x    multiple sequential protocols per test case
+
+  There's nothing in the system that *requires* us to keep within these number
+  series.
+
+3. Write tests
+
+  Here's a quick description on writing test cases. We basically have three
+  kinds of tests: the ones that test the curl tool, the ones that build small
+  applications and test libcurl directly and the unit tests that test
+  individual (possibly internal) functions.
+
+ 3.1 test data
+
+  Each test has a master file that controls all the test data. What to read,
+  what the protocol exchange should look like, what exit code to expect and
+  what command line arguments to use etc.
+
+  These files are tests/data/test[num] where [num] is described in section 2
+  of this document, and the XML-like file format of them is described in the
+  separate tests/FILEFORMAT document.
+
+ 3.2 curl tests
+
+  A test case that runs the curl tool and verifies that it gets the correct
+  data, it sends the correct data, it uses the correct protocol primitives
+  etc.
+
+ 3.3 libcurl tests
+
+  The libcurl tests are identical to the curl ones, except that they use a
+  specific and dedicated custom-built program to run instead of "curl". This
+  tool is built from source code placed in tests/libtest and if you want to
+  make a new libcurl test that is where you add your code.
+
+ 3.4 unit tests
+
+  Unit tests are tests in the 13xx sequence and they are placed in tests/unit.
+  There's a tests/unit/README describing the specific set of checks and macros
+  that may be used when writing tests that verify behaviors of specific
+  individual functions.
+
+  The unit tests depend on curl being built with debug enabled.
+
+4. TODO
+
+ 4.1 More protocols
+
+  Add tests for TELNET, LDAP, DICT...
+
+ 4.2 SOCKS auth
+
+  SOCKS4/5 test deficiencies - no proxy authentication tests as SSH (the
+  test mechanism) doesn't support them
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.cacert b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.cacert
new file mode 100644
index 0000000..d3ec4d3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.cacert
@@ -0,0 +1,84 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311616 (0xcfa60bc5140)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Aug 24 15:07:11 2031 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (2048 bit)
+                Modulus:
+                    00:e1:4c:d9:74:1a:a4:a3:42:57:a4:7a:2e:74:02:
+                    08:49:6a:6a:1d:db:de:c3:43:d6:48:60:12:30:ed:
+                    d6:6e:74:16:81:16:4e:50:b9:6c:b9:36:0d:19:a4:
+                    f7:85:99:40:46:26:46:33:86:ce:0c:27:71:e4:8f:
+                    0f:b4:3a:99:6d:af:78:48:b7:cb:c4:d3:60:7d:d0:
+                    17:6f:23:bc:89:c0:bc:16:b8:94:f0:b2:10:8d:c8:
+                    e0:35:97:ed:8f:c6:db:9b:cd:aa:f6:8c:45:dc:0f:
+                    ee:a0:78:12:be:f6:7d:f4:f7:b6:8c:4e:e5:7d:32:
+                    e8:f7:f7:1e:04:46:9e:08:cd:cb:ec:e2:9a:c3:35:
+                    3f:ce:a1:01:e3:10:0a:ec:d9:ab:13:09:eb:e6:39:
+                    6b:92:30:c7:08:bd:8a:32:ef:0b:b2:61:6f:11:43:
+                    95:cf:31:ea:19:01:cc:1a:6d:d2:d5:57:35:da:c0:
+                    ae:46:39:d3:33:ed:f8:c0:1e:ad:3d:68:6f:a8:53:
+                    24:ac:d6:f9:dd:2b:51:50:77:e4:b7:5d:ad:48:80:
+                    5d:65:57:e5:eb:07:82:7d:cb:72:4f:06:6a:34:d4:
+                    38:c8:6b:ed:8a:3a:68:5e:35:e3:78:14:da:5d:86:
+                    9f:e5:d4:1c:dd:90:c2:7c:a2:00:d4:95:65:04:85:
+                    ff:83
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Subject Key Identifier: 
+                12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+    Signature Algorithm: sha1WithRSAEncryption
+         d4:d0:22:19:78:2e:2e:1d:83:c6:79:89:c1:a8:23:43:4e:86:
+         76:16:31:bd:b7:c0:44:2c:b9:2c:79:99:2f:02:48:33:1e:a7:
+         d7:0e:d9:f1:cb:ed:39:1a:34:b3:50:af:c9:8d:64:bf:ff:72:
+         1b:1d:e0:5d:40:3b:b5:00:7c:d1:78:ff:45:ee:d9:05:3f:32:
+         f6:cd:f4:d3:79:58:d8:44:94:65:f5:c3:a9:5d:d8:13:d9:57:
+         e7:13:18:fa:f3:72:0b:cf:a3:4a:f4:6e:5e:74:30:3c:cb:76:
+         28:f9:44:9a:ba:3e:b7:3e:01:79:3e:cb:5c:df:5a:d4:6c:34:
+         aa:bd:c0:6d:25:85:e5:28:f6:15:e1:9d:af:a7:f7:a7:6c:2a:
+         1d:1d:93:1e:89:71:66:c7:0b:e4:ce:36:c1:21:c4:73:5d:2b:
+         24:a9:3d:26:df:1c:e8:60:69:e3:82:98:c3:5b:91:9e:da:bd:
+         27:ee:e0:fd:64:ea:7d:35:91:fd:5e:1e:33:82:24:39:7b:49:
+         af:23:05:fc:6e:53:7e:07:69:f4:e7:e3:1f:f0:1c:59:87:4c:
+         b6:74:c9:60:ed:f5:ab:a0:31:8a:05:d4:64:9f:1e:16:b6:9f:
+         f8:7e:0d:ac:b7:d9:16:b9:b3:bc:0b:03:6b:24:e9:46:81:dc:
+         d8:52:63:75
+-----BEGIN CERTIFICATE-----
+MIIDkjCCAnqgAwIBAgIGDPpgvFFAMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0zMTA4MjQxNTA3MTFaMGgxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjCCASIwDQYJ
+KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOFM2XQapKNCV6R6LnQCCElqah3b3sND
+1khgEjDt1m50FoEWTlC5bLk2DRmk94WZQEYmRjOGzgwnceSPD7Q6mW2veEi3y8TT
+YH3QF28jvInAvBa4lPCyEI3I4DWX7Y/G25vNqvaMRdwP7qB4Er72ffT3toxO5X0y
+6Pf3HgRGngjNy+zimsM1P86hAeMQCuzZqxMJ6+Y5a5Iwxwi9ijLvC7JhbxFDlc8x
+6hkBzBpt0tVXNdrArkY50zPt+MAerT1ob6hTJKzW+d0rUVB35LddrUiAXWVX5esH
+gn3Lck8GajTUOMhr7Yo6aF4143gU2l2Gn+XUHN2QwnyiANSVZQSF/4MCAwEAAaNC
+MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLK
+uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBBQUAA4IBAQDU0CIZeC4uHYPG
+eYnBqCNDToZ2FjG9t8BELLkseZkvAkgzHqfXDtnxy+05GjSzUK/JjWS//3IbHeBd
+QDu1AHzReP9F7tkFPzL2zfTTeVjYRJRl9cOpXdgT2VfnExj683ILz6NK9G5edDA8
+y3Yo+USauj63PgF5Pstc31rUbDSqvcBtJYXlKPYV4Z2vp/enbCodHZMeiXFmxwvk
+zjbBIcRzXSskqT0m3xzoYGnjgpjDW5Ge2r0n7uD9ZOp9NZH9Xh4zgiQ5e0mvIwX8
+blN+B2n05+Mf8BxZh0y2dMlg7fWroDGKBdRknx4Wtp/4fg2st9kWubO8CwNrJOlG
+gdzYUmN1
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.cnf b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.cnf
new file mode 100644
index 0000000..ba99881
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.cnf
@@ -0,0 +1,11 @@
+[ ca ]
+default_ca = EdelCurlRoot
+
+[ EdelCurlRoot ]
+database = EdelCurlRoot-ca.db
+certificate = EdelCurlRoot-ca.crt
+private_key = EdelCurlRoot-ca.key
+crlnumber = EdelCurlRoot-ca.cnt
+default_md = sha1
+default_days = 365
+default_crl_days = 30
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.crt b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.crt
new file mode 100644
index 0000000..d3ec4d3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.crt
@@ -0,0 +1,84 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311616 (0xcfa60bc5140)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Aug 24 15:07:11 2031 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (2048 bit)
+                Modulus:
+                    00:e1:4c:d9:74:1a:a4:a3:42:57:a4:7a:2e:74:02:
+                    08:49:6a:6a:1d:db:de:c3:43:d6:48:60:12:30:ed:
+                    d6:6e:74:16:81:16:4e:50:b9:6c:b9:36:0d:19:a4:
+                    f7:85:99:40:46:26:46:33:86:ce:0c:27:71:e4:8f:
+                    0f:b4:3a:99:6d:af:78:48:b7:cb:c4:d3:60:7d:d0:
+                    17:6f:23:bc:89:c0:bc:16:b8:94:f0:b2:10:8d:c8:
+                    e0:35:97:ed:8f:c6:db:9b:cd:aa:f6:8c:45:dc:0f:
+                    ee:a0:78:12:be:f6:7d:f4:f7:b6:8c:4e:e5:7d:32:
+                    e8:f7:f7:1e:04:46:9e:08:cd:cb:ec:e2:9a:c3:35:
+                    3f:ce:a1:01:e3:10:0a:ec:d9:ab:13:09:eb:e6:39:
+                    6b:92:30:c7:08:bd:8a:32:ef:0b:b2:61:6f:11:43:
+                    95:cf:31:ea:19:01:cc:1a:6d:d2:d5:57:35:da:c0:
+                    ae:46:39:d3:33:ed:f8:c0:1e:ad:3d:68:6f:a8:53:
+                    24:ac:d6:f9:dd:2b:51:50:77:e4:b7:5d:ad:48:80:
+                    5d:65:57:e5:eb:07:82:7d:cb:72:4f:06:6a:34:d4:
+                    38:c8:6b:ed:8a:3a:68:5e:35:e3:78:14:da:5d:86:
+                    9f:e5:d4:1c:dd:90:c2:7c:a2:00:d4:95:65:04:85:
+                    ff:83
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Subject Key Identifier: 
+                12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+    Signature Algorithm: sha1WithRSAEncryption
+         d4:d0:22:19:78:2e:2e:1d:83:c6:79:89:c1:a8:23:43:4e:86:
+         76:16:31:bd:b7:c0:44:2c:b9:2c:79:99:2f:02:48:33:1e:a7:
+         d7:0e:d9:f1:cb:ed:39:1a:34:b3:50:af:c9:8d:64:bf:ff:72:
+         1b:1d:e0:5d:40:3b:b5:00:7c:d1:78:ff:45:ee:d9:05:3f:32:
+         f6:cd:f4:d3:79:58:d8:44:94:65:f5:c3:a9:5d:d8:13:d9:57:
+         e7:13:18:fa:f3:72:0b:cf:a3:4a:f4:6e:5e:74:30:3c:cb:76:
+         28:f9:44:9a:ba:3e:b7:3e:01:79:3e:cb:5c:df:5a:d4:6c:34:
+         aa:bd:c0:6d:25:85:e5:28:f6:15:e1:9d:af:a7:f7:a7:6c:2a:
+         1d:1d:93:1e:89:71:66:c7:0b:e4:ce:36:c1:21:c4:73:5d:2b:
+         24:a9:3d:26:df:1c:e8:60:69:e3:82:98:c3:5b:91:9e:da:bd:
+         27:ee:e0:fd:64:ea:7d:35:91:fd:5e:1e:33:82:24:39:7b:49:
+         af:23:05:fc:6e:53:7e:07:69:f4:e7:e3:1f:f0:1c:59:87:4c:
+         b6:74:c9:60:ed:f5:ab:a0:31:8a:05:d4:64:9f:1e:16:b6:9f:
+         f8:7e:0d:ac:b7:d9:16:b9:b3:bc:0b:03:6b:24:e9:46:81:dc:
+         d8:52:63:75
+-----BEGIN CERTIFICATE-----
+MIIDkjCCAnqgAwIBAgIGDPpgvFFAMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0zMTA4MjQxNTA3MTFaMGgxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjCCASIwDQYJ
+KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOFM2XQapKNCV6R6LnQCCElqah3b3sND
+1khgEjDt1m50FoEWTlC5bLk2DRmk94WZQEYmRjOGzgwnceSPD7Q6mW2veEi3y8TT
+YH3QF28jvInAvBa4lPCyEI3I4DWX7Y/G25vNqvaMRdwP7qB4Er72ffT3toxO5X0y
+6Pf3HgRGngjNy+zimsM1P86hAeMQCuzZqxMJ6+Y5a5Iwxwi9ijLvC7JhbxFDlc8x
+6hkBzBpt0tVXNdrArkY50zPt+MAerT1ob6hTJKzW+d0rUVB35LddrUiAXWVX5esH
+gn3Lck8GajTUOMhr7Yo6aF4143gU2l2Gn+XUHN2QwnyiANSVZQSF/4MCAwEAAaNC
+MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLK
+uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBBQUAA4IBAQDU0CIZeC4uHYPG
+eYnBqCNDToZ2FjG9t8BELLkseZkvAkgzHqfXDtnxy+05GjSzUK/JjWS//3IbHeBd
+QDu1AHzReP9F7tkFPzL2zfTTeVjYRJRl9cOpXdgT2VfnExj683ILz6NK9G5edDA8
+y3Yo+USauj63PgF5Pstc31rUbDSqvcBtJYXlKPYV4Z2vp/enbCodHZMeiXFmxwvk
+zjbBIcRzXSskqT0m3xzoYGnjgpjDW5Ge2r0n7uD9ZOp9NZH9Xh4zgiQ5e0mvIwX8
+blN+B2n05+Mf8BxZh0y2dMlg7fWroDGKBdRknx4Wtp/4fg2st9kWubO8CwNrJOlG
+gdzYUmN1
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.csr b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.csr
new file mode 100644
index 0000000..7d5e300
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.csr
@@ -0,0 +1,17 @@
+-----BEGIN CERTIFICATE REQUEST-----
+MIICrTCCAZUCAQAwaDELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAkBgNVBAMMHU5vcnRoZXJu
+IE5vd2hlcmUgVHJ1c3QgQW5jaG9yMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
+CgKCAQEA4UzZdBqko0JXpHoudAIISWpqHdvew0PWSGASMO3WbnQWgRZOULlsuTYN
+GaT3hZlARiZGM4bODCdx5I8PtDqZba94SLfLxNNgfdAXbyO8icC8FriU8LIQjcjg
+NZftj8bbm82q9oxF3A/uoHgSvvZ99Pe2jE7lfTLo9/ceBEaeCM3L7OKawzU/zqEB
+4xAK7NmrEwnr5jlrkjDHCL2KMu8LsmFvEUOVzzHqGQHMGm3S1Vc12sCuRjnTM+34
+wB6tPWhvqFMkrNb53StRUHfkt12tSIBdZVfl6weCfctyTwZqNNQ4yGvtijpoXjXj
+eBTaXYaf5dQc3ZDCfKIA1JVlBIX/gwIDAQABoAAwDQYJKoZIhvcNAQELBQADggEB
+ANpolqnyNQ2zhqURf1ImBOTKLqN77neGe01rdkMrQfNP+ZSr5pxcoOZgMjUGrhyQ
+C6RWexcjwMFvr+16bsEyiBgw/PxTziw6ozvJZkDVQanKZet9+6o8P6AzfjOfwIiU
+8OkLYDaNJ0M807fTNFWdt/yDY1WNfNAxIX3gMMJ1dRvvLvgIJVE4RRAaW/pEMHky
+sQTfExs99Xooqh3E6CWyR1bVHWuid0a02LcD2Q0bKTBmi3xyBjEaq3vXxS6j1fDs
+aWpwznwuuX+J7K+MHYJH9DQIg/QY6rQzxokZ92wJGFdzL3m+kou6++OAPu1plpTL
+im5n/e87gdjerEJgCqoP4S8=
+-----END CERTIFICATE REQUEST-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.der
new file mode 100644
index 0000000..3f4ec7b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.key b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.key
new file mode 100644
index 0000000..bf46d1e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.key
@@ -0,0 +1,27 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIEpAIBAAKCAQEA4UzZdBqko0JXpHoudAIISWpqHdvew0PWSGASMO3WbnQWgRZO
+ULlsuTYNGaT3hZlARiZGM4bODCdx5I8PtDqZba94SLfLxNNgfdAXbyO8icC8FriU
+8LIQjcjgNZftj8bbm82q9oxF3A/uoHgSvvZ99Pe2jE7lfTLo9/ceBEaeCM3L7OKa
+wzU/zqEB4xAK7NmrEwnr5jlrkjDHCL2KMu8LsmFvEUOVzzHqGQHMGm3S1Vc12sCu
+RjnTM+34wB6tPWhvqFMkrNb53StRUHfkt12tSIBdZVfl6weCfctyTwZqNNQ4yGvt
+ijpoXjXjeBTaXYaf5dQc3ZDCfKIA1JVlBIX/gwIDAQABAoIBAQDGGcWGgjrLVnUr
+qUcZOARDUW9XK9IWjZpn7xlvrmECo8552Lwp3LDNtcoVB2mhLhxG0jad7eVU6IYL
+ewNK7M+lk0lHX1yrh1Trq0I/tgN8eFyp+cj0Tw2hLcR/O0RmTGsi9tdhi/uNQPEI
+ZivNf31HHVyEyIae7FnOVpotFk6022EElQd8F8GeeKpo9pQs8sHAVOUVC8Mf2sr+
+bFyo9nzU0XkSay72ozU9O5Iw2d5aVrN5f3NS+JG9OpzvouNwkaAMOUsLVvZlUTqY
+0ve5CY2rB3D72h4GJfM2aHi8hwj56yBOsyIhBSXNYJM8nXKEbJaK5ulVv/a7KKTk
+KzSdk/mJAoGBAPXPLLJgx0mZKXNXqSvSsvgVzcpLrJh8figoF4rMzq8+5bN9Y6KU
+Lvb2ODIm/oGCIiGDdFTYqBJ0/EpauaAJgdzIwYnMZXmVB97pmwni9KrDPDwWTOqS
+3Yzh0t4C8DAgwZE4X6Ad/fmn7V06dfJZZJynL9exPp8RF7ptJ2yOnlbdAoGBAOqk
+AfRWuPGeZL9rFkd45+j03MDHglE2xKhsbRobHANItHo7r26D/Ov7QkM+lGlqdrNg
+tTPPtHs50Ek+Sb0X31/Fj45IqQroxctpbZAaJchVl88tvKXA8fkk14a9GLiow3Bk
+UGA5DFRmsIMXEengzRJoxcHAbbciGWdeSneH49nfAoGAVMypHcyXU8Ob8ieuu+iP
+R1i2SvC6VUy1dQMHxCGNuBVZxwcd5Ut7vEUK8/pR2LndLnScIF0x9lQXaUtNOHGv
+NEypv/EcnMoWEgfDLbD3OSXrVMtYs6ABAIYzadXXqLLUNFYfXyyZnpQZJg1x/S5r
+sENZFO8XrGaIKg9YB3JYG50CgYBUQweMpmQOKNKHRz6d9hZaOyzXcg4jeiaPUTiw
+6lFaAI8HYk2yw2VdnUKDgYKshJYR/sWz0IBAzFc3Jk42wM7vxrOx5fgGuebmEHtP
+B4TP96TnusYHRE3hKdDYSyoIjlp5Dx0qIPKDkMkMmolNUvRyCvwRgzgjTvSOgXb+
+i+dQQwKBgQCKn04xYbhkMOiHxNP/DUf6+XmV1V7KbpjIySychbxcTKCV98c9q491
+YjF8FJgi2JdV5XOHWaKti2Qg/tYz7CBtqkQdeNjtfKkOUA8ZyZeiNZdPIza9tzmr
+t6mCthH1oT3jyiddhSYxyfUBW3olPhBPj8YBblmq1QHE8y2j3CNjvw==
+-----END RSA PRIVATE KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.prm b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.prm
new file mode 100644
index 0000000..d0eff48
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/EdelCurlRoot-ca.prm
@@ -0,0 +1,18 @@
+extensions = x509v3
+[ req ]
+default_bits                    = 2048
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = Northern Nowhere Trust Anchor
+[ x509v3 ]
+basicConstraints = critical,CA:true
+keyUsage        = critical,keyCertSign,cRLSign
+subjectKeyIdentifier = hash
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/certs/Makefile.am
new file mode 100644
index 0000000..7e7f1fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Makefile.am
@@ -0,0 +1,91 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign
+
+SUBDIRS = scripts
+
+CERTCONFIGS = \
+  EdelCurlRoot-ca.prm \
+  EdelCurlRoot-ca.cnf \
+  Server-localhost-sv.prm \
+  Server-localhost.nn-sv.prm \
+  Server-localhost0h-sv.prm
+
+GENERATEDCERTS = \
+  EdelCurlRoot-ca.cacert \
+  EdelCurlRoot-ca.crt \
+  EdelCurlRoot-ca.csr \
+  EdelCurlRoot-ca.der \
+  EdelCurlRoot-ca.key \
+  Server-localhost-sv.crl \
+  Server-localhost-sv.crt \
+  Server-localhost-sv.csr \
+  Server-localhost-sv.der \
+  Server-localhost-sv.dhp \
+  Server-localhost-sv.key \
+  Server-localhost-sv.pem \
+  Server-localhost-sv.pub.der \
+  Server-localhost-sv.pub.pem \
+  Server-localhost.nn-sv.crl \
+  Server-localhost.nn-sv.crt \
+  Server-localhost.nn-sv.csr \
+  Server-localhost.nn-sv.der \
+  Server-localhost.nn-sv.dhp \
+  Server-localhost.nn-sv.key \
+  Server-localhost.nn-sv.pem \
+  Server-localhost.nn-sv.pub.der \
+  Server-localhost.nn-sv.pub.pem \
+  Server-localhost0h-sv.crl \
+  Server-localhost0h-sv.crt \
+  Server-localhost0h-sv.csr \
+  Server-localhost0h-sv.der \
+  Server-localhost0h-sv.dhp \
+  Server-localhost0h-sv.key \
+  Server-localhost0h-sv.pem \
+  Server-localhost0h-sv.pub.der \
+  Server-localhost0h-sv.pub.pem
+
+SRPFILES = \
+  srp-verifier-conf \
+  srp-verifier-db
+
+EXTRA_DIST = $(CERTCONFIGS) $(GENERATEDCERTS) $(SRPFILES)
+
+# Rebuild the certificates
+
+clean-certs:
+	cd $(srcdir); rm -f $(GENERATEDCERTS)
+
+build-certs: $(srcdir)/EdelCurlRoot-ca.cacert $(srcdir)/Server-localhost-sv.pem \
+	$(srcdir)/Server-localhost.nn-sv.pem $(srcdir)/Server-localhost0h-sv.pem
+
+$(srcdir)/EdelCurlRoot-ca.cacert:
+	cd $(srcdir); scripts/genroot.sh EdelCurlRoot
+
+$(srcdir)/Server-localhost-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
+	cd $(srcdir); scripts/genserv.sh Server-localhost EdelCurlRoot
+
+$(srcdir)/Server-localhost.nn-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
+	cd $(srcdir); scripts/genserv.sh Server-localhost.nn EdelCurlRoot
+
+$(srcdir)/Server-localhost0h-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
+	cd $(srcdir); scripts/genserv.sh Server-localhost0h EdelCurlRoot
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/certs/Makefile.in
new file mode 100644
index 0000000..70ba6a7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Makefile.in
@@ -0,0 +1,800 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/certs
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+	ctags-recursive dvi-recursive html-recursive info-recursive \
+	install-data-recursive install-dvi-recursive \
+	install-exec-recursive install-html-recursive \
+	install-info-recursive install-pdf-recursive \
+	install-ps-recursive install-recursive installcheck-recursive \
+	installdirs-recursive pdf-recursive ps-recursive \
+	tags-recursive uninstall-recursive
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
+  distclean-recursive maintainer-clean-recursive
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
+	distdir
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+am__DIST_COMMON = $(srcdir)/Makefile.in
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign
+SUBDIRS = scripts
+CERTCONFIGS = \
+  EdelCurlRoot-ca.prm \
+  EdelCurlRoot-ca.cnf \
+  Server-localhost-sv.prm \
+  Server-localhost.nn-sv.prm \
+  Server-localhost0h-sv.prm
+
+GENERATEDCERTS = \
+  EdelCurlRoot-ca.cacert \
+  EdelCurlRoot-ca.crt \
+  EdelCurlRoot-ca.csr \
+  EdelCurlRoot-ca.der \
+  EdelCurlRoot-ca.key \
+  Server-localhost-sv.crl \
+  Server-localhost-sv.crt \
+  Server-localhost-sv.csr \
+  Server-localhost-sv.der \
+  Server-localhost-sv.dhp \
+  Server-localhost-sv.key \
+  Server-localhost-sv.pem \
+  Server-localhost-sv.pub.der \
+  Server-localhost-sv.pub.pem \
+  Server-localhost.nn-sv.crl \
+  Server-localhost.nn-sv.crt \
+  Server-localhost.nn-sv.csr \
+  Server-localhost.nn-sv.der \
+  Server-localhost.nn-sv.dhp \
+  Server-localhost.nn-sv.key \
+  Server-localhost.nn-sv.pem \
+  Server-localhost.nn-sv.pub.der \
+  Server-localhost.nn-sv.pub.pem \
+  Server-localhost0h-sv.crl \
+  Server-localhost0h-sv.crt \
+  Server-localhost0h-sv.csr \
+  Server-localhost0h-sv.der \
+  Server-localhost0h-sv.dhp \
+  Server-localhost0h-sv.key \
+  Server-localhost0h-sv.pem \
+  Server-localhost0h-sv.pub.der \
+  Server-localhost0h-sv.pub.pem
+
+SRPFILES = \
+  srp-verifier-conf \
+  srp-verifier-db
+
+EXTRA_DIST = $(CERTCONFIGS) $(GENERATEDCERTS) $(SRPFILES)
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/certs/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/certs/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+	@fail=; \
+	if $(am__make_keepgoing); then \
+	  failcom='fail=yes'; \
+	else \
+	  failcom='exit 1'; \
+	fi; \
+	dot_seen=no; \
+	target=`echo $@ | sed s/-recursive//`; \
+	case "$@" in \
+	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+	  *) list='$(SUBDIRS)' ;; \
+	esac; \
+	for subdir in $$list; do \
+	  echo "Making $$target in $$subdir"; \
+	  if test "$$subdir" = "."; then \
+	    dot_seen=yes; \
+	    local_target="$$target-am"; \
+	  else \
+	    local_target="$$target"; \
+	  fi; \
+	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  || eval $$failcom; \
+	done; \
+	if test "$$dot_seen" = "no"; then \
+	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+	fi; test -z "$$fail"
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+	  include_option=--etags-include; \
+	  empty_fix=.; \
+	else \
+	  include_option=--include; \
+	  empty_fix=; \
+	fi; \
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    test ! -f $$subdir/TAGS || \
+	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+	  fi; \
+	done; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+	  if test "$$subdir" = .; then :; else \
+	    $(am__make_dryrun) \
+	      || test -d "$(distdir)/$$subdir" \
+	      || $(MKDIR_P) "$(distdir)/$$subdir" \
+	      || exit 1; \
+	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+	    $(am__relativize); \
+	    new_distdir=$$reldir; \
+	    dir1=$$subdir; dir2="$(top_distdir)"; \
+	    $(am__relativize); \
+	    new_top_distdir=$$reldir; \
+	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+	    ($(am__cd) $$subdir && \
+	      $(MAKE) $(AM_MAKEFLAGS) \
+	        top_distdir="$$new_top_distdir" \
+	        distdir="$$new_distdir" \
+		am__remove_distdir=: \
+		am__skip_length_check=: \
+		am__skip_mode_fix=: \
+	        distdir) \
+	      || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(am__recursive_targets) install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
+	check-am clean clean-generic clean-libtool cscopelist-am ctags \
+	ctags-am distclean distclean-generic distclean-libtool \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-dvi \
+	install-dvi-am install-exec install-exec-am install-html \
+	install-html-am install-info install-info-am install-man \
+	install-pdf install-pdf-am install-ps install-ps-am \
+	install-strip installcheck installcheck-am installdirs \
+	installdirs-am maintainer-clean maintainer-clean-generic \
+	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+	ps ps-am tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+# Rebuild the certificates
+
+clean-certs:
+	cd $(srcdir); rm -f $(GENERATEDCERTS)
+
+build-certs: $(srcdir)/EdelCurlRoot-ca.cacert $(srcdir)/Server-localhost-sv.pem \
+	$(srcdir)/Server-localhost.nn-sv.pem $(srcdir)/Server-localhost0h-sv.pem
+
+$(srcdir)/EdelCurlRoot-ca.cacert:
+	cd $(srcdir); scripts/genroot.sh EdelCurlRoot
+
+$(srcdir)/Server-localhost-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
+	cd $(srcdir); scripts/genserv.sh Server-localhost EdelCurlRoot
+
+$(srcdir)/Server-localhost.nn-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
+	cd $(srcdir); scripts/genserv.sh Server-localhost.nn EdelCurlRoot
+
+$(srcdir)/Server-localhost0h-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
+	cd $(srcdir); scripts/genserv.sh Server-localhost0h EdelCurlRoot
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.crl b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.crl
new file mode 100644
index 0000000..3e75229
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.crl
@@ -0,0 +1,21 @@
+-----BEGIN X509 CRL-----
+MIIDbzCCAlcCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
+BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
+BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
+MTFaFw0xNTA0MjAxNTA3MTFaMIIBqTAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
+FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
+WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
+NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
+NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
+MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
+MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
+MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
+MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
+Fw0xNTAzMjExNTA3MTFaoA4wDDAKBgNVHRQEAwIBATANBgkqhkiG9w0BAQUFAAOC
+AQEAllslrhWUoq49PC+KQghVDAeFREP3pKPUlSebVVR8PCtCKrFtc53dUaTl8qhK
+1wOLodr80lfr2kEgzTEDt2CfXryl3orLPeMWe0OWTBsPbuwj+d7m3uq4B43laqJn
+JM5ebRvzHWMJkVNkwiXiadPTW5ZMUqu2Bs97rdcjklUrEcamf9aMLqb6sPGtU4EO
+o/GxGW2eypYwncFmzAc5W3NDRePGPhN5rUDfqm5Id4T9FKmGcNmI7qlLQi+jp23F
+V6RvrqANIemopQQ4kYGy7pzilDYm6+R+fPCIh2H/0eqCDY8NdjygXtWW+pJ58axV
+MPZ2mFPcH5UHiqmi8kRstnA8KQ==
+-----END X509 CRL-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.crt b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.crt
new file mode 100644
index 0000000..abf6924
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.crt
@@ -0,0 +1,80 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311627 (0xcfa60bc514b)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Jun  7 15:07:11 2023 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = localhost
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1024 bit)
+                Modulus:
+                    00:ba:5f:4b:69:74:31:99:4d:f4:b4:b7:2a:65:b8:
+                    b7:31:c1:38:cf:36:37:bb:5e:18:e3:52:1f:52:aa:
+                    5a:25:2f:0c:66:88:32:b0:ef:b2:2c:90:38:5e:6e:
+                    6f:0e:e4:3b:3f:f0:2e:f1:7a:3d:5e:c3:64:86:3f:
+                    68:b7:cf:0b:b3:ea:0a:ca:94:16:d4:2b:6a:02:e3:
+                    a1:b3:c7:d1:d0:06:b8:ff:df:dc:e0:32:2a:e7:dd:
+                    62:cc:71:c4:e8:cf:9d:de:5c:75:69:9d:b6:ce:e2:
+                    42:d8:a7:bd:50:54:78:2d:55:67:7f:00:7b:8f:9c:
+                    11:d1:9e:ce:be:1e:fe:cf:37
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment, Key Agreement
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Subject Key Identifier: 
+                7E:42:8D:AC:2E:93:AD:4C:E0:09:AC:C6:08:F1:82:E0:B7:B7:C6:7F
+            X509v3 Authority Key Identifier: 
+                keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+
+            X509v3 Basic Constraints: 
+                CA:FALSE
+    Signature Algorithm: sha1WithRSAEncryption
+         00:fe:c4:fc:4b:28:b8:bc:39:8c:6f:f1:72:d3:76:da:28:27:
+         e2:97:94:bb:ad:2f:91:c4:db:df:33:4b:48:4e:97:5b:4c:4c:
+         be:fc:e4:b7:19:5c:b8:83:6e:ef:2c:b0:d5:7c:fc:0d:cb:7e:
+         29:ed:fd:4d:ef:05:1c:89:15:31:78:9b:18:29:d3:37:83:c7:
+         39:f4:78:27:b7:00:75:d1:fb:f0:29:88:79:e4:e9:a7:d4:65:
+         04:bf:d5:a1:dc:05:b2:17:c4:a9:da:61:10:22:5f:8f:50:fc:
+         1f:ab:f6:39:dd:ab:35:a6:94:54:63:5c:6d:25:f0:dc:3a:0a:
+         70:4e:49:ef:be:fa:2c:0a:cd:ce:a6:2d:26:cd:f8:24:89:77:
+         2c:ea:6e:19:b6:5c:8c:1a:08:ea:a8:9f:2c:1b:c7:fc:13:6c:
+         fe:a7:90:08:e5:98:83:30:52:86:ac:83:0b:cb:25:92:21:94:
+         80:13:d7:e8:d0:42:56:83:55:d3:09:9b:e8:c5:96:82:15:64:
+         6b:83:77:eb:99:e5:52:dc:1b:36:29:a0:c9:da:8b:d3:0d:77:
+         24:f2:c3:df:2e:c4:93:e0:34:47:a9:9b:54:d3:75:d5:c7:de:
+         88:a1:ef:7b:40:2f:dc:e9:28:8c:69:be:eb:71:4a:c2:30:50:
+         99:36:52:69
+-----BEGIN CERTIFICATE-----
+MIIDPzCCAiegAwIBAgIGDPpgvFFLMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
+ALpfS2l0MZlN9LS3KmW4tzHBOM82N7teGONSH1KqWiUvDGaIMrDvsiyQOF5ubw7k
+Oz/wLvF6PV7DZIY/aLfPC7PqCsqUFtQragLjobPH0dAGuP/f3OAyKufdYsxxxOjP
+nd5cdWmdts7iQtinvVBUeC1VZ38Ae4+cEdGezr4e/s83AgMBAAGjgYYwgYMwFAYD
+VR0RBA0wC4IJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEF
+BQcDATAdBgNVHQ4EFgQUfkKNrC6TrUzgCazGCPGC4Le3xn8wHwYDVR0jBBgwFoAU
+Esq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOC
+AQEAAP7E/EsouLw5jG/xctN22ign4peUu60vkcTb3zNLSE6XW0xMvvzktxlcuINu
+7yyw1Xz8Dct+Ke39Te8FHIkVMXibGCnTN4PHOfR4J7cAddH78CmIeeTpp9RlBL/V
+odwFshfEqdphECJfj1D8H6v2Od2rNaaUVGNcbSXw3DoKcE5J7776LArNzqYtJs34
+JIl3LOpuGbZcjBoI6qifLBvH/BNs/qeQCOWYgzBShqyDC8slkiGUgBPX6NBCVoNV
+0wmb6MWWghVka4N365nlUtwbNimgydqL0w13JPLD3y7Ek+A0R6mbVNN11cfeiKHv
+e0Av3OkojGm+63FKwjBQmTZSaQ==
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.csr b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.csr
new file mode 100644
index 0000000..f919409
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.csr
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE REQUEST-----
+MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy
+Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6X0tpdDGZTfS0typluLcxwTjP
+Nje7XhjjUh9SqlolLwxmiDKw77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grK
+lBbUK2oC46Gzx9HQBrj/39zgMirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/
+AHuPnBHRns6+Hv7PNwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAsJ+ypJAE5YiR
+A1niVNXKoqXmIQsXGJv9BA39AjT+cdqvdd+WTKCaZ9QXucDArhG9B9Dp66bfSgvT
+WVz6F85ju5HQekZrS2ZxdR1+muWAFE/vDgi22QwTysXvTWUfsqBQ0ZGEmdzyPJJq
+7AGzbAWx8JDhgGg2jStvQJBLhtYxhoY=
+-----END CERTIFICATE REQUEST-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.der
new file mode 100644
index 0000000..b76db9d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.dhp b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.dhp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.dhp
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.key b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.key
new file mode 100644
index 0000000..3540179
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXgIBAAKBgQC6X0tpdDGZTfS0typluLcxwTjPNje7XhjjUh9SqlolLwxmiDKw
+77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grKlBbUK2oC46Gzx9HQBrj/39zg
+Mirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/AHuPnBHRns6+Hv7PNwIDAQAB
+AoGBAJdWRGVIPfJP1BJe3eWl3dRgI2JXk1/pY+pLSDYXMIYbM0Wa+RamPRdksPE1
+WadM+zPLNENP0L+/iERe/wiq7sNxKQLwH5eE3tUxC+iC8GO6gQ2zHaWVNu3R79CM
+t8YZhlmG2o+xC4CGYzuITgPE16m24CYauLZHO/YVDzG6yNApAkEA6K0db5bZmIaU
+TJW/jEnPJSubDx8kE1YncTOAKaAeoJwaaSfFphVKNGNrZHu3jBhKFgVNBNxGUWrW
+0pIkDrb3hQJBAM0N7+ghZ/7vaOoKqYHQI2z8SgPsUjQjmubCBALe/Ys3kg9PPpyz
+umJSAOYjC4X1dSlkAkciJqRS0Y6uKgSH4osCQQCVIWftft1GsnNYxt43t5MKOvGu
+doIz1pN/LcgmZddbj9IptfErqxedjl9lzxnstCDADnO3+ssjIfxAiKSNvd3VAkA3
+3yFMTbXpZ9BdXPRc05qjeoasVPr9C+qMD7dKFPpesZCRrVTxG6OgYJmwG0JriLsY
+wRBB05NV2N8SknAOdfwLAkEAw5Hqxc/Xlh6xhy9tBdJXDtuptV10mg6EbO98x9/7
+gyuAArSguhXna+aRqjLRelCwVB9f9aZ1XVoDKWVCsnfCbQ==
+-----END RSA PRIVATE KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pem b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pem
new file mode 100644
index 0000000..a6d9b03
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pem
@@ -0,0 +1,120 @@
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = DNS:localhost
+keyUsage	= keyEncipherment,digitalSignature,keyAgreement
+extendedKeyUsage = serverAuth
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid
+basicConstraints = CA:false
+[ req ]
+default_bits                    = 1024
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name is Northern Nowhere"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = localhost 
+
+[something]
+# The key
+# the certificate
+# some dhparam
+-----BEGIN RSA PRIVATE KEY-----
+MIICXgIBAAKBgQC6X0tpdDGZTfS0typluLcxwTjPNje7XhjjUh9SqlolLwxmiDKw
+77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grKlBbUK2oC46Gzx9HQBrj/39zg
+Mirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/AHuPnBHRns6+Hv7PNwIDAQAB
+AoGBAJdWRGVIPfJP1BJe3eWl3dRgI2JXk1/pY+pLSDYXMIYbM0Wa+RamPRdksPE1
+WadM+zPLNENP0L+/iERe/wiq7sNxKQLwH5eE3tUxC+iC8GO6gQ2zHaWVNu3R79CM
+t8YZhlmG2o+xC4CGYzuITgPE16m24CYauLZHO/YVDzG6yNApAkEA6K0db5bZmIaU
+TJW/jEnPJSubDx8kE1YncTOAKaAeoJwaaSfFphVKNGNrZHu3jBhKFgVNBNxGUWrW
+0pIkDrb3hQJBAM0N7+ghZ/7vaOoKqYHQI2z8SgPsUjQjmubCBALe/Ys3kg9PPpyz
+umJSAOYjC4X1dSlkAkciJqRS0Y6uKgSH4osCQQCVIWftft1GsnNYxt43t5MKOvGu
+doIz1pN/LcgmZddbj9IptfErqxedjl9lzxnstCDADnO3+ssjIfxAiKSNvd3VAkA3
+3yFMTbXpZ9BdXPRc05qjeoasVPr9C+qMD7dKFPpesZCRrVTxG6OgYJmwG0JriLsY
+wRBB05NV2N8SknAOdfwLAkEAw5Hqxc/Xlh6xhy9tBdJXDtuptV10mg6EbO98x9/7
+gyuAArSguhXna+aRqjLRelCwVB9f9aZ1XVoDKWVCsnfCbQ==
+-----END RSA PRIVATE KEY-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311627 (0xcfa60bc514b)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Jun  7 15:07:11 2023 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = localhost
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1024 bit)
+                Modulus:
+                    00:ba:5f:4b:69:74:31:99:4d:f4:b4:b7:2a:65:b8:
+                    b7:31:c1:38:cf:36:37:bb:5e:18:e3:52:1f:52:aa:
+                    5a:25:2f:0c:66:88:32:b0:ef:b2:2c:90:38:5e:6e:
+                    6f:0e:e4:3b:3f:f0:2e:f1:7a:3d:5e:c3:64:86:3f:
+                    68:b7:cf:0b:b3:ea:0a:ca:94:16:d4:2b:6a:02:e3:
+                    a1:b3:c7:d1:d0:06:b8:ff:df:dc:e0:32:2a:e7:dd:
+                    62:cc:71:c4:e8:cf:9d:de:5c:75:69:9d:b6:ce:e2:
+                    42:d8:a7:bd:50:54:78:2d:55:67:7f:00:7b:8f:9c:
+                    11:d1:9e:ce:be:1e:fe:cf:37
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment, Key Agreement
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Subject Key Identifier: 
+                7E:42:8D:AC:2E:93:AD:4C:E0:09:AC:C6:08:F1:82:E0:B7:B7:C6:7F
+            X509v3 Authority Key Identifier: 
+                keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+
+            X509v3 Basic Constraints: 
+                CA:FALSE
+    Signature Algorithm: sha1WithRSAEncryption
+         00:fe:c4:fc:4b:28:b8:bc:39:8c:6f:f1:72:d3:76:da:28:27:
+         e2:97:94:bb:ad:2f:91:c4:db:df:33:4b:48:4e:97:5b:4c:4c:
+         be:fc:e4:b7:19:5c:b8:83:6e:ef:2c:b0:d5:7c:fc:0d:cb:7e:
+         29:ed:fd:4d:ef:05:1c:89:15:31:78:9b:18:29:d3:37:83:c7:
+         39:f4:78:27:b7:00:75:d1:fb:f0:29:88:79:e4:e9:a7:d4:65:
+         04:bf:d5:a1:dc:05:b2:17:c4:a9:da:61:10:22:5f:8f:50:fc:
+         1f:ab:f6:39:dd:ab:35:a6:94:54:63:5c:6d:25:f0:dc:3a:0a:
+         70:4e:49:ef:be:fa:2c:0a:cd:ce:a6:2d:26:cd:f8:24:89:77:
+         2c:ea:6e:19:b6:5c:8c:1a:08:ea:a8:9f:2c:1b:c7:fc:13:6c:
+         fe:a7:90:08:e5:98:83:30:52:86:ac:83:0b:cb:25:92:21:94:
+         80:13:d7:e8:d0:42:56:83:55:d3:09:9b:e8:c5:96:82:15:64:
+         6b:83:77:eb:99:e5:52:dc:1b:36:29:a0:c9:da:8b:d3:0d:77:
+         24:f2:c3:df:2e:c4:93:e0:34:47:a9:9b:54:d3:75:d5:c7:de:
+         88:a1:ef:7b:40:2f:dc:e9:28:8c:69:be:eb:71:4a:c2:30:50:
+         99:36:52:69
+-----BEGIN CERTIFICATE-----
+MIIDPzCCAiegAwIBAgIGDPpgvFFLMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
+ALpfS2l0MZlN9LS3KmW4tzHBOM82N7teGONSH1KqWiUvDGaIMrDvsiyQOF5ubw7k
+Oz/wLvF6PV7DZIY/aLfPC7PqCsqUFtQragLjobPH0dAGuP/f3OAyKufdYsxxxOjP
+nd5cdWmdts7iQtinvVBUeC1VZ38Ae4+cEdGezr4e/s83AgMBAAGjgYYwgYMwFAYD
+VR0RBA0wC4IJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEF
+BQcDATAdBgNVHQ4EFgQUfkKNrC6TrUzgCazGCPGC4Le3xn8wHwYDVR0jBBgwFoAU
+Esq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOC
+AQEAAP7E/EsouLw5jG/xctN22ign4peUu60vkcTb3zNLSE6XW0xMvvzktxlcuINu
+7yyw1Xz8Dct+Ke39Te8FHIkVMXibGCnTN4PHOfR4J7cAddH78CmIeeTpp9RlBL/V
+odwFshfEqdphECJfj1D8H6v2Od2rNaaUVGNcbSXw3DoKcE5J7776LArNzqYtJs34
+JIl3LOpuGbZcjBoI6qifLBvH/BNs/qeQCOWYgzBShqyDC8slkiGUgBPX6NBCVoNV
+0wmb6MWWghVka4N365nlUtwbNimgydqL0w13JPLD3y7Ek+A0R6mbVNN11cfeiKHv
+e0Av3OkojGm+63FKwjBQmTZSaQ==
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.prm b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.prm
new file mode 100644
index 0000000..50ccfd8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.prm
@@ -0,0 +1,25 @@
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = DNS:localhost
+keyUsage	= keyEncipherment,digitalSignature,keyAgreement
+extendedKeyUsage = serverAuth
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid
+basicConstraints = CA:false
+[ req ]
+default_bits                    = 1024
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name is Northern Nowhere"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = localhost 
+
+[something]
+# The key
+# the certificate
+# some dhparam
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pub.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pub.der
new file mode 100644
index 0000000..e954839
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pub.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pub.pem b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pub.pem
new file mode 100644
index 0000000..d119616
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost-sv.pub.pem
@@ -0,0 +1,6 @@
+-----BEGIN PUBLIC KEY-----
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6X0tpdDGZTfS0typluLcxwTjP
+Nje7XhjjUh9SqlolLwxmiDKw77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grK
+lBbUK2oC46Gzx9HQBrj/39zgMirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/
+AHuPnBHRns6+Hv7PNwIDAQAB
+-----END PUBLIC KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.crl b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.crl
new file mode 100644
index 0000000..0676f73
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.crl
@@ -0,0 +1,21 @@
+-----BEGIN X509 CRL-----
+MIIDiDCCAnACAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
+BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
+BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
+MTFaFw0xNTA0MjAxNTA3MTFaMIIBwjAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
+FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
+WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
+NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
+NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
+MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
+MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
+MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
+MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
+Fw0xNTAzMjExNTA3MTFaMBcCBgz6YLxRXBcNMTUwMzIxMTUwNzExWqAOMAwwCgYD
+VR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBANd1Fp3lPmLALcGvEB4kB4Uo6vhM
+ZWcAUE96oerpW0OnZ6v7o8ghLvs/pJfIoD+7hV3RuAgUUBqv2N8VTaL2IYarom/H
+CK78oLrIwwej/7K1pIfG53bJuaYyim5Lpl/YzGwhdC2vO2kBXHC1gVj5hN3uM/2A
++cFPTDMsDU7szGq1bHObEKumXXzG5LfwGJGaHNGdvglV7zKthRjk/plYKE4/F0Ah
+jRQys6crClCKC5vug1GbzKbQue/Pbw1e3Rm/e0DVeOCREdvcHat43SIPf5yUYLsz
+b7P7pIOIoSgiIgEdbmj2pi1xdtxrYRyJJk0H7XQJHDehkyZsy6l62mKam/E=
+-----END X509 CRL-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.crt b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.crt
new file mode 100644
index 0000000..69bd40d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.crt
@@ -0,0 +1,80 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311644 (0xcfa60bc515c)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Jun  7 15:07:11 2023 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = localhost.nn
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1024 bit)
+                Modulus:
+                    00:ac:cc:11:70:74:29:ed:7b:00:44:8a:c0:47:03:
+                    50:9d:6f:51:b7:c9:7b:dd:7e:ee:29:67:5b:91:9b:
+                    c7:c5:e6:9d:59:3e:6b:33:25:b7:7c:39:7c:84:79:
+                    dd:15:98:e7:27:63:93:10:3a:3a:40:a0:dd:d0:1e:
+                    6e:60:f4:1e:a4:f7:1e:0a:0b:84:44:77:e7:05:16:
+                    39:aa:de:bd:1e:c7:bc:c9:e1:4e:8c:86:1c:3f:d6:
+                    cd:e3:f2:68:02:5b:17:53:49:51:29:a8:89:f3:d0:
+                    e1:5e:71:07:9f:15:47:08:40:e9:ac:49:e4:21:ac:
+                    65:29:09:ca:a2:dc:9e:ab:89
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost.nn
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment, Key Agreement
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Subject Key Identifier: 
+                12:AF:44:46:B1:04:69:61:64:83:39:A2:BD:5D:97:2B:F4:1D:D4:6C
+            X509v3 Authority Key Identifier: 
+                keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+
+            X509v3 Basic Constraints: 
+                CA:FALSE
+    Signature Algorithm: sha1WithRSAEncryption
+         44:54:d7:d7:75:14:60:a5:1a:1d:1e:a9:dc:6f:b1:b1:d8:13:
+         e2:10:22:9a:f5:ca:b6:38:3c:d9:ac:2e:dc:ce:38:bc:cc:38:
+         a1:cc:a8:9c:73:37:f9:b6:a8:42:87:d9:80:21:45:81:43:9d:
+         73:3c:67:cf:cd:c5:c3:91:df:60:6b:6d:69:f9:be:a1:92:cc:
+         5d:ea:bc:67:f3:c7:bc:ea:41:d1:11:7b:e3:f1:b8:a7:8d:9a:
+         d0:23:6c:df:0e:2a:35:98:50:c1:a6:8b:d2:07:aa:a6:2f:cb:
+         98:a9:a3:8d:a0:8c:87:ab:ec:e1:c5:0b:25:e2:e9:a9:08:13:
+         30:86:1b:e5:b6:ac:03:85:35:0c:9a:5d:5b:82:c4:04:6a:05:
+         4c:f3:f7:b3:b5:ac:92:3b:46:71:a8:7f:54:c7:96:37:dc:38:
+         2c:a2:18:23:10:00:de:f8:21:40:52:99:94:ad:b2:b6:e5:87:
+         8e:29:0b:3b:b3:8a:52:67:54:dc:0a:e9:75:60:33:ff:13:9a:
+         61:a4:15:0c:d0:6f:de:0d:06:23:a8:44:ad:f0:68:60:93:6b:
+         75:06:24:5b:47:9a:b9:3a:ef:d9:4f:df:31:d5:65:3a:e2:94:
+         03:be:88:94:49:7c:6a:d0:da:c0:d0:62:81:f5:61:50:96:5a:
+         d0:ee:22:39
+-----BEGIN CERTIFICATE-----
+MIIDRTCCAi2gAwIBAgIGDPpgvFFcMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFcxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
+AoGBAKzMEXB0Ke17AESKwEcDUJ1vUbfJe91+7ilnW5Gbx8XmnVk+azMlt3w5fIR5
+3RWY5ydjkxA6OkCg3dAebmD0HqT3HgoLhER35wUWOarevR7HvMnhToyGHD/WzePy
+aAJbF1NJUSmoifPQ4V5xB58VRwhA6axJ5CGsZSkJyqLcnquJAgMBAAGjgYkwgYYw
+FwYDVR0RBBAwDoIMbG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAK
+BggrBgEFBQcDATAdBgNVHQ4EFgQUEq9ERrEEaWFkgzmivV2XK/Qd1GwwHwYDVR0j
+BBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0B
+AQUFAAOCAQEARFTX13UUYKUaHR6p3G+xsdgT4hAimvXKtjg82awu3M44vMw4ocyo
+nHM3+baoQofZgCFFgUOdczxnz83Fw5HfYGttafm+oZLMXeq8Z/PHvOpB0RF74/G4
+p42a0CNs3w4qNZhQwaaL0geqpi/LmKmjjaCMh6vs4cULJeLpqQgTMIYb5basA4U1
+DJpdW4LEBGoFTPP3s7WskjtGcah/VMeWN9w4LKIYIxAA3vghQFKZlK2ytuWHjikL
+O7OKUmdU3ArpdWAz/xOaYaQVDNBv3g0GI6hErfBoYJNrdQYkW0eauTrv2U/fMdVl
+OuKUA76IlEl8atDawNBigfVhUJZa0O4iOQ==
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.csr b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.csr
new file mode 100644
index 0000000..7f2fa77
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.csr
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE REQUEST-----
+MIIBlzCCAQACAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxFTATBgNVBAMMDGxvY2FsaG9z
+dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArMwRcHQp7XsARIrARwNQ
+nW9Rt8l73X7uKWdbkZvHxeadWT5rMyW3fDl8hHndFZjnJ2OTEDo6QKDd0B5uYPQe
+pPceCguERHfnBRY5qt69Hse8yeFOjIYcP9bN4/JoAlsXU0lRKaiJ89DhXnEHnxVH
+CEDprEnkIaxlKQnKotyeq4kCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBADnob1ds
+8MytEcgSZdkgP4iQ2L+aPXTPBqTThaV7Zto1mAhwG/D6rTiGq6t+IlZQNoDdZPp3
+r1WDQJj6ed54xUY4Im4m1Np8oURamt5NJMKURDbv0xOQHW8EOoN+F8rfKyu2Hk1O
+hJulv+cBz75yi3+LVu+IEuSFQIQUZiy6V+Il
+-----END CERTIFICATE REQUEST-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.der
new file mode 100644
index 0000000..9bb4ff3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.dhp b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.dhp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.dhp
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.key b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.key
new file mode 100644
index 0000000..6a75071
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQCszBFwdCntewBEisBHA1Cdb1G3yXvdfu4pZ1uRm8fF5p1ZPmsz
+Jbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4KC4REd+cFFjmq3r0ex7zJ4U6M
+hhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOmsSeQhrGUpCcqi3J6riQIDAQAB
+AoGAK7nYD+TVV0rw3mdeEJo+JBivTRqnRX2BNuj4uvf4rZOV7adl6SN6Mu05HSzZ
+TUXL+KOx60FQzFnox2lr9QzRU/LelLQ3H9fgVTVmGUCEAoDVRoWas8XlYGZsiHZ/
+yJn+9Z3yQYpufSb0LQiSt73sgrTNPu50gMxe/ZSAbSscyyECQQDV8juKzWmizlTh
++wVs/pihE0+BX1BRCsezs7FCdDEWle3XidBtYlYyUIm5wx6v8xM/F7Q/nwgymOnV
+A62PtfyjAkEAzsM3DsuJ9dG5n+EPTH3kDdfr0eYy76XPYz4HK8/FgiKPWy55BRCH
+biLcbDAe06olJiCzEvwggFigthrIqj0t4wJBALDTUi74c3SiADn+FI/vJQsMQMv2
+kRVKSZ/WxozcJ645IKjiOKgPfJp9QjeMcxKNXrzoxItIz6eyBqGONqbujO0CQQCh
+b6azdJR5TJEklfL+BGVlsas8rgIjP1FX6Xxr5sQNwbIwvW5cV/WGNs3n4wKOvZBX
+3rwzHIy76XdB+FOpKC+FAkBDVbicC19LE6+tBzOyx4uTEm3N7N8vh566VaOpok02
+Io7F/WYL7WSCXAtvmueWV+FJyVUMN1f2nWfWqaEXP2ag
+-----END RSA PRIVATE KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pem b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pem
new file mode 100644
index 0000000..7dfd4e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pem
@@ -0,0 +1,120 @@
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = DNS:localhost.nn
+keyUsage	= keyEncipherment,digitalSignature,keyAgreement
+extendedKeyUsage = serverAuth
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid
+basicConstraints = CA:false
+[ req ]
+default_bits                    = 1024
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name is Northern Nowhere"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = localhost.nn 
+
+[something]
+# The key
+# the certificate
+# some dhparam
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQCszBFwdCntewBEisBHA1Cdb1G3yXvdfu4pZ1uRm8fF5p1ZPmsz
+Jbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4KC4REd+cFFjmq3r0ex7zJ4U6M
+hhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOmsSeQhrGUpCcqi3J6riQIDAQAB
+AoGAK7nYD+TVV0rw3mdeEJo+JBivTRqnRX2BNuj4uvf4rZOV7adl6SN6Mu05HSzZ
+TUXL+KOx60FQzFnox2lr9QzRU/LelLQ3H9fgVTVmGUCEAoDVRoWas8XlYGZsiHZ/
+yJn+9Z3yQYpufSb0LQiSt73sgrTNPu50gMxe/ZSAbSscyyECQQDV8juKzWmizlTh
++wVs/pihE0+BX1BRCsezs7FCdDEWle3XidBtYlYyUIm5wx6v8xM/F7Q/nwgymOnV
+A62PtfyjAkEAzsM3DsuJ9dG5n+EPTH3kDdfr0eYy76XPYz4HK8/FgiKPWy55BRCH
+biLcbDAe06olJiCzEvwggFigthrIqj0t4wJBALDTUi74c3SiADn+FI/vJQsMQMv2
+kRVKSZ/WxozcJ645IKjiOKgPfJp9QjeMcxKNXrzoxItIz6eyBqGONqbujO0CQQCh
+b6azdJR5TJEklfL+BGVlsas8rgIjP1FX6Xxr5sQNwbIwvW5cV/WGNs3n4wKOvZBX
+3rwzHIy76XdB+FOpKC+FAkBDVbicC19LE6+tBzOyx4uTEm3N7N8vh566VaOpok02
+Io7F/WYL7WSCXAtvmueWV+FJyVUMN1f2nWfWqaEXP2ag
+-----END RSA PRIVATE KEY-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311644 (0xcfa60bc515c)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Jun  7 15:07:11 2023 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = localhost.nn
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1024 bit)
+                Modulus:
+                    00:ac:cc:11:70:74:29:ed:7b:00:44:8a:c0:47:03:
+                    50:9d:6f:51:b7:c9:7b:dd:7e:ee:29:67:5b:91:9b:
+                    c7:c5:e6:9d:59:3e:6b:33:25:b7:7c:39:7c:84:79:
+                    dd:15:98:e7:27:63:93:10:3a:3a:40:a0:dd:d0:1e:
+                    6e:60:f4:1e:a4:f7:1e:0a:0b:84:44:77:e7:05:16:
+                    39:aa:de:bd:1e:c7:bc:c9:e1:4e:8c:86:1c:3f:d6:
+                    cd:e3:f2:68:02:5b:17:53:49:51:29:a8:89:f3:d0:
+                    e1:5e:71:07:9f:15:47:08:40:e9:ac:49:e4:21:ac:
+                    65:29:09:ca:a2:dc:9e:ab:89
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost.nn
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment, Key Agreement
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Subject Key Identifier: 
+                12:AF:44:46:B1:04:69:61:64:83:39:A2:BD:5D:97:2B:F4:1D:D4:6C
+            X509v3 Authority Key Identifier: 
+                keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+
+            X509v3 Basic Constraints: 
+                CA:FALSE
+    Signature Algorithm: sha1WithRSAEncryption
+         44:54:d7:d7:75:14:60:a5:1a:1d:1e:a9:dc:6f:b1:b1:d8:13:
+         e2:10:22:9a:f5:ca:b6:38:3c:d9:ac:2e:dc:ce:38:bc:cc:38:
+         a1:cc:a8:9c:73:37:f9:b6:a8:42:87:d9:80:21:45:81:43:9d:
+         73:3c:67:cf:cd:c5:c3:91:df:60:6b:6d:69:f9:be:a1:92:cc:
+         5d:ea:bc:67:f3:c7:bc:ea:41:d1:11:7b:e3:f1:b8:a7:8d:9a:
+         d0:23:6c:df:0e:2a:35:98:50:c1:a6:8b:d2:07:aa:a6:2f:cb:
+         98:a9:a3:8d:a0:8c:87:ab:ec:e1:c5:0b:25:e2:e9:a9:08:13:
+         30:86:1b:e5:b6:ac:03:85:35:0c:9a:5d:5b:82:c4:04:6a:05:
+         4c:f3:f7:b3:b5:ac:92:3b:46:71:a8:7f:54:c7:96:37:dc:38:
+         2c:a2:18:23:10:00:de:f8:21:40:52:99:94:ad:b2:b6:e5:87:
+         8e:29:0b:3b:b3:8a:52:67:54:dc:0a:e9:75:60:33:ff:13:9a:
+         61:a4:15:0c:d0:6f:de:0d:06:23:a8:44:ad:f0:68:60:93:6b:
+         75:06:24:5b:47:9a:b9:3a:ef:d9:4f:df:31:d5:65:3a:e2:94:
+         03:be:88:94:49:7c:6a:d0:da:c0:d0:62:81:f5:61:50:96:5a:
+         d0:ee:22:39
+-----BEGIN CERTIFICATE-----
+MIIDRTCCAi2gAwIBAgIGDPpgvFFcMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFcxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
+AoGBAKzMEXB0Ke17AESKwEcDUJ1vUbfJe91+7ilnW5Gbx8XmnVk+azMlt3w5fIR5
+3RWY5ydjkxA6OkCg3dAebmD0HqT3HgoLhER35wUWOarevR7HvMnhToyGHD/WzePy
+aAJbF1NJUSmoifPQ4V5xB58VRwhA6axJ5CGsZSkJyqLcnquJAgMBAAGjgYkwgYYw
+FwYDVR0RBBAwDoIMbG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAK
+BggrBgEFBQcDATAdBgNVHQ4EFgQUEq9ERrEEaWFkgzmivV2XK/Qd1GwwHwYDVR0j
+BBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0B
+AQUFAAOCAQEARFTX13UUYKUaHR6p3G+xsdgT4hAimvXKtjg82awu3M44vMw4ocyo
+nHM3+baoQofZgCFFgUOdczxnz83Fw5HfYGttafm+oZLMXeq8Z/PHvOpB0RF74/G4
+p42a0CNs3w4qNZhQwaaL0geqpi/LmKmjjaCMh6vs4cULJeLpqQgTMIYb5basA4U1
+DJpdW4LEBGoFTPP3s7WskjtGcah/VMeWN9w4LKIYIxAA3vghQFKZlK2ytuWHjikL
+O7OKUmdU3ArpdWAz/xOaYaQVDNBv3g0GI6hErfBoYJNrdQYkW0eauTrv2U/fMdVl
+OuKUA76IlEl8atDawNBigfVhUJZa0O4iOQ==
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.prm b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.prm
new file mode 100644
index 0000000..093d475
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.prm
@@ -0,0 +1,25 @@
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = DNS:localhost.nn
+keyUsage	= keyEncipherment,digitalSignature,keyAgreement
+extendedKeyUsage = serverAuth
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid
+basicConstraints = CA:false
+[ req ]
+default_bits                    = 1024
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name is Northern Nowhere"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = localhost.nn 
+
+[something]
+# The key
+# the certificate
+# some dhparam
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pub.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pub.der
new file mode 100644
index 0000000..68b64eb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pub.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pub.pem b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pub.pem
new file mode 100644
index 0000000..a59a0e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost.nn-sv.pub.pem
@@ -0,0 +1,6 @@
+-----BEGIN PUBLIC KEY-----
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCszBFwdCntewBEisBHA1Cdb1G3
+yXvdfu4pZ1uRm8fF5p1ZPmszJbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4K
+C4REd+cFFjmq3r0ex7zJ4U6Mhhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOms
+SeQhrGUpCcqi3J6riQIDAQAB
+-----END PUBLIC KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.crl b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.crl
new file mode 100644
index 0000000..319af89
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.crl
@@ -0,0 +1,22 @@
+-----BEGIN X509 CRL-----
+MIIDoTCCAokCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
+BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
+BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
+MTFaFw0xNTA0MjAxNTA3MTFaMIIB2zAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
+FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
+WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
+NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
+NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
+MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
+MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
+MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
+MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
+Fw0xNTAzMjExNTA3MTFaMBcCBgz6YLxRXBcNMTUwMzIxMTUwNzExWjAXAgYM+mC8
+UW4XDTE1MDMyMTE1MDcxMVqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBBQUA
+A4IBAQDER99gBe9w8a9X1pQQnzC87kYnW7R0K8wFr4KqCYP0De8tKxhCGrXaoQDK
+AvHQcT3RpCR5PAK5J1InxlCumJJjvo39OLTsaCbSyoynmAMGCXS0earSL83biquG
+jJ29ROXukT3fGE6HO+cKAaHyHeJa6OZEibmCvCls/YvvQTW2jlceOZmi22AL3jYN
+w6UVHRpbHDHupF5YxhwFG1GVTOd9cuik8CqVxPkOfIxeQbEV+qEiDWzjyy2aU3X7
+dLhZE47P5tYgb8nIsXb5PATqiK9vdv4EOyVKiiCmyFemrGGU7MqbTtTjJVB9nS2R
+QMWLS24xr3IcHt7FOX1w8UF/GXiP
+-----END X509 CRL-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.crt b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.crt
new file mode 100644
index 0000000..b00859a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.crt
@@ -0,0 +1,80 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311662 (0xcfa60bc516e)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Jun  7 15:07:11 2023 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = localhost
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1024 bit)
+                Modulus:
+                    00:e3:c7:52:fb:7d:02:b1:a7:0b:4c:2d:a6:2a:b0:
+                    57:6b:5e:0b:f9:9e:4b:e7:d0:ac:55:43:47:fa:b1:
+                    e0:fc:b0:63:30:84:31:f5:95:44:90:9a:b7:22:01:
+                    6f:c7:17:16:be:5a:19:ee:47:35:90:a5:5e:27:ba:
+                    86:47:3b:c5:63:d2:f2:c6:a1:db:ac:be:b1:2f:4c:
+                    c2:98:86:19:72:d5:f9:12:45:09:bc:23:e2:00:eb:
+                    4d:ba:99:71:b5:4a:fb:49:8c:4d:f3:0b:4e:cf:48:
+                    7b:c8:06:37:92:35:ff:bb:4f:ea:98:af:13:ac:a8:
+                    cd:9f:a7:e0:78:db:15:bc:3b
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment, Key Agreement
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Subject Key Identifier: 
+                23:D7:CE:D8:B2:D0:F8:8E:3C:82:26:6C:F1:F5:2A:8A:48:90:58:66
+            X509v3 Authority Key Identifier: 
+                keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+
+            X509v3 Basic Constraints: 
+                CA:FALSE
+    Signature Algorithm: sha1WithRSAEncryption
+         28:b9:77:ea:4a:8d:d6:a5:fb:72:5b:d6:cd:60:40:33:56:bf:
+         dd:23:ff:bf:e8:2e:10:cd:30:ab:24:a4:43:d8:98:71:e3:59:
+         66:3e:38:bd:b8:fb:19:1a:13:8f:a1:c8:39:93:b5:83:8d:62:
+         52:a9:7a:5b:0d:69:47:40:5c:51:4c:3a:be:a7:c9:5f:7b:93:
+         49:20:59:23:30:7c:d9:4a:dd:29:2c:ed:96:fd:cb:b8:13:ff:
+         36:2c:27:ce:28:c3:a6:d0:d8:ba:8c:38:9f:78:ff:54:c7:76:
+         05:37:47:f5:d3:55:9c:2c:12:41:81:14:ca:48:a2:b7:6d:05:
+         49:2b:c5:f5:7b:63:6d:6f:cd:3f:f4:8d:74:51:07:ff:e1:40:
+         d5:96:60:d8:c8:38:5a:15:f9:c5:fd:e1:5e:a3:02:95:90:4b:
+         fc:8a:42:de:72:31:72:3d:dd:a2:df:19:42:c8:fa:a8:77:11:
+         67:e6:64:8c:d0:fd:45:fd:f0:49:8c:e1:85:e6:f5:1f:47:c6:
+         ae:f2:70:c3:e8:99:d0:cd:9d:88:6b:33:ba:b9:65:3d:f4:b1:
+         f4:d0:3c:76:9c:18:9e:9e:c8:62:29:43:8e:f7:2f:2c:12:37:
+         39:02:26:4e:4b:b0:14:30:80:bb:2d:cc:fc:93:dc:c9:8b:c0:
+         69:12:71:36
+-----BEGIN CERTIFICATE-----
+MIIDQTCCAimgAwIBAgIGDPpgvFFuMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
+AOPHUvt9ArGnC0wtpiqwV2teC/meS+fQrFVDR/qx4PywYzCEMfWVRJCatyIBb8cX
+Fr5aGe5HNZClXie6hkc7xWPS8sah26y+sS9MwpiGGXLV+RJFCbwj4gDrTbqZcbVK
++0mMTfMLTs9Ie8gGN5I1/7tP6pivE6yozZ+n4HjbFbw7AgMBAAGjgYgwgYUwFgYD
+VR0RBA8wDYILbG9jYWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsG
+AQUFBwMBMB0GA1UdDgQWBBQj187YstD4jjyCJmzx9SqKSJBYZjAfBgNVHSMEGDAW
+gBQSyrpLRgSndYos6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUA
+A4IBAQAouXfqSo3WpftyW9bNYEAzVr/dI/+/6C4QzTCrJKRD2Jhx41lmPji9uPsZ
+GhOPocg5k7WDjWJSqXpbDWlHQFxRTDq+p8lfe5NJIFkjMHzZSt0pLO2W/cu4E/82
+LCfOKMOm0Ni6jDifeP9Ux3YFN0f101WcLBJBgRTKSKK3bQVJK8X1e2Ntb80/9I10
+UQf/4UDVlmDYyDhaFfnF/eFeowKVkEv8ikLecjFyPd2i3xlCyPqodxFn5mSM0P1F
+/fBJjOGF5vUfR8au8nDD6JnQzZ2IazO6uWU99LH00Dx2nBienshiKUOO9y8sEjc5
+AiZOS7AUMIC7Lcz8k9zJi8BpEnE2
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.csr b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.csr
new file mode 100644
index 0000000..d075157
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.csr
@@ -0,0 +1,11 @@
+-----BEGIN CERTIFICATE REQUEST-----
+MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy
+Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5
+nkvn0KxVQ0f6seD8sGMwhDH1lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLG
+odusvrEvTMKYhhly1fkSRQm8I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qY
+rxOsqM2fp+B42xW8OwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAC6NxWuiENuj/
+oPsopZy/tVZzbioXZP/S9ECCbdgy33bg9zKwQYLeHOSgXxJzES+RhJwQCliFV17j
+jM1CH7heggwkPAx5KelyZ20DeoeaYOi/xv7TjozrZ+EkmivHKBJi3+qNjNYH0ul9
+HhQBO5+sSDAGLMkWL/nAfYKbf/8KSvA=
+-----END CERTIFICATE REQUEST-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.der
new file mode 100644
index 0000000..93642f4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.dhp b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.dhp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.dhp
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.key b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.key
new file mode 100644
index 0000000..5fcc9c5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5nkvn0KxVQ0f6seD8sGMwhDH1
+lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLGodusvrEvTMKYhhly1fkSRQm8
+I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qYrxOsqM2fp+B42xW8OwIDAQAB
+AoGAHdkk2qfLDpShOl5RBA8PpZYxY4iG0d3ad2HVsNhWb0Z9+QGZumDRF1Hu5Zni
+l+hCprcP5tWWA1poODSNHBCNEQRYZcHrfZlh+sDiV6ZmexBg7x9D5azyRbn20vr1
+79UxmisRxnDQQHCfOmgZtgs1EZXnFOs0OotoZAHFr+GLtQECQQD+R2TaWMCEPKJc
+IswGBqLGL8cyy+v2d5Glt5l+xzb/KCdY9cbOR/B9wq//0Nvqyiq1I1jUBVw9NJi/
+eBx/OYxhAkEA5VIC6uMpIck0Qxpbj7/H3k2pBf1HROgmLEq+cVLFgY62CIpTgleO
+SAzTmn0vDXir0jQHJn+JTokvn0PxyNquGwJBAJW+77rSl5WIq8j8yRAnakayrmnQ
+w8ZjBggExsVthorfV8TBAPJMVWmKdOF/W3O62UnRZid+fKKize28S3P1LSECQDF8
+3FJSSWsYH6YnhwDjkz9fJQ281eeB7dL7IlQUV7kY0iHPsCvdtz/HPNcHEuNmWjYX
+sj9VoI0JP/Sv1frRbmcCQDPaeWowPGf1Xtj0oTSlA6KQsKZPO7t15nivgX/AnZWQ
+01l8q6GPHeYwyG/caD3BZwAavsVLg9nhKx0lf0wExM0=
+-----END RSA PRIVATE KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pem b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pem
new file mode 100644
index 0000000..a953370
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pem
@@ -0,0 +1,121 @@
+extensions = x509v3
+[ x509v3 ]
+#subjectAltName = DNS:localhost\0h
+subjectAltName = DER:30:0d:82:0b:6c:6f:63:61:6c:68:6f:73:74:00:68
+keyUsage	= keyEncipherment,digitalSignature,keyAgreement
+extendedKeyUsage = serverAuth
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid
+basicConstraints = CA:false
+[ req ]
+default_bits                    = 1024
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name is Northern Nowhere"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = localhost 
+
+[something]
+# The key
+# the certificate
+# some dhparam
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5nkvn0KxVQ0f6seD8sGMwhDH1
+lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLGodusvrEvTMKYhhly1fkSRQm8
+I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qYrxOsqM2fp+B42xW8OwIDAQAB
+AoGAHdkk2qfLDpShOl5RBA8PpZYxY4iG0d3ad2HVsNhWb0Z9+QGZumDRF1Hu5Zni
+l+hCprcP5tWWA1poODSNHBCNEQRYZcHrfZlh+sDiV6ZmexBg7x9D5azyRbn20vr1
+79UxmisRxnDQQHCfOmgZtgs1EZXnFOs0OotoZAHFr+GLtQECQQD+R2TaWMCEPKJc
+IswGBqLGL8cyy+v2d5Glt5l+xzb/KCdY9cbOR/B9wq//0Nvqyiq1I1jUBVw9NJi/
+eBx/OYxhAkEA5VIC6uMpIck0Qxpbj7/H3k2pBf1HROgmLEq+cVLFgY62CIpTgleO
+SAzTmn0vDXir0jQHJn+JTokvn0PxyNquGwJBAJW+77rSl5WIq8j8yRAnakayrmnQ
+w8ZjBggExsVthorfV8TBAPJMVWmKdOF/W3O62UnRZid+fKKize28S3P1LSECQDF8
+3FJSSWsYH6YnhwDjkz9fJQ281eeB7dL7IlQUV7kY0iHPsCvdtz/HPNcHEuNmWjYX
+sj9VoI0JP/Sv1frRbmcCQDPaeWowPGf1Xtj0oTSlA6KQsKZPO7t15nivgX/AnZWQ
+01l8q6GPHeYwyG/caD3BZwAavsVLg9nhKx0lf0wExM0=
+-----END RSA PRIVATE KEY-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 14269504311662 (0xcfa60bc516e)
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = Northern Nowhere Trust Anchor
+        Validity
+            Not Before: Mar 21 15:07:11 2015 GMT
+            Not After : Jun  7 15:07:11 2023 GMT
+        Subject:
+            countryName               = NN
+            organizationName          = Edel Curl Arctic Illudium Research Cloud
+            commonName                = localhost
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1024 bit)
+                Modulus:
+                    00:e3:c7:52:fb:7d:02:b1:a7:0b:4c:2d:a6:2a:b0:
+                    57:6b:5e:0b:f9:9e:4b:e7:d0:ac:55:43:47:fa:b1:
+                    e0:fc:b0:63:30:84:31:f5:95:44:90:9a:b7:22:01:
+                    6f:c7:17:16:be:5a:19:ee:47:35:90:a5:5e:27:ba:
+                    86:47:3b:c5:63:d2:f2:c6:a1:db:ac:be:b1:2f:4c:
+                    c2:98:86:19:72:d5:f9:12:45:09:bc:23:e2:00:eb:
+                    4d:ba:99:71:b5:4a:fb:49:8c:4d:f3:0b:4e:cf:48:
+                    7b:c8:06:37:92:35:ff:bb:4f:ea:98:af:13:ac:a8:
+                    cd:9f:a7:e0:78:db:15:bc:3b
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment, Key Agreement
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Subject Key Identifier: 
+                23:D7:CE:D8:B2:D0:F8:8E:3C:82:26:6C:F1:F5:2A:8A:48:90:58:66
+            X509v3 Authority Key Identifier: 
+                keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+
+            X509v3 Basic Constraints: 
+                CA:FALSE
+    Signature Algorithm: sha1WithRSAEncryption
+         28:b9:77:ea:4a:8d:d6:a5:fb:72:5b:d6:cd:60:40:33:56:bf:
+         dd:23:ff:bf:e8:2e:10:cd:30:ab:24:a4:43:d8:98:71:e3:59:
+         66:3e:38:bd:b8:fb:19:1a:13:8f:a1:c8:39:93:b5:83:8d:62:
+         52:a9:7a:5b:0d:69:47:40:5c:51:4c:3a:be:a7:c9:5f:7b:93:
+         49:20:59:23:30:7c:d9:4a:dd:29:2c:ed:96:fd:cb:b8:13:ff:
+         36:2c:27:ce:28:c3:a6:d0:d8:ba:8c:38:9f:78:ff:54:c7:76:
+         05:37:47:f5:d3:55:9c:2c:12:41:81:14:ca:48:a2:b7:6d:05:
+         49:2b:c5:f5:7b:63:6d:6f:cd:3f:f4:8d:74:51:07:ff:e1:40:
+         d5:96:60:d8:c8:38:5a:15:f9:c5:fd:e1:5e:a3:02:95:90:4b:
+         fc:8a:42:de:72:31:72:3d:dd:a2:df:19:42:c8:fa:a8:77:11:
+         67:e6:64:8c:d0:fd:45:fd:f0:49:8c:e1:85:e6:f5:1f:47:c6:
+         ae:f2:70:c3:e8:99:d0:cd:9d:88:6b:33:ba:b9:65:3d:f4:b1:
+         f4:d0:3c:76:9c:18:9e:9e:c8:62:29:43:8e:f7:2f:2c:12:37:
+         39:02:26:4e:4b:b0:14:30:80:bb:2d:cc:fc:93:dc:c9:8b:c0:
+         69:12:71:36
+-----BEGIN CERTIFICATE-----
+MIIDQTCCAimgAwIBAgIGDPpgvFFuMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
+IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
+Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
+LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
+MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
+AOPHUvt9ArGnC0wtpiqwV2teC/meS+fQrFVDR/qx4PywYzCEMfWVRJCatyIBb8cX
+Fr5aGe5HNZClXie6hkc7xWPS8sah26y+sS9MwpiGGXLV+RJFCbwj4gDrTbqZcbVK
++0mMTfMLTs9Ie8gGN5I1/7tP6pivE6yozZ+n4HjbFbw7AgMBAAGjgYgwgYUwFgYD
+VR0RBA8wDYILbG9jYWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsG
+AQUFBwMBMB0GA1UdDgQWBBQj187YstD4jjyCJmzx9SqKSJBYZjAfBgNVHSMEGDAW
+gBQSyrpLRgSndYos6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUA
+A4IBAQAouXfqSo3WpftyW9bNYEAzVr/dI/+/6C4QzTCrJKRD2Jhx41lmPji9uPsZ
+GhOPocg5k7WDjWJSqXpbDWlHQFxRTDq+p8lfe5NJIFkjMHzZSt0pLO2W/cu4E/82
+LCfOKMOm0Ni6jDifeP9Ux3YFN0f101WcLBJBgRTKSKK3bQVJK8X1e2Ntb80/9I10
+UQf/4UDVlmDYyDhaFfnF/eFeowKVkEv8ikLecjFyPd2i3xlCyPqodxFn5mSM0P1F
+/fBJjOGF5vUfR8au8nDD6JnQzZ2IazO6uWU99LH00Dx2nBienshiKUOO9y8sEjc5
+AiZOS7AUMIC7Lcz8k9zJi8BpEnE2
+-----END CERTIFICATE-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.prm b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.prm
new file mode 100644
index 0000000..619d825
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.prm
@@ -0,0 +1,26 @@
+extensions = x509v3
+[ x509v3 ]
+#subjectAltName = DNS:localhost\0h
+subjectAltName = DER:30:0d:82:0b:6c:6f:63:61:6c:68:6f:73:74:00:68
+keyUsage	= keyEncipherment,digitalSignature,keyAgreement
+extendedKeyUsage = serverAuth
+subjectKeyIdentifier = hash
+authorityKeyIdentifier = keyid
+basicConstraints = CA:false
+[ req ]
+default_bits                    = 1024
+distinguished_name              = req_DN
+default_md			= sha256
+string_mask			= utf8only
+[ req_DN ]
+countryName                     = "Country Name is Northern Nowhere"
+countryName_value            = NN
+organizationName              = "Organization Name"
+organizationName_value     = Edel Curl Arctic Illudium Research Cloud
+commonName                      = "Common Name"
+commonName_value              = localhost 
+
+[something]
+# The key
+# the certificate
+# some dhparam
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pub.der b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pub.der
new file mode 100644
index 0000000..1b079f4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pub.der
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pub.pem b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pub.pem
new file mode 100644
index 0000000..c34cc77
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/Server-localhost0h-sv.pub.pem
@@ -0,0 +1,6 @@
+-----BEGIN PUBLIC KEY-----
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5
+nkvn0KxVQ0f6seD8sGMwhDH1lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLG
+odusvrEvTMKYhhly1fkSRQm8I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qY
+rxOsqM2fp+B42xW8OwIDAQAB
+-----END PUBLIC KEY-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/Makefile.am
new file mode 100644
index 0000000..db4a90f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/Makefile.am
@@ -0,0 +1,29 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign
+
+SCRIPTFILES = \
+  genroot.sh \
+  genserv.sh
+
+EXTRA_DIST = $(SCRIPTFILES)
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/Makefile.in
new file mode 100644
index 0000000..a5161e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/Makefile.in
@@ -0,0 +1,558 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/certs/scripts
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(srcdir)/Makefile.in
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign
+SCRIPTFILES = \
+  genroot.sh \
+  genserv.sh
+
+EXTRA_DIST = $(SCRIPTFILES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/certs/scripts/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/certs/scripts/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+	cscopelist-am ctags-am distclean distclean-generic \
+	distclean-libtool distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-dvi \
+	install-dvi-am install-exec install-exec-am install-html \
+	install-html-am install-info install-info-am install-man \
+	install-pdf install-pdf-am install-ps install-ps-am \
+	install-strip installcheck installcheck-am installdirs \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/genroot.sh b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/genroot.sh
new file mode 100755
index 0000000..4d2118a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/genroot.sh
@@ -0,0 +1,66 @@
+#!/bin/bash
+
+# (c) CopyRight EdelWeb for EdelKey and OpenEvidence, 2000-2004, 2009
+# Author: Peter Sylvester
+
+# "libre" for integration with curl
+
+OPENSSL=openssl
+if [ -f /usr/local/ssl/bin/openssl ] ; then
+OPENSSL=/usr/local/ssl/bin/openssl
+fi
+
+USAGE="echo Usage is genroot.sh \<name\>"
+
+HOME=`pwd`
+cd $HOME
+
+KEYSIZE=2048
+DURATION=6000
+
+PREFIX=$1
+if [ ".$PREFIX" = . ] ; then
+	echo No configuration prefix
+	NOTOK=1
+else
+    if [ ! -f $PREFIX-ca.prm ] ; then
+	echo No configuration file $PREFIX-ca.prm
+	NOTOK=1
+    fi
+fi
+
+if [ ".$NOTOK" != . ] ; then
+    echo "Sorry, I can't do that for you."
+    $USAGE
+    exit
+fi
+
+GETSERIAL="\$t = time ;\$d =  \$t . substr(\$t+$$ ,-4,4)-1;print \$d"
+SERIAL=`/usr/bin/env perl -e "$GETSERIAL"`
+
+echo SERIAL=$SERIAL PREFIX=$PREFIX DURATION=$DURATION KEYSIZE=$KEYSIZE
+
+echo "openssl genrsa -out $PREFIX-ca.key $KEYSIZE -passout XXX"
+openssl genrsa -out $PREFIX-ca.key $KEYSIZE -passout pass:secret
+
+echo "openssl req -config $PREFIX-ca.prm -new -key $PREFIX-ca.key -out $PREFIX-ca.csr"
+$OPENSSL req -config $PREFIX-ca.prm -new -key $PREFIX-ca.key -out $PREFIX-ca.csr -passin pass:secret
+
+echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL.ca-cacert -sha1 "
+
+$OPENSSL x509  -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL-ca.cacert -sha1
+
+echo "openssl x509 -text -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline > $PREFIX-ca.cacert "
+$OPENSSL x509 -text -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline > $PREFIX-ca.cacert
+
+echo "openssl x509 -in $PREFIX-ca.cacert -outform der -out $PREFIX-ca.der "
+$OPENSSL x509 -in $PREFIX-ca.cacert -outform der -out $PREFIX-ca.der
+
+echo "openssl x509 -in $PREFIX-ca.cacert -text -nameopt multiline > $PREFIX-ca.crt "
+
+$OPENSSL x509 -in $PREFIX-ca.cacert -text -nameopt multiline > $PREFIX-ca.crt
+
+echo "openssl x509 -noout -text -in $PREFIX-ca.cacert -nameopt multiline"
+$OPENSSL x509 -noout -text -in $PREFIX-ca.cacert -nameopt multiline
+
+#$OPENSSL rsa -in ../keys/$PREFIX-ca.key -text -noout -pubout
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/genserv.sh b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/genserv.sh
new file mode 100755
index 0000000..50bac01
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/scripts/genserv.sh
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+# (c) CopyRight EdelWeb for EdelKey and OpenEvidence, 2000-2004, 2009
+# Author: Peter Sylvester
+
+# "libre" for integration with curl
+
+OPENSSL=openssl
+if [ -f /usr/local/ssl/bin/openssl ] ; then
+   OPENSSL=/usr/local/ssl/bin/openssl
+fi
+
+USAGE="echo Usage is genserv.sh <prefix> <caprefix>"
+
+HOME=`pwd`
+cd $HOME
+
+KEYSIZE=1024
+DURATION=3000
+
+REQ=YES
+P12=NO
+DHP=NO
+
+PREFIX=$1
+if [ ".$PREFIX" = . ] ; then
+	echo No configuration prefix
+	NOTOK=1
+else
+    if [ ! -f $PREFIX-sv.prm ] ; then
+	echo No configuration file $PREFIX-sv.prm
+	NOTOK=1
+    fi
+fi
+
+CAPREFIX=$2
+if [ ".$CAPREFIX" = . ] ; then
+	echo No CA prefix
+	NOTOK=1
+else
+    if [ ! -f $CAPREFIX-ca.cacert ] ; then
+	echo No CA certificate file $CAPREFIX-ca.caert
+	NOTOK=1
+    fi
+    if [ ! -f $CAPREFIX-ca.key ] ; then
+	echo No $CAPREFIX key
+        NOTOK=1
+    fi
+fi
+
+if [ ".$NOTOK" != . ] ; then
+    echo "Sorry, I can't do that for you."
+    $USAGE
+    exit
+fi
+
+if [ ".$SERIAL" = . ] ; then
+	GETSERIAL="\$t = time ;\$d =  \$t . substr(\$t+$$ ,-4,4)-1;print \$d"
+	SERIAL=`/usr/bin/env perl -e "$GETSERIAL"`
+fi
+
+echo SERIAL=$SERIAL PREFIX=$PREFIX CAPREFIX=$CAPREFIX DURATION=$DURATION KEYSIZE=$KEYSIZE
+
+if [ "$DHP." = YES. ] ; then
+   echo "openssl dhparam -2 -out $PREFIX-sv.dhp $KEYSIZE"
+   $OPENSSL dhparam -2 -out $PREFIX-sv.dhp $KEYSIZE
+fi
+
+if [ "$REQ." = YES. ] ; then
+   echo "openssl req -config $PREFIX-sv.prm -newkey rsa:$KEYSIZE -keyout $PREFIX-sv.key -out $PREFIX-sv.csr -passout XXX"
+   $OPENSSL req -config $PREFIX-sv.prm -newkey rsa:$KEYSIZE -keyout $PREFIX-sv.key -out $PREFIX-sv.csr -passout pass:secret
+fi
+
+echo "openssl rsa -in $PREFIX-sv.key -out $PREFIX-sv.key"
+$OPENSSL rsa -in $PREFIX-sv.key -out $PREFIX-sv.key -passin pass:secret
+echo pseudo secrets generated
+
+echo "openssl rsa -in $PREFIX-sv.key -pubout -outform DER -out $PREFIX-sv.pub.der"
+$OPENSSL rsa -in $PREFIX-sv.key -pubout -outform DER -out $PREFIX-sv.pub.der
+
+echo "openssl rsa -in $PREFIX-sv.key -pubout -outform PEM -out $PREFIX-sv.pub.pem"
+$OPENSSL rsa -in $PREFIX-sv.key -pubout -outform PEM -out $PREFIX-sv.pub.pem
+
+echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION  -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline -sha1 > $PREFIX-sv.crt "
+
+$OPENSSL x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION  -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline -sha1 > $PREFIX-sv.crt
+
+if [ "$P12." = YES. ] ; then
+
+   echo "$OPENSSL pkcs12 -export -des3 -out $PREFIX-sv.p12 -caname $CAPREFIX -name $PREFIX -inkey $PREFIX-sv.key -in $PREFIX-sv.crt -certfile $CAPREFIX-ca.crt "
+
+   $OPENSSL pkcs12 -export -des3 -out $PREFIX-sv.p12 -caname $CAPREFIX -name $PREFIX -inkey $PREFIX-sv.key -in $PREFIX-sv.crt -certfile $CAPREFIX-ca.crt
+fi
+
+echo "openssl x509 -noout -text -hash -in $PREFIX-sv.selfcert -nameopt multiline"
+$OPENSSL x509 -noout -text -hash -in $PREFIX-sv.crt -nameopt multiline
+
+# revoke server cert
+touch $CAPREFIX-ca.db
+echo 01 > $CAPREFIX-ca.cnt
+echo "openssl ca -config $CAPREFIX-ca.cnf -revoke $PREFIX-sv.crt"
+$OPENSSL ca -config $CAPREFIX-ca.cnf -revoke $PREFIX-sv.crt
+
+# issue CRL
+echo "openssl ca -config $CAPREFIX-ca.cnf -gencrl -out $PREFIX-sv.crl"
+$OPENSSL ca -config $CAPREFIX-ca.cnf -gencrl -out $PREFIX-sv.crl
+
+echo "openssl x509 -in $PREFIX-sv.crt -outform der -out $PREFIX-sv.der "
+$OPENSSL x509 -in $PREFIX-sv.crt -outform der -out $PREFIX-sv.der
+
+# all together now
+touch $PREFIX-sv.dhp
+cat $PREFIX-sv.prm $PREFIX-sv.key  $PREFIX-sv.crt $PREFIX-sv.dhp >$PREFIX-sv.pem
+chmod o-r $PREFIX-sv.prm
+
+echo "$PREFIX-sv.pem done"
+
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/srp-verifier-conf b/ap/lib/libcurl/curl-7.54.1/tests/certs/srp-verifier-conf
new file mode 100644
index 0000000..67825ce
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/srp-verifier-conf
@@ -0,0 +1,3 @@
+1:Ewl2hcjiutMd3Fu2lgFnUXWSc67TVyy2vwYCKoS9MLsrdJVT9RgWTCuEqWJrfB6uE3LsE9GkOlaZabS7M29sj5TnzUqOLJMjiwEzArfiLr9WbMRANlF68N5AVLcPWvNx6Zjl3m5Scp0BzJBz9TkgfhzKJZ.WtP3Mv/67I/0wmRZ:2
+2:dUyyhxav9tgnyIg65wHxkzkb7VIPh4o0lkwfOKiPp4rVJrzLRYVBtb76gKlaO7ef5LYGEw3G.4E0jbMxcYBetDy2YdpiP/3GWJInoBbvYHIRO9uBuxgsFKTKWu7RnR7yTau/IrFTdQ4LY/q.AvoCzMxV0PKvD9Odso/LFIItn8PbTov3VMn/ZEH2SqhtpBUkWtmcIkEflhX/YY/fkBKfBbe27/zUaKUUZEUYZ2H2nlCL60.JIPeZJSzsu/xHDVcx:2
+3:2iQzj1CagQc/5ctbuJYLWlhtAsPHc7xWVyCPAKFRLWKADpASkqe9djWPFWTNTdeJtL8nAhImCn3Sr/IAdQ1FrGw0WvQUstPx3FO9KNcXOwisOQ1VlL.gheAHYfbYyBaxXL.NcJx9TUwgWDT0hRzFzqSrdGGTN3FgSTA1v4QnHtEygNj3eZ.u0MThqWUaDiP87nqha7XnT66bkTCkQ8.7T8L4KZjIImrNrUftedTTBi.WCi.zlrBxDuOM0da0JbUkQlXqvp0yvJAPpC11nxmmZOAbQOywZGmu9nhZNuwTlxjfIro0FOdthaDTuZRL9VL7MRPUDo/DQEyW.d4H.UIlzp:2
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/certs/srp-verifier-db b/ap/lib/libcurl/curl-7.54.1/tests/certs/srp-verifier-db
new file mode 100644
index 0000000..2f851a3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/certs/srp-verifier-db
@@ -0,0 +1,2 @@
+jsmith:34fPk7u.w3R/M1k2sQ9F.04GZqLKAsqDn44CHGu7ML0M8VWwu1p79OLxi6jRhSNdSM46Kx9GRVyJLXz7eok53..A6X5p3NdnMSYX8WwYrDmuseHDr.eua7gjd04S4EoY4ZuKix2.WGAsMTwk86AmTvcqyzqsH7GDhGOHEhjP5zs:lTjBBoK04K9vTKiL10rI/:1
+alice:3IIP1g1HDTN6VEUr8DUkMleocoC1cpuFZnmunDaGhMyIsw8LAwCc7ZapWaC66gZSyis4ezSuCqvhsJdwdc.0es2UrH6PBkBQflcQDuC.dEpjhWgAcH2Dw.2qU.E0ApQzLkcKOjXMQ2R6jMBL14kEUPjjHS3aa16yB.Afj3bNPdf:1JxU4GkweUEii6.b0grkzU:1
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/CMakeLists.txt b/ap/lib/libcurl/curl-7.54.1/tests/data/CMakeLists.txt
new file mode 100644
index 0000000..dec92e5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/CMakeLists.txt
@@ -0,0 +1,7 @@
+# Loads 'TESTCASES' from for the 'make show' target in runtests.pl
+transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
+include("${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
+
+# Prints all available test cases. Do not quote TESTCASES, it must be displayed
+# as a space-separated string rather than comma-separated (a list in CMake).
+add_custom_target(show COMMAND echo ${TESTCASES})
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/DISABLED b/ap/lib/libcurl/curl-7.54.1/tests/data/DISABLED
new file mode 100644
index 0000000..11d54b4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/DISABLED
@@ -0,0 +1,20 @@
+# This file can be used to specify test cases that should not run when all
+# test cases are run by runtests.pl. Just add the plain test case numbers, one
+# per line.
+# Lines starting with '#' letters are treated as comments.
+594
+1209
+1211
+1316
+1512
+836
+882
+938
+# test 1801 causes problems on Mac OS X and github
+# https://github.com/curl/curl/issues/380
+1801
+# test 1510 causes problems on the CI on github
+# example: https://travis-ci.org/curl/curl/builds/81633600
+1510
+# Pipelining test that is causing false positives a little too often
+1903
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.am
new file mode 100644
index 0000000..4ec0364
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.am
@@ -0,0 +1,29 @@
+iall:
+install:
+test:
+
+# TESTCASES are taken from Makefile.inc
+include Makefile.inc
+
+EXTRA_DIST = $(TESTCASES) DISABLED CMakeLists.txt
+
+filecheck:
+	@mkdir test-place; \
+	cp "$(top_srcdir)"/tests/data/test[0-9]* test-place/; \
+	rm test-place/*~; \
+	for f in $(EXTRA_DIST); do \
+	  if test -f "$(top_srcdir)/tests/data/$$f"; then \
+	    rm -f "test-place/$$f"; \
+	  else \
+	    echo "$$f is listed but missing!"; \
+	  fi \
+	done; \
+	echo "Local files not present in EXTRA_DIST:" ; \
+	ls test-place; \
+	! ls test-place | grep . >/dev/null ; \
+	RC=$$? ; \
+	rm -rf test-place ; \
+	exit $$RC
+
+show:
+	@echo $(EXTRA_DIST)
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.in
new file mode 100644
index 0000000..8d542ca
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.in
@@ -0,0 +1,742 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = tests/data
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+# this list is in numerical order
+TESTCASES = test1 test2 test3 test4 test5 test6 test7 test8 test9       \
+test10 test11 test12 test13 test14 test15 test16 test17 test18 test19   \
+test20 test21 test22 test23 test24 test25 test26 test27 test28 test29   \
+test30 test31 test32 test33 test34 test35 test36 test37 test38 test39   \
+test40 test41 test42 test43 test44 test45 test46 test47 test48 test49   \
+test50 test51 test52 test53 test54 test55 test56 test57 test58 test59   \
+test60 test61 test62 test63 test64 test65 test66 test67 test68 test69   \
+test70 test71 test72 test73 test74 test75 test76 test77 test78 test79   \
+test80 test81 test82 test83 test84 test85 test86 test87 test88 test89   \
+test90 test91 test92 test93 test94 test95 test96 test97 test98 test99   \
+test100 test101 test102 test103 test104 test105 test106 test107 test108 \
+test109 test110 test111 test112 test113 test114 test115 test116 test117 \
+test118 test119 test120 test121 test122 test123 test124 test125 test126 \
+test127 test128 test129 test130 test131 test132 test133 test134 test135 \
+test136 test137 test138 test139 test140 test141 test142 test143 test144 \
+test145 test146 test147 test148 test149 test150 test151 test152 test153 \
+test154 test155 test156 test157 test158 test159 test160 test161 test162 \
+test163 test164 test165 test166 test167 test168 test169 test170 test171 \
+test172 test173 test174 test175 test176 test177 test178 test179 test180 \
+test181 test182 test183 test184 test185 test186 test187 test188 test189 \
+test190 test191 test192 test193 test194 test195 test196 test197 test198 \
+test199 test200 test201 test202 test203 test204 test205 test206 test207 \
+test208 test209 test210 test211 test212 test213 test214 test215 test216 \
+test217 test218 test219 test220 test221 test222 test223 test224 test225 \
+test226 test227 test228 test229         test231         test233 test234 \
+test235 test236 test237 test238 test239 test240 test241 test242 test243 \
+        test245 test246 test247 test248 test249 test250 test251 test252 \
+test253 test254 test255 test256 test257 test258 test259 test260 test261 \
+test262 test263 test264 test265 test266 test267 test268 test269 test270 \
+test271 test272 test273 test274 test275 test276 test277 test278 test279 \
+test280 test281 test282 test283 test284 test285 test286 test287 test288 \
+test289 test290 test291 test292 test293 test294 test295 test296 test297 \
+test298 test299 test300 test301 test302 test303 test304 test305 test306 \
+test307 test308 test309 test310 test311 test312 test313                 \
+                                test320 test321 test322 test323 test324 \
+test325 \
+test350 test351 test352 test353 test354 \
+\
+test400 test401 test402 test403 test404 test405 test406 test407 test408 \
+test409 \
+\
+test500 test501 test502 test503 test504 test505 test506 test507 test508 \
+test509 test510 test511 test512 test513 test514 test515 test516 test517 \
+test518 test519 test520 test521 test522 test523 test524 test525 test526 \
+test527 test528 test529 test530 test531 test532 test533 test534 test535 \
+test536 test537 test538 test539 test540 test541 test542 test543 test544 \
+test545 test546 test547 test548 test549 test550 test551 test552 test553 \
+test554 test555 test556 test557 test558 test559 test560 test561 test562 \
+test563 test564 test565 test566 test567 test568 test569 test570 test571 \
+test572 test573 test574 test575 test576         test578 test579 test580 \
+test581 test582 test583 test584 test585 test586 test587 test588         \
+test590 test591 test592 test593 test594 test595 test596 test597 test598 \
+test599 test600 test601 test602 test603 test604 test605 test606 test607 \
+test608 test609 test610 test611 test612 test613 test614 test615 test616 \
+test617 test618 test619 test620 test621 test622 test623 test624 test625 \
+test626 test627 test628 test629 test630 test631 test632 test633 test634 \
+test635 test636 test637 test638 test639 test640 test641 \
+\
+test700 test701 test702 test703 test704 test705 test706 test707 test708 \
+test709 test710 test711 test712 test713 test714 test715 \
+\
+test800 test801 test802 test803 test804 test805 test806 test807 test808 \
+test809 test810 test811 test812 test813 test814 test815 test816 test817 \
+test818 test819 test820 test821 test822 test823 test824 test825 test826 \
+test827 test828 test829 test830 test831 test832 test833 test834 test835 \
+test836 test837 test838 test839 test840 test841 test842 test843 test844 \
+test845 \
+\
+test850 test851 test852 test853 test854 test855 test856 test857 test858 \
+test859 test860 test861 test862 test863 test864 test865 test866 test867 \
+test868 test869 test870 test871 test872 test873 test874 test875 test876 \
+test877 test878 test879 test880 test881 test882 test883 test884 test885 \
+test886 test887 test888 test889 test890 \
+\
+test900 test901 test902 test903 test904 test905 test906 test907 test908 \
+test909 test910 test911 test912 test913 test914 test915 test916 test917 \
+test918 test919 test920 test921 test922 test923 test924 test925 test926 \
+test927 test928 test929 test930 test931 test932 test933 test934 test935 \
+test936 test937 test938 test939 test940 test941 test942 test943 test944 \
+test945 test946 test947 test948 test949 \
+\
+test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 \
+test1008 test1009 test1010 test1011 test1012 test1013 test1014 test1015 \
+test1016 test1017 test1018 test1019 test1020 test1021 test1022 test1023 \
+test1024 test1025 test1026 test1027 test1028 test1029 test1030 test1031 \
+test1032 test1033 test1034 test1035 test1036 test1037 test1038 test1039 \
+test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 \
+test1048 test1049 test1050 test1051 test1052 test1053 test1054 test1055 \
+test1056 test1057 test1058 test1059 test1060 test1061 test1062 test1063 \
+test1064 test1065 test1066 test1067 test1068 test1069 test1070 test1071 \
+test1072 test1073 test1074 test1075 test1076 test1077 test1078 test1079 \
+test1080 test1081 test1082 test1083 test1084 test1085 test1086 test1087 \
+test1088 test1089 test1090 test1091 test1092 test1093 test1094 test1095 \
+test1096 test1097 test1098 test1099 test1100 test1101 test1102 test1103 \
+test1104 test1105 test1106 test1107 test1108 test1109 test1110 test1111 \
+test1112 test1113 test1114 test1115 test1116 test1117 test1118 test1119 \
+test1120 test1121 test1122 test1123 test1124 test1125 test1126 test1127 \
+test1128 test1129 test1130 test1131 test1132 test1133 test1134 test1135 \
+test1136 test1137 test1138 test1139 test1140 test1141 test1142 test1143 \
+test1144 test1145 test1146 \
+test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 \
+test1208 test1209 test1210 test1211 test1212 test1213 test1214 test1215 \
+test1216 test1217 test1218 test1219 \
+test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 \
+test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \
+test1236 test1237 test1238 test1239 test1240 test1241 test1242 test1243 \
+test1244 test1245 test1246 test1247 test1248 test1249 test1250 test1251 \
+test1252 test1253 test1254 test1255 test1256 test1257 test1258 test1259 \
+test1260 test1261 test1262 \
+\
+test1280 test1281 test1282 test1283 test1284 test1285 test1286 test1287 \
+test1288 \
+\
+test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 \
+test1308 test1309 test1310 test1311 test1312 test1313 test1314 test1315 \
+test1316 test1317 test1318 test1319 test1320 test1321 test1322          \
+         test1325 test1326 test1327 test1328 test1329 test1330 test1331 \
+test1332 test1333 test1334 test1335 test1336 test1337 test1338 test1339 \
+test1340 test1341 test1342 test1343 test1344 test1345 test1346 test1347 \
+test1348 test1349 test1350 test1351 test1352 test1353 test1354 test1355 \
+test1356 test1357 test1358 test1359 test1360 test1361 test1362 test1363 \
+test1364 test1365 test1366 test1367 test1368 test1369 test1370 test1371 \
+test1372 test1373 test1374 test1375 test1376 test1377 test1378 test1379 \
+test1380 test1381 test1382 test1383 test1384 test1385 test1386 test1387 \
+test1388 test1389 test1390 test1391 test1392 test1393 test1394 test1395 \
+test1396 test1397 test1398 \
+\
+test1400 test1401 test1402 test1403 test1404 test1405 test1406 test1407 \
+test1408 test1409 test1410 test1411 test1412 test1413 test1414 test1415 \
+test1416 test1417 test1418 test1419 test1420 test1421 test1422 test1423 \
+test1424 \
+test1428 test1429 test1430 test1431 test1432 test1433 test1434 test1435 \
+test1436 test1437 test1438 test1439 test1440 test1441 test1442 test1443 \
+test1444 test1445 test1446 \
+\
+test1500 test1501 test1502 test1503 test1504 test1505 test1506 test1507 \
+test1508 test1509 test1510 test1511 test1512 test1513 test1514 test1515 \
+test1516 test1517 \
+\
+test1520 test1521 \
+\
+test1525 test1526 test1527 test1528 test1529 test1530 test1531 test1532 \
+test1533 test1534 test1535 test1536 test1537 test1538 \
+test1540 test1541 \
+\
+test1600 test1601 test1602 test1603 test1604 test1605 test1606 \
+\
+test1700 test1701 test1702 \
+\
+test1800 test1801 \
+\
+test1900 test1901 test1902 test1903 \
+\
+test2000 test2001 test2002 test2003 test2004 test2005 test2006 test2007 \
+test2008 test2009 test2010 test2011 test2012 test2013 test2014 test2015 \
+test2016 test2017 test2018 test2019 test2020 test2021 test2022 test2023 \
+test2024 test2025 test2026 test2027 test2028 test2029 test2030 test2031 \
+test2032 test2033 test2034 test2035 test2036 test2037 test2038 test2039 \
+test2040 test2041 test2042 test2043 test2044 test2045 test2046 test2047 \
+test2048 test2049 test2050 test2051 test2052 test2053 test2054 test2055
+
+
+# TESTCASES are taken from Makefile.inc
+EXTRA_DIST = $(TESTCASES) DISABLED CMakeLists.txt
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/data/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/data/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+$(srcdir)/Makefile.inc $(am__empty):
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+	cscopelist-am ctags-am distclean distclean-generic \
+	distclean-libtool distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-dvi \
+	install-dvi-am install-exec install-exec-am install-html \
+	install-html-am install-info install-info-am install-man \
+	install-pdf install-pdf-am install-ps install-ps-am \
+	install-strip installcheck installcheck-am installdirs \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+iall:
+install:
+test:
+
+filecheck:
+	@mkdir test-place; \
+	cp "$(top_srcdir)"/tests/data/test[0-9]* test-place/; \
+	rm test-place/*~; \
+	for f in $(EXTRA_DIST); do \
+	  if test -f "$(top_srcdir)/tests/data/$$f"; then \
+	    rm -f "test-place/$$f"; \
+	  else \
+	    echo "$$f is listed but missing!"; \
+	  fi \
+	done; \
+	echo "Local files not present in EXTRA_DIST:" ; \
+	ls test-place; \
+	! ls test-place | grep . >/dev/null ; \
+	RC=$$? ; \
+	rm -rf test-place ; \
+	exit $$RC
+
+show:
+	@echo $(EXTRA_DIST)
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.inc b/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.inc
new file mode 100644
index 0000000..8b9acbf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/Makefile.inc
@@ -0,0 +1,184 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+# this list is in numerical order
+TESTCASES = test1 test2 test3 test4 test5 test6 test7 test8 test9       \
+test10 test11 test12 test13 test14 test15 test16 test17 test18 test19   \
+test20 test21 test22 test23 test24 test25 test26 test27 test28 test29   \
+test30 test31 test32 test33 test34 test35 test36 test37 test38 test39   \
+test40 test41 test42 test43 test44 test45 test46 test47 test48 test49   \
+test50 test51 test52 test53 test54 test55 test56 test57 test58 test59   \
+test60 test61 test62 test63 test64 test65 test66 test67 test68 test69   \
+test70 test71 test72 test73 test74 test75 test76 test77 test78 test79   \
+test80 test81 test82 test83 test84 test85 test86 test87 test88 test89   \
+test90 test91 test92 test93 test94 test95 test96 test97 test98 test99   \
+test100 test101 test102 test103 test104 test105 test106 test107 test108 \
+test109 test110 test111 test112 test113 test114 test115 test116 test117 \
+test118 test119 test120 test121 test122 test123 test124 test125 test126 \
+test127 test128 test129 test130 test131 test132 test133 test134 test135 \
+test136 test137 test138 test139 test140 test141 test142 test143 test144 \
+test145 test146 test147 test148 test149 test150 test151 test152 test153 \
+test154 test155 test156 test157 test158 test159 test160 test161 test162 \
+test163 test164 test165 test166 test167 test168 test169 test170 test171 \
+test172 test173 test174 test175 test176 test177 test178 test179 test180 \
+test181 test182 test183 test184 test185 test186 test187 test188 test189 \
+test190 test191 test192 test193 test194 test195 test196 test197 test198 \
+test199 test200 test201 test202 test203 test204 test205 test206 test207 \
+test208 test209 test210 test211 test212 test213 test214 test215 test216 \
+test217 test218 test219 test220 test221 test222 test223 test224 test225 \
+test226 test227 test228 test229         test231         test233 test234 \
+test235 test236 test237 test238 test239 test240 test241 test242 test243 \
+        test245 test246 test247 test248 test249 test250 test251 test252 \
+test253 test254 test255 test256 test257 test258 test259 test260 test261 \
+test262 test263 test264 test265 test266 test267 test268 test269 test270 \
+test271 test272 test273 test274 test275 test276 test277 test278 test279 \
+test280 test281 test282 test283 test284 test285 test286 test287 test288 \
+test289 test290 test291 test292 test293 test294 test295 test296 test297 \
+test298 test299 test300 test301 test302 test303 test304 test305 test306 \
+test307 test308 test309 test310 test311 test312 test313                 \
+                                test320 test321 test322 test323 test324 \
+test325 \
+test350 test351 test352 test353 test354 \
+\
+test400 test401 test402 test403 test404 test405 test406 test407 test408 \
+test409 \
+\
+test500 test501 test502 test503 test504 test505 test506 test507 test508 \
+test509 test510 test511 test512 test513 test514 test515 test516 test517 \
+test518 test519 test520 test521 test522 test523 test524 test525 test526 \
+test527 test528 test529 test530 test531 test532 test533 test534 test535 \
+test536 test537 test538 test539 test540 test541 test542 test543 test544 \
+test545 test546 test547 test548 test549 test550 test551 test552 test553 \
+test554 test555 test556 test557 test558 test559 test560 test561 test562 \
+test563 test564 test565 test566 test567 test568 test569 test570 test571 \
+test572 test573 test574 test575 test576         test578 test579 test580 \
+test581 test582 test583 test584 test585 test586 test587 test588         \
+test590 test591 test592 test593 test594 test595 test596 test597 test598 \
+test599 test600 test601 test602 test603 test604 test605 test606 test607 \
+test608 test609 test610 test611 test612 test613 test614 test615 test616 \
+test617 test618 test619 test620 test621 test622 test623 test624 test625 \
+test626 test627 test628 test629 test630 test631 test632 test633 test634 \
+test635 test636 test637 test638 test639 test640 test641 \
+\
+test700 test701 test702 test703 test704 test705 test706 test707 test708 \
+test709 test710 test711 test712 test713 test714 test715 \
+\
+test800 test801 test802 test803 test804 test805 test806 test807 test808 \
+test809 test810 test811 test812 test813 test814 test815 test816 test817 \
+test818 test819 test820 test821 test822 test823 test824 test825 test826 \
+test827 test828 test829 test830 test831 test832 test833 test834 test835 \
+test836 test837 test838 test839 test840 test841 test842 test843 test844 \
+test845 \
+\
+test850 test851 test852 test853 test854 test855 test856 test857 test858 \
+test859 test860 test861 test862 test863 test864 test865 test866 test867 \
+test868 test869 test870 test871 test872 test873 test874 test875 test876 \
+test877 test878 test879 test880 test881 test882 test883 test884 test885 \
+test886 test887 test888 test889 test890 \
+\
+test900 test901 test902 test903 test904 test905 test906 test907 test908 \
+test909 test910 test911 test912 test913 test914 test915 test916 test917 \
+test918 test919 test920 test921 test922 test923 test924 test925 test926 \
+test927 test928 test929 test930 test931 test932 test933 test934 test935 \
+test936 test937 test938 test939 test940 test941 test942 test943 test944 \
+test945 test946 test947 test948 test949 \
+\
+test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 \
+test1008 test1009 test1010 test1011 test1012 test1013 test1014 test1015 \
+test1016 test1017 test1018 test1019 test1020 test1021 test1022 test1023 \
+test1024 test1025 test1026 test1027 test1028 test1029 test1030 test1031 \
+test1032 test1033 test1034 test1035 test1036 test1037 test1038 test1039 \
+test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 \
+test1048 test1049 test1050 test1051 test1052 test1053 test1054 test1055 \
+test1056 test1057 test1058 test1059 test1060 test1061 test1062 test1063 \
+test1064 test1065 test1066 test1067 test1068 test1069 test1070 test1071 \
+test1072 test1073 test1074 test1075 test1076 test1077 test1078 test1079 \
+test1080 test1081 test1082 test1083 test1084 test1085 test1086 test1087 \
+test1088 test1089 test1090 test1091 test1092 test1093 test1094 test1095 \
+test1096 test1097 test1098 test1099 test1100 test1101 test1102 test1103 \
+test1104 test1105 test1106 test1107 test1108 test1109 test1110 test1111 \
+test1112 test1113 test1114 test1115 test1116 test1117 test1118 test1119 \
+test1120 test1121 test1122 test1123 test1124 test1125 test1126 test1127 \
+test1128 test1129 test1130 test1131 test1132 test1133 test1134 test1135 \
+test1136 test1137 test1138 test1139 test1140 test1141 test1142 test1143 \
+test1144 test1145 test1146 \
+test1152 test1163 \
+test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 \
+test1208 test1209 test1210 test1211 test1212 test1213 test1214 test1215 \
+test1216 test1217 test1218 test1219 \
+test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 \
+test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \
+test1236 test1237 test1238 test1239 test1240 test1241 test1242 test1243 \
+test1244 test1245 test1246 test1247 test1248 test1249 test1250 test1251 \
+test1252 test1253 test1254 test1255 test1256 test1257 test1258 test1259 \
+test1260 test1261 test1262 \
+\
+test1280 test1281 test1282 test1283 test1284 test1285 test1286 test1287 \
+test1288 \
+\
+test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 \
+test1308 test1309 test1310 test1311 test1312 test1313 test1314 test1315 \
+test1316 test1317 test1318 test1319 test1320 test1321 test1322          \
+         test1325 test1326 test1327 test1328 test1329 test1330 test1331 \
+test1332 test1333 test1334 test1335 test1336 test1337 test1338 test1339 \
+test1340 test1341 test1342 test1343 test1344 test1345 test1346 test1347 \
+test1348 test1349 test1350 test1351 test1352 test1353 test1354 test1355 \
+test1356 test1357 test1358 test1359 test1360 test1361 test1362 test1363 \
+test1364 test1365 test1366 test1367 test1368 test1369 test1370 test1371 \
+test1372 test1373 test1374 test1375 test1376 test1377 test1378 test1379 \
+test1380 test1381 test1382 test1383 test1384 test1385 test1386 test1387 \
+test1388 test1389 test1390 test1391 test1392 test1393 test1394 test1395 \
+test1396 test1397 test1398 \
+\
+test1400 test1401 test1402 test1403 test1404 test1405 test1406 test1407 \
+test1408 test1409 test1410 test1411 test1412 test1413 test1414 test1415 \
+test1416 test1417 test1418 test1419 test1420 test1421 test1422 test1423 \
+test1424 \
+test1428 test1429 test1430 test1431 test1432 test1433 test1434 test1435 \
+test1436 test1437 test1438 test1439 test1440 test1441 test1442 test1443 \
+test1444 test1445 test1446 \
+\
+test1500 test1501 test1502 test1503 test1504 test1505 test1506 test1507 \
+test1508 test1509 test1510 test1511 test1512 test1513 test1514 test1515 \
+test1516 test1517 \
+\
+test1520 test1521 \
+\
+test1525 test1526 test1527 test1528 test1529 test1530 test1531 test1532 \
+test1533 test1534 test1535 test1536 test1537 test1538 \
+test1540 test1541 \
+\
+test1600 test1601 test1602 test1603 test1604 test1605 test1606 \
+\
+test1700 test1701 test1702 \
+\
+test1800 test1801 \
+\
+test1900 test1901 test1902 test1903 \
+\
+test2000 test2001 test2002 test2003 test2004 test2005 test2006 test2007 \
+test2008 test2009 test2010 test2011 test2012 test2013 test2014 test2015 \
+test2016 test2017 test2018 test2019 test2020 test2021 test2022 test2023 \
+test2024 test2025 test2026 test2027 test2028 test2029 test2030 test2031 \
+test2032 test2033 test2034 test2035 test2036 test2037 test2038 test2039 \
+test2040 test2041 test2042 test2043 test2044 test2045 test2046 test2047 \
+test2048 test2049 test2050 test2051 test2052 test2053 test2054 test2055
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1
new file mode 100644
index 0000000..7c0e160
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test10 b/ap/lib/libcurl/curl-7.54.1/tests/data/test10
new file mode 100644
index 0000000..806aa69
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test10
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+simple HTTP PUT from file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/10 -T log/test10.txt
+</command>
+<file name="log/test10.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /we/want/10 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+Expect: 100-continue

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test100 b/ap/lib/libcurl/curl-7.54.1/tests/data/test100
new file mode 100644
index 0000000..72f9c85
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test100
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<data mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 curl-releases
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list PASV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/test-100/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD test-100

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1000 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1000
new file mode 100644
index 0000000..e6f8eef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1000
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+NOBODY
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<datacheck>
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list PASV with -I
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1000/ -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD 1000

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1001 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1001
new file mode 100644
index 0000000..91b1320
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1001
@@ -0,0 +1,107 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP proxy
+HTTP Digest auth
+Resume
+Content-Range
+CUSTOMREQUEST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+
+<datacheck>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP POST --digest with PUT and resumed upload and modified method
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1001 -u auser:apasswd --digest -T log/1001 -x  http://%HOSTIP:%HTTPPORT -C 2 -X GET
+</command>
+<file name="log/1001">
+test
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/1001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Content-Range: bytes 2-4/5

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+

+GET http://%HOSTIP:%HTTPPORT/1001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1001", response="6af4d89c952f4dd4cc215a6878dc499d"

+Content-Range: bytes 2-4/5

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 3

+Expect: 100-continue

+

+st
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1002 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1002
new file mode 100644
index 0000000..83cce6e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1002
@@ -0,0 +1,117 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP proxy
+HTTP Digest auth
+Resume
+Content-Range
+CUSTOMREQUEST
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+
+<datacheck>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP POST --digest with PUT and resumed upload and modified method, twice
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1002.upload1 -T log/1002 http://%HOSTIP:%HTTPPORT/1002.upload2 -T log/1002 -u auser:apasswd --digest -x  http://%HOSTIP:%HTTPPORT -C 2 -X GET
+</command>
+<file name="log/1002">
+test
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/1002.upload1 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Content-Range: bytes 2-4/5

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+

+GET http://%HOSTIP:%HTTPPORT/1002.upload1 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1002.upload1", response="198aa9b6acb4b0c71d02a197a5e41f54"

+Content-Range: bytes 2-4/5

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 3

+Expect: 100-continue

+

+st
+GET http://%HOSTIP:%HTTPPORT/1002.upload2 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1002.upload2", response="d711f0d2042786d930de635ba0d1a1d0"

+Content-Range: bytes 2-4/5

+User-Agent: curl/7.16.1

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 3

+Expect: 100-continue

+

+st
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1003 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1003
new file mode 100644
index 0000000..08e377a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1003
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+huge response
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+mooo
+</data>
+# a ~17000 bytes response string to CWD to make sure the ftp parser deals
+# with it nicely
+<servercmd>
+REPLY CWD 250 CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with excessively large server command response line
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/1003
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 1003

+RETR 1003

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1004 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1004
new file mode 100644
index 0000000..955163b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1004
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with empty proxy
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1004 --proxy ""
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1004 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1005 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1005
new file mode 100644
index 0000000..5c0c676
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1005
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+huge response
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+mooo
+</data>
+# a long set of response strings to CWD to make sure the ftp parser deals
+# with it nicely
+<servercmd>
+REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-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
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with excessively large number of server command response lines
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/1005
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 1005

+RETR 1005

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1006 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1006
new file mode 100644
index 0000000..b37f807
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1006
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+huge response
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+mooo
+</data>
+# A long set of response strings to CWD to make sure the ftp parser deals
+# with it nicely. The length hits a boundary condition that may make curl
+# hang.
+<servercmd>
+REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-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
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with excessively large number of server command response lines (boundary condition)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/1006
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 1006

+RETR 1006

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1007 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1007
new file mode 100644
index 0000000..db2717a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1007
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP WRQ
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP send with invalid permission on server
+ </name>
+ <command>
+-T log/test1007.txt tftp://%HOSTIP:%TFTPPORT//invalid-file
+</command>
+<file name="log/test1007.txt">
+This data will not be sent
+</file>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<errorcode>
+69
+</errorcode>
+<protocol>
+opcode: 2
+mode: octet
+tsize: 27
+blksize: 512
+timeout: 6
+filename: /invalid-file
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1008 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1008
new file mode 100644
index 0000000..0bc4131
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1008
@@ -0,0 +1,133 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+HTTP proxy NTLM auth
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+
+# this is returned first since we get no proxy-auth
+<connect1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Transfer-Encoding: chunked

+

+20

+And you should ignore this data.

+FA0

+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

+0

+

+</connect1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<connect1002>
+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+</connect1002>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<data1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+Nice proxy auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Transfer-Encoding: chunked

+

+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy CONNECT auth NTLM with chunked-encoded 407 response
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com.1008:%HTTPPORT/path/10080002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --proxytunnel
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.example.com.1008:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.1008:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.example.com.1008:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.1008:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+Proxy-Connection: Keep-Alive

+

+GET /path/10080002 HTTP/1.1

+User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4

+Host: test.remote.example.com.1008:%HTTPPORT

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1009 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1009
new file mode 100644
index 0000000..e1929be
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1009
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+--local-port
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+a chunk of
+data
+returned
+ to client
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve with --local-port
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT//1009 --local-port 44444-45444
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /1009
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test101 b/ap/lib/libcurl/curl-7.54.1/tests/data/test101
new file mode 100644
index 0000000..09faade
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test101
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+LIST
+</keywords>
+</info>
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list, PORT with specified IP
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/ -P %CLIENTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PORT 127,0,0,1,243,212

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1010 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1010
new file mode 100644
index 0000000..a51d68a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1010
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list nocwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT//list/this/path/1010/ --ftp-method nocwd
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST /list/this/path/1010/

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1011 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1011
new file mode 100644
index 0000000..566867d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1011
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK

+Location: moo.html&testcase=/10110002

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

+Content-Length: 0

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 301 OK

+Location: moo.html&testcase=/10110002

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

+Content-Length: 0

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with 301 redirect
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/blah/1011 -L -d "moo"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /blah/1011 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+mooGET /blah/moo.html&testcase=/10110002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1012 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1012
new file mode 100644
index 0000000..4edc173
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1012
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsclose

+Location: moo.html&testcase=/10120002

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

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 301 OK swsclose

+Location: moo.html&testcase=/10120002

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with 301 redirect and --post301
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/blah/1012 -L -d "moo" --post301
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /blah/1012 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+mooPOST /blah/moo.html&testcase=/10120002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+moo
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1013 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1013
new file mode 100644
index 0000000..9a1e6d4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1013
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+curl-config
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+Compare curl --version with curl-config --protocols
+ </name>
+ <command>
+--version
+</command>
+<postcheck>
+%SRCDIR/libtest/test1013.pl ../curl-config log/stdout1013 protocols
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1014 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1014
new file mode 100644
index 0000000..5116aad
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1014
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+curl-config
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+Compare curl --version with curl-config --features
+ </name>
+ <command>
+--version
+</command>
+<postcheck>
+%SRCDIR/libtest/test1013.pl ../curl-config log/stdout1014 features
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1015 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1015
new file mode 100644
index 0000000..a2b2cef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1015
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+--data-urlencode
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 I am cool swsclose

+Server: Cool server/10.0

+Content-Length: 0

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--data-urlencode
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1015 --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@log/1015.txt" --data-urlencode @log/1015.txt 
+</command>
+<file name="log/1015.txt">
+content to _?!#$'|<>
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /1015 HTTP/1.1

+User-Agent: curl/7.17.2-CVS (i686-pc-linux-gnu) libcurl/7.17.2-CVS OpenSSL/0.9.8g zlib/1.2.3.3 c-ares/1.5.2-CVS libidn/1.1 libssh2/0.19.0-C

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 133

+Content-Type: application/x-www-form-urlencoded

+

+my%20name%20is%20moo%5B%5D&y e s=s_i_r&v_alue=content%20to%20_%3F%21%23%24%27%7C%3C%3E%0A&content%20to%20_%3F%21%23%24%27%7C%3C%3E%0A
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1016 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1016
new file mode 100644
index 0000000..b404cac
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1016
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+FILE
+Range
+</keywords>
+</info>
+
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+</features>
+ <name>
+X-Y range on a file:// URL to stdout
+ </name>
+ <command>
+-r 1-4 file://localhost/%PWD/log/test1016.txt 
+</command>
+<file name="log/test1016.txt">
+1234567890
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout nonewline="yes">
+2345
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1017 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1017
new file mode 100644
index 0000000..6fbc38a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1017
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+FILE
+Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+</features>
+ <name>
+0-Y range on a file:// URL to stdout
+ </name>
+ <command>
+-r 0-3 file://localhost/%PWD/log/test1017.txt 
+</command>
+<file name="log/test1017.txt">
+1234567890
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout nonewline="yes">
+1234
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1018 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1018
new file mode 100644
index 0000000..28a7027
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1018
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+FILE
+Range
+</keywords>
+</info>
+
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+</features>
+ <name>
+X-X range on a file:// URL to stdout
+ </name>
+ <command>
+-r 4-4 file://localhost/%PWD/log/test1018.txt 
+</command>
+<file name="log/test1018.txt">
+1234567890
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout nonewline="yes">
+5
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1019 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1019
new file mode 100644
index 0000000..4d9872a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1019
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FILE
+Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+</features>
+ <name>
+X- range on a file:// URL to stdout
+ </name>
+ <command>
+-r 7- file://localhost/%PWD/log/test1019.txt 
+</command>
+<file name="log/test1019.txt">
+1234567890
+1234567890
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+890
+1234567890
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test102 b/ap/lib/libcurl/curl-7.54.1/tests/data/test102
new file mode 100644
index 0000000..141bc0f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test102
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR PASV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/102
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 102

+RETR 102

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1020 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1020
new file mode 100644
index 0000000..735871d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1020
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FILE
+Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+</features>
+ <name>
+-Y range on a file:// URL to stdout
+ </name>
+ <command>
+-r -9 file://localhost/%PWD/log/test1020.txt 
+</command>
+<file name="log/test1020.txt">
+1234567890
+1234567890
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+34567890
+</stdout>
+</verify>
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1021 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1021
new file mode 100644
index 0000000..29247f1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1021
@@ -0,0 +1,141 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+HTTP proxy NTLM auth
+--proxy-anyauth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<connect>
+HTTP/1.1 407 Authorization Required to proxy me my dear swsclose

+Proxy-Authenticate: NTLM

+Content-Length: 21

+Connection: close

+
+data to discard
+</connect>
+
+# this is returned first since we get no proxy-auth
+<connect1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 28

+
+27 bytes and newline to ign
+</connect1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<connect1002>
+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+</connect1002>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<data1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+Nice proxy auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear swsclose

+Proxy-Authenticate: NTLM

+Content-Length: 21

+Connection: close

+
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 28

+
+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy CONNECT with any proxyauth and proxy offers NTLM and close
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com.1021:%HTTPPORT/path/10210002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-anyauth --proxytunnel
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.example.com.1021:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.1021:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.example.com.1021:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.1021:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.example.com.1021:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.1021:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+Proxy-Connection: Keep-Alive

+

+GET /path/10210002 HTTP/1.1

+User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4

+Host: test.remote.example.com.1021:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1022 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1022
new file mode 100644
index 0000000..6a8b012
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1022
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+curl-config
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+Compare curl --version with curl-config --version
+ </name>
+ <command>
+--version
+</command>
+<postcheck>
+%SRCDIR/libtest/test1022.pl ../curl-config log/stdout1022 version
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1023 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1023
new file mode 100644
index 0000000..9c916a0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1023
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+curl-config
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+Compare curl --version with curl-config --vernum
+ </name>
+ <command>
+--version
+</command>
+<postcheck>
+%SRCDIR/libtest/test1022.pl ../curl-config log/stdout1023 vernum
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1024 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1024
new file mode 100644
index 0000000..086ef26
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1024
@@ -0,0 +1,103 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../data/10240002.txt

+Set-Cookie: firstcookie=want; path=/want/

+Content-Length: 69

+

+This server reply is for testing a Location: following with cookies
+
+</data>
+<data2>
+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../want/10240003.txt

+Set-Cookie: nextcookie=data; path=/data/

+Content-Length: 69

+

+This server reply is for testing a Location: following with cookies
+
+</data2>
+<data3>
+HTTP/1.1 200 Followed here fine

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

+Server: test-server/fake

+Content-Length: 52

+

+If this is received, the location following worked
+
+</data3>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../data/10240002.txt

+Set-Cookie: firstcookie=want; path=/want/

+Content-Length: 69

+

+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../want/10240003.txt

+Set-Cookie: nextcookie=data; path=/data/

+Content-Length: 69

+

+HTTP/1.1 200 Followed here fine

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

+Server: test-server/fake

+Content-Length: 52

+

+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with cookies
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1024 -L -c log/jar1024
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1024 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /data/10240002.txt HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/10240003.txt HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: firstcookie=want

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1025 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1025
new file mode 100644
index 0000000..494f8f8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1025
@@ -0,0 +1,105 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../data/10250002.txt

+Set-Cookie: firstcookie=want; path=/want/

+Content-Length: 69

+

+This server reply is for testing a Location: following with cookies
+
+</data>
+<data2>
+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../want/10250003.txt

+Set-Cookie: nextcookie=data; path=/data/

+Content-Length: 69

+

+This server reply is for testing a Location: following with cookies
+
+</data2>
+<data3>
+HTTP/1.1 200 Followed here fine

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

+Server: test-server/fake

+Content-Length: 52

+

+If this is received, the location following worked
+
+</data3>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../data/10250002.txt

+Set-Cookie: firstcookie=want; path=/want/

+Content-Length: 69

+

+HTTP/1.1 301 This is a weirdo text message

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

+Server: test-server/fake

+Location: ../want/10250003.txt

+Set-Cookie: nextcookie=data; path=/data/

+Content-Length: 69

+

+HTTP/1.1 200 Followed here fine

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

+Server: test-server/fake

+Content-Length: 52

+

+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with command-line and server cookies
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1025 -L -c log/jar1025 -b forcedcookie=yes
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1025 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: forcedcookie=yes

+

+GET /data/10250002.txt HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: forcedcookie=yes

+

+GET /want/10250003.txt HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: firstcookie=want; forcedcookie=yes

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1026 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1026
new file mode 100644
index 0000000..e47b12a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1026
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+--manual
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+curl --manual 
+ </name>
+ <command>
+--manual
+</command>
+# Search for these two sentinel lines in the manual output; if they are found,
+# then chances are good the entire manual is there.
+<postcheck>
+perl -e 'open(IN,$ARGV[0]); my $lines=grep(/(a\s*tool\s*to\s*transfer\s*data)|(mailing\s*lists\s*to\s*discuss\s*curl)/, <IN>); exit ($lines != 2); # Let this file pass an XML syntax check: </IN>' log/stdout1026
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1027 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1027
new file mode 100644
index 0000000..9c3d6e3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1027
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+--help
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+curl --help
+ </name>
+ <command>
+--help
+</command>
+# Search for these two sentinel lines in the help output; if they are found,
+# then chances are good the entire help is there.
+<postcheck>
+perl -e 'open(IN,$ARGV[0]); my $lines=grep(/(Usage: curl )|(--version\s*Show version)/, <IN>); exit ($lines != 2); # Let this file pass an XML syntax check: </IN>' log/stdout1027
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1028 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1028
new file mode 100644
index 0000000..fd5162a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1028
@@ -0,0 +1,94 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+FTP
+PASV
+FILE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 302 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+Location: ftp://127.0.0.1:8992/10280002

+Content-Length: 0

+Connection: close

+

+</data1>
+<data2>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data2>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+ftp
+</server>
+ <name>
+HTTP Location: redirect to FTP URL
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/10280001 -L
+</command>
+# The data section doesn't do variable substitution, so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%FTPPORT' ne '8992' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /10280001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 10280002

+RETR 10280002

+QUIT

+</protocol>
+<stdout>
+HTTP/1.1 302 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+Location: ftp://%HOSTIP:%FTPPORT/10280002

+Content-Length: 0

+Connection: close

+

+data
+    to
+      see
+that FTP
+works
+  so does it?
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1029 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1029
new file mode 100644
index 0000000..2ffc7c6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1029
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+redirect_url
+followlocation
+--write-out
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10290002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: and 'redirect_url' check
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/our/1029 -w '%{redirect_url}\n'
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/our/1029 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10290002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+http://%HOSTIP:%HTTPPORT/we/want/our/data/10290002.txt?coolsite=yes
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test103 b/ap/lib/libcurl/curl-7.54.1/tests/data/test103
new file mode 100644
index 0000000..15712f5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test103
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR PORT with CWD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/103 -P -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+PORT 127,0,0,1,0,0

+TYPE I

+SIZE 103

+RETR 103

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1030 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1030
new file mode 100644
index 0000000..5a8ed4c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1030
@@ -0,0 +1,110 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Digest auth
+--anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

+Content-Length: 26

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

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

+Content-Length: 26

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

+

+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP PUT with --anyauth authorization (picking Digest)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1030 -T log/put1030 -u testuser:testpass --anyauth
+</command>
+<file name="log/put1030">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1030 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+PUT /1030 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1030", response="01cb59db1ddaac246b072d5f5f0716d9"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1031 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1031
new file mode 100644
index 0000000..9cfbab5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1031
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: ?coolsite=yes/10310002.txt
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: ?coolsite=yes/10310002.txt
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following to a query string
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/this/1031 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/this/1031 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/this/1031?coolsite=yes/10310002.txt HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1032 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1032
new file mode 100644
index 0000000..b0b6834
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1032
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP HEAD
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP HEAD with --range
+ </name>
+ <command>
+--range 1-3 --head http://%HOSTIP:%HTTPPORT/1032
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+HEAD /1032 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=1-3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1033 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1033
new file mode 100644
index 0000000..9ad5d25
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1033
@@ -0,0 +1,60 @@
+<testcase>
+#
+# This case with an unexpected 1xx response used to cause a "hang" before the fix
+# got 7.19.0
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 102 unexpected huh?!
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with 102 response!
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1033
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1033 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1034 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1034
new file mode 100644
index 0000000..6c1beb6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1034
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+IDN
+FAILURE
+config file
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 503 Service Unavailable

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+idn
+</features>
+<setenv>
+LC_ALL=
+LC_CTYPE=en_US.UTF-8
+</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
+ <name>
+HTTP over proxy with malformatted IDN host name
+ </name>
+
+# This host name contains an invalid UTF-8 byte sequence that can't be
+# converted into an IDN name
+<stdin>
+url = "http://invalid-utf8-â.local/page/1034"
+</stdin>
+ <command>
+-K - -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://invalid-utf8-â.local/page/1034 HTTP/1.1

+Host: invalid-utf8-â.local

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1035 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1035
new file mode 100644
index 0000000..033a48a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1035
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+IDN
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 503 Service Unavailable

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+idn
+</features>
+<setenv>
+LC_ALL=
+LC_CTYPE=en_US.UTF-8
+</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
+ <name>
+HTTP over proxy with too long IDN host name
+ </name>
+ <command>
+http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 HTTP/1.1

+Host: too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1036 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1036
new file mode 100644
index 0000000..b8ebc4f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1036
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+expected to be a file without the first part
+but we emulate that
+</data>
+<size>
+85
+</size>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download resume from end of file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1036 -C -
+</command>
+<file name="log/curl1036.out">
+This is the start!!
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 1036

+REST 20

+RETR 1036

+QUIT

+</protocol>
+<file name="log/curl1036.out">
+This is the start!!
+expected to be a file without the first part
+but we emulate that
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1037 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1037
new file mode 100644
index 0000000..d9cdc0a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1037
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+expected to be a file without the first part
+but we emulate that
+</data>
+<size>
+65
+</size>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download resume from end of empty file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1037 -C -
+</command>
+<file name="log/curl1037.out">
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 1037

+RETR 1037

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1038 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1038
new file mode 100644
index 0000000..9572d78
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1038
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+APPE
+Resume
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+17
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PASV upload resume from end of file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1038 -T log/upload1038 -C -
+</command>
+<file name="log/upload1038">
+this is the *****cr@p******** that we're gonna upload
+
+worx?
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 1038

+APPE 1038

+QUIT

+</protocol>
+<upload>
+cr@p******** that we're gonna upload
+
+worx?
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1039 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1039
new file mode 100644
index 0000000..654d836
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1039
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+APPE
+Resume
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+0
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PASV upload resume from end of empty file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1039 -T log/upload1039 -C -
+</command>
+<file name="log/upload1039">
+this is the *****cr@p******** that we're gonna upload
+
+worx?
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 1039

+STOR 1039

+QUIT

+</protocol>
+<upload>
+this is the *****cr@p******** that we're gonna upload
+
+worx?
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test104 b/ap/lib/libcurl/curl-7.54.1/tests/data/test104
new file mode 100644
index 0000000..82df98a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test104
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+FTP
+NOBODY
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+51
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP --head to get file size only
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/104 --head
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+MDTM 104

+TYPE I

+SIZE 104

+REST 0

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1040 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1040
new file mode 100644
index 0000000..e21ed81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1040
@@ -0,0 +1,79 @@
+<testcase>
+# Similar to test92
+<info>
+<keywords>
+HTTP
+HTTP GET
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 416 Invalid range

+Connection: close

+Content-Length: 0

+

+</data>
+
+# The file data that exists at the start of the test must be included in
+# the verification.
+<datacheck>
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+HTTP/1.1 416 Invalid range

+Connection: close

+Content-Length: 0

+

+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with resume from end of entirely-downloaded file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1040 -C -
+</command>
+<file name="log/curl1040.out">
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1040 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=100-

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1041 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1041
new file mode 100644
index 0000000..c77d616
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1041
@@ -0,0 +1,78 @@
+<testcase>
+# Similar to test33
+<info>
+<keywords>
+HTTP
+HTTP PUT
+Resume
+Content-Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Accept-Ranges: bytes

+Content-Length: 0

+Connection: close

+Content-Type: text/html

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with resume from end of already-uploaded file
+ </name>
+<file name="log/test1041.txt">
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</file>
+ <command>
+http://%HOSTIP:%HTTPPORT/1041 -Tlog/test1041.txt -C -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+# curl doesn't do a HEAD request on the remote file so it has no idea whether
+# it can skip part of the file or not.  Instead, it sends the entire file.
+<protocol>
+PUT /1041 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Content-Range: bytes 0-99/100

+Accept: */*

+Content-Length: 100

+Expect: 100-continue

+

+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1042 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1042
new file mode 100644
index 0000000..dfebaa1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1042
@@ -0,0 +1,94 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Resume
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# Some servers (e.g. Apache 1.2) respond this way to an invalid byte range
+<data>
+HTTP/1.1 200 OK

+Connection: close

+Content-Length: 100

+Content-Type: text/plain

+

+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</data>
+
+# The file data that exists at the start of the test must be included in
+# the verification.
+<datacheck>
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+HTTP/1.1 200 OK

+Connection: close

+Content-Length: 100

+Content-Type: text/plain

+

+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET beyond end of entirely-downloaded file, no server resume
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1042 -C 200
+</command>
+<file name="log/curl1042.out">
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+33
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1042 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=200-

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1043 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1043
new file mode 100644
index 0000000..4ab4987
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1043
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 206 Partial Content

+Date: Mon, 13 Nov 2007 13:41:09 GMT

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

+Accept-Ranges: bytes

+Content-Length: 60

+Content-Range: bytes 40-99/100

+

+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</data>
+
+# The file data that exists at the start of the test must be included in
+# the verification.
+<datacheck>
+012345678
+012345678
+012345678
+012345678
+HTTP/1.1 206 Partial Content

+Date: Mon, 13 Nov 2007 13:41:09 GMT

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

+Accept-Ranges: bytes

+Content-Length: 60

+Content-Range: bytes 40-99/100

+

+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with resume from end of file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1043 -C -
+</command>
+<file name="log/curl1043.out">
+012345678
+012345678
+012345678
+012345678
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1043 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=40-

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1044 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1044
new file mode 100644
index 0000000..a95f568
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1044
@@ -0,0 +1,58 @@
+<testcase>
+# Similar to test141
+<info>
+<keywords>
+FTP
+NOBODY
+Largefile
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<size>
+9999999999
+</size>
+<mdtm>
+213 20080726102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<features>
+large_file
+</features>
+<server>
+ftp
+</server>
+ <name>
+FTP download large file info with -I
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/1044 -I
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+MDTM 1044

+TYPE I

+SIZE 1044

+REST 0

+QUIT

+</protocol>
+<stdout>
+Last-Modified: Sat, 26 Jul 2008 10:26:59 GMT

+Content-Length: 9999999999

+Accept-ranges: bytes

+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1045 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1045
new file mode 100644
index 0000000..fa8ad4b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1045
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--interface
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Date: Mon, 28 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/plain

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with numeric localhost --interface
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1045 --interface %CLIENTIP
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1045 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1046 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1046
new file mode 100644
index 0000000..bc4e5c2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1046
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--interface
+IPv6
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Date: Mon, 28 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/plain

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP-IPv6 GET with numeric localhost --interface
+ </name>
+ <command>
+-g "http://%HOST6IP:%HTTP6PORT/1046" --interface ::1
+</command>
+# --interface doesn't accept an address surrounded by [] so %CLIENT6IP is out
+<precheck>
+perl -e "print 'Test requires default test server host address' if ( '%CLIENT6IP' ne '[::1]' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1046 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1047 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1047
new file mode 100644
index 0000000..028a8a6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1047
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+--interface
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list PASV with localhost --interface
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/ --interface %CLIENTIP
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1048 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1048
new file mode 100644
index 0000000..f94ae58
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1048
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTP-ipv6
+IPv6
+PASV
+LIST
+--interface
+IPv6
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+ftp-ipv6
+</server>
+ <name>
+FTP-IPv6 dir list PASV with localhost --interface
+ </name>
+ <command>
+-g "ftp://%HOST6IP:%FTP6PORT/" --interface ::1
+</command>
+# --interface doesn't accept an address surrounded by [] so %CLIENT6IP is out
+<precheck>
+perl -e "print 'Test requires default test server host address' if ( '%CLIENT6IP' ne '[::1]' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1049 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1049
new file mode 100644
index 0000000..de18bee
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1049
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+--interface
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+a chunk of
+data
+returned
+ to client
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve with localhost --interface
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT//1049 --interface %CLIENTIP
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /1049
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test105 b/ap/lib/libcurl/curl-7.54.1/tests/data/test105
new file mode 100644
index 0000000..cc811ae
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test105
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+TYPE A
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY EPSV 500 no such command
+REPLY SIZE 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP user+password in URL and ASCII transfer
+ </name>
+ <command>
+ftp://userdude:passfellow@%HOSTIP:%FTPPORT/105 --use-ascii
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER userdude

+PASS passfellow

+PWD

+EPSV

+PASV

+TYPE A

+SIZE 105

+RETR 105

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1050 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1050
new file mode 100644
index 0000000..a0e5bea
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1050
@@ -0,0 +1,66 @@
+<testcase>
+# Similar to test 253
+<info>
+<keywords>
+FTP-ipv6
+IPv6
+EPRT
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+ftp-ipv6
+</server>
+ <name>
+FTP-IPv6 dir list, EPRT with specified IP
+ </name>
+ <command>
+-g "ftp://%HOST6IP:%FTP6PORT/" -P ::1
+</command>
+# --interface doesn't accept an address surrounded by [] so %CLIENT6IP is out
+<precheck>
+perl -e "print 'Test requires default test server host address' if ( '%CLIENT6IP' ne '[::1]' );"
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of EPRT that curl can send
+<strippart>
+s/^(EPRT \|2\|::1\|)(.*)/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |2|::1|
+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1051 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1051
new file mode 100644
index 0000000..080e1d1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1051
@@ -0,0 +1,118 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+followlocation
+</keywords>
+
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 Redirect swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Location: data/10510002.txt?coolsite=yes

+Content-Length: 0

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 100 Continue

+

+HTTP/1.1 200 Followed here fine swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 51

+

+If this is received, the location following worked
+</data2>
+<datacheck>
+HTTP/1.1 301 Redirect swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Location: data/10510002.txt?coolsite=yes

+Content-Length: 0

+Connection: close

+

+HTTP/1.1 100 Continue

+

+HTTP/1.1 200 Followed here fine swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 51

+

+If this is received, the location following worked
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with Location: following
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1051 -L -T log/test1051.txt
+</command>
+<file name="log/test1051.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+
+# The primary reason libcurl sends the data part twice in this test is that
+# the test HTTP server is blocking until it has read the entire request,
+# including the full request-body before it responds. So in this test the
+# server says 301 and 100 _after_ the entire PUT body has been sent.
+
+<protocol>
+PUT /want/1051 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+Expect: 100-continue

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+PUT /want/data/10510002.txt?coolsite=yes HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+Expect: 100-continue

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1052 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1052
new file mode 100644
index 0000000..10c16b4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1052
@@ -0,0 +1,111 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+followlocation
+</keywords>
+
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 301 Redirect swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Location: data/10520002.txt?coolsite=yes

+Content-Length: 0

+Connection: close

+

+</data>
+<data2>
+HTTP/1.0 200 Followed here fine swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 51

+

+If this is received, the location following worked
+</data2>
+<datacheck>
+HTTP/1.0 301 Redirect swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Location: data/10520002.txt?coolsite=yes

+Content-Length: 0

+Connection: close

+

+HTTP/1.0 200 Followed here fine swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 51

+

+If this is received, the location following worked
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 1.0 PUT with Location: following
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1052 -0 -L -T log/test1052.txt
+</command>
+<file name="log/test1052.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+
+# The primary reason libcurl sends the data part twice in this test is that
+# the test HTTP server is blocking until it has read the entire request,
+# including the full request-body before it responds. So in this test the
+# server says 301 and 200 _after_ the entire PUT body has been sent.
+<protocol>
+PUT /want/1052 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+PUT /want/data/10520002.txt?coolsite=yes HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1053 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1053
new file mode 100644
index 0000000..8c60e5c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1053
@@ -0,0 +1,129 @@
+<testcase>
+# Based on test 9
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP file upload
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 307 Redirect swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Location: data/10530002.txt?coolsite=yes

+Content-Length: 0

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 11

+Connection: close

+

+blablabla
+
+</data2>
+<datacheck>
+HTTP/1.1 307 Redirect swsclose

+Date: Thu, 29 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Location: data/10530002.txt?coolsite=yes

+Content-Length: 0

+Connection: close

+

+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 11

+Connection: close

+

+blablabla
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting from file with Location: following
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/test1053.txt
+</command>
+# We create this file before the command is invoked!
+<file name="log/test1053.txt">
+foo-
+This is a moo-
+bar
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/1053 HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 410

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763

+

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="file"; filename="test1053.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------9ef8d6205763--

+POST /we/want/data/10530002.txt?coolsite=yes HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 410

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763

+

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="file"; filename="test1053.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------9ef8d6205763--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1054 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1054
new file mode 100644
index 0000000..54d0232
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1054
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+followlocation
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsclose

+Location: moo/testcase/10540002

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 301 OK swsclose

+Location: moo/testcase/10540002

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST from file with 301 redirect and --post301
+ </name>
+<file name="log/test1054.txt">
+field=data
+</file>
+ <command>
+http://%HOSTIP:%HTTPPORT/blah/1054 -L -d @log/test1054.txt --post301
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /blah/1054 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 10

+Content-Type: application/x-www-form-urlencoded

+

+field=dataPOST /blah/moo/testcase/10540002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 10

+Content-Type: application/x-www-form-urlencoded

+

+field=data
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1055 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1055
new file mode 100644
index 0000000..510d490
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1055
@@ -0,0 +1,100 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+followlocation
+FTP
+EPSV
+STOR
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 307 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Location: ftp://127.0.0.1:8992/1055

+Content-Length: 0

+Connection: close

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+ftp
+</server>
+ <name>
+HTTP PUT Location: redirect to FTP URL
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1055 -L -T log/test1055.txt
+</command>
+# The data section doesn't do variable substitution, so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%FTPPORT' ne '8992' );"
+</precheck>
+<file name="log/test1055.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1055 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+Expect: 100-continue

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+STOR 1055

+QUIT

+</protocol>
+<upload>
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1056 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1056
new file mode 100644
index 0000000..52b0136
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1056
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+IPv6
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose

+Location: http://[::1%259999]:8994/moo/10560002

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose

+Location: http://[::1%259999]:8994/moo/10560002

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Date: Thu, 31 Jul 2008 14:49:00 GMT

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http
+http-ipv6
+</server>
+ <name>
+HTTP follow redirect from IPv4 to IPv6 with scope
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/1056 -L
+</command>
+# The data section doesn't do variable substitution, so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOST6IP' ne '[::1]' || '%HTTP6PORT' ne '8994' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/1056 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /moo/10560002 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1057 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1057
new file mode 100644
index 0000000..b4ef20c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1057
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+456789abcdef
+</data>
+<datacheck nonewline="yes">
+456789abcdef
+</datacheck>
+<size>
+64
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP retrieve a byte-range relative to end of file
+ </name>
+ <command>
+-r -12 ftp://%HOSTIP:%FTPPORT/1057
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 1057

+REST 52

+RETR 1057

+ABOR

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1058 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1058
new file mode 100644
index 0000000..4eb34da
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1058
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Content-Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 206 Partial Content

+Date: Thu, 31 Jul 2008 13:41:09 GMT

+Accept-Ranges: bytes

+Content-Length: 101

+Content-Range: bytes 100-200/201

+Connection: close

+Content-Type: text/html

+

+..partial data returned from the
+server as a result of setting an explicit byte range
+in the request
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP range relative to end of file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1058 -r -101
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1058 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=-101

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1059 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1059
new file mode 100644
index 0000000..6820ea6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1059
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP CONNECT
+proxytunnel
+FTP
+FAILURE
+</keywords>
+
+</info>
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 501 Method not implemented swsclose

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

+Connection: close

+Content-Length: 0

+

+</connect>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ftp
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP CONNECT with proxytunnel to unsupported FTP URL
+ </name>
+ <command>
+ftp://test-number:1059/wanted/page -p -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# The server doesn't implement CONNECT for ftp, so this must be a failure test
+<errorcode>
+56
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+CONNECT test-number:1059 HTTP/1.1

+Host: test-number:1059

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test106 b/ap/lib/libcurl/curl-7.54.1/tests/data/test106
new file mode 100644
index 0000000..56eca64
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test106
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+TYPE A
+RETR
+type=
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP GET with type=A style ASCII URL using %20 codes
+ </name>
+ <command>
+"ftp://%HOSTIP:%FTPPORT//path%20with%20%20spaces//and%20things2/106;type=A"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /

+CWD path with  spaces

+CWD and things2

+EPSV

+TYPE A

+SIZE 106

+RETR 106

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1060 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1060
new file mode 100644
index 0000000..14fc7e5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1060
@@ -0,0 +1,902 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+HTTP proxy Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<connect>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 40000

+X-tra-long-header: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+

+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+</connect>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<connect1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+</connect1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 40000

+X-tra-long-header: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+

+HTTP/1.1 200 OK swsbounce

+Server: no
+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP proxy CONNECT auth Digest, large headers and data
+ </name>
+ <command>
+http://test.remote.haxx.se.1060:8990/path/10600002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user silly:person --proxy-digest --proxytunnel
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.haxx.se.1060:8990 HTTP/1.1

+Host: test.remote.haxx.se.1060:8990

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.haxx.se.1060:8990 HTTP/1.1

+Host: test.remote.haxx.se.1060:8990

+Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.1060:8990", response="e1fbed39c26f4efe284adc0e576ff638"

+Proxy-Connection: Keep-Alive

+

+GET /path/10600002 HTTP/1.1

+Host: test.remote.haxx.se.1060:8990

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1061 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1061
new file mode 100644
index 0000000..c481d39
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1061
@@ -0,0 +1,907 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+chunked Transfer-Encoding
+proxytunnel
+HTTP proxy Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<connect>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Transfer-Encoding: chunked

+X-tra-long-header: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+

+9c40

+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+And you should ignore this data. aaaaaaaaaaaaaaaa
+end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+

+0

+

+</connect>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<connect1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+</connect1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Transfer-Encoding: chunked

+X-tra-long-header: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+

+HTTP/1.1 200 OK swsbounce

+Server: no
+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP proxy CONNECT auth Digest, large headers and chunked data
+ </name>
+ <command>
+http://test.remote.haxx.se.1061:8990/path/10610002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user silly:person --proxy-digest --proxytunnel
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.haxx.se.1061:8990 HTTP/1.1

+Host: test.remote.haxx.se.1061:8990

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.haxx.se.1061:8990 HTTP/1.1

+Host: test.remote.haxx.se.1061:8990

+Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.1061:8990", response="4e23449fa93224834299e7282a70472c"

+Proxy-Connection: Keep-Alive

+

+GET /path/10610002 HTTP/1.1

+Host: test.remote.haxx.se.1061:8990

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1062 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1062
new file mode 100644
index 0000000..d96686e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1062
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+huge response
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+mooo
+</data>
+# a long set of response strings to CWD to make sure the ftp parser deals
+# with it nicely
+<servercmd>
+REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-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
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with excessively long server command response lines, boundary condition
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/1062
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 1062

+RETR 1062

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1063 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1063
new file mode 100644
index 0000000..2979094
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1063
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FILE
+Range
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+large_file
+</features>
+ <name>
+Invalid large X- range on a file://
+ </name>
+# This range value is 2**32+7, which will be truncated to the valid value 7
+# if the large file support is not working correctly
+ <command>
+-r 4294967303- file://localhost/%PWD/log/test1063.txt 
+</command>
+<file name="log/test1063.txt">
+1234567890
+1234567890
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+36
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1064 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1064
new file mode 100644
index 0000000..dd05ddf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1064
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+</keywords>
+</info>
+
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 A OK

+Server: curl test

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

+Content-Length: 3

+

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

+Server: curl test

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

+Content-Length: 9

+

+still ok
+</data2>
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+ <name>
+HTTP PUT twice
+ </name>
+ <command>
+-H "Expect:" -T log/1064 http://%HOSTIP:%HTTPPORT/1064.upload1 -T log/1064 http://%HOSTIP:%HTTPPORT/10640002.upload2
+</command>
+<file name="log/1064">
+test
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1064.upload1 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 5

+

+test
+PUT /10640002.upload2 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 5

+

+test
+</protocol>
+<stdout>
+HTTP/1.1 200 A OK

+Server: curl test

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

+Content-Length: 3

+

+ok
+HTTP/1.1 200 A OK

+Server: curl test

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

+Content-Length: 9

+

+still ok
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1065 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1065
new file mode 100644
index 0000000..5688ff9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1065
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 A OK

+Server: curl test

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

+Content-Length: 3

+

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

+Server: curl test

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

+Content-Length: 9

+

+still ok
+</data2>
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+ <name>
+HTTP PUT with one file but two URLs
+ </name>
+ <command>
+-H "Expect:" -T log/1065 http://%HOSTIP:%HTTPPORT/1065.upload1 http://%HOSTIP:%HTTPPORT/10650002.url2
+</command>
+<file name="log/1065">
+test
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1065.upload1 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 5

+

+test
+GET /10650002.url2 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 200 A OK

+Server: curl test

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

+Content-Length: 3

+

+ok
+HTTP/1.1 200 A OK

+Server: curl test

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

+Content-Length: 9

+

+still ok
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1066 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1066
new file mode 100644
index 0000000..bacedef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1066
@@ -0,0 +1,82 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

+Server: thebest/1.0

+Content-Type: text/plain

+Content-Length: 6

+

+first
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK

+Server: thebest/1.0

+Content-Type: text/plain

+Content-Length: 7

+

+second
+</data1>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP --dump-header - with two URLs
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1066 http://%HOSTIP:%HTTPPORT/want/10660001 --dump-header -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1066 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/10660001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 200 OK

+HTTP/1.1 200 OK

+Server: thebest/1.0

+Server: thebest/1.0

+Content-Type: text/plain

+Content-Type: text/plain

+Content-Length: 6

+Content-Length: 6

+

+

+first
+HTTP/1.1 200 OK

+HTTP/1.1 200 OK

+Server: thebest/1.0

+Server: thebest/1.0

+Content-Type: text/plain

+Content-Type: text/plain

+Content-Length: 7

+Content-Length: 7

+

+

+second
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1067 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1067
new file mode 100644
index 0000000..9fc7a6f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1067
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/10670002.txt?coolsite=yes
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/10670002.txt?coolsite=yes
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with auto-referer
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1067 -L --referer "firstone.html;auto"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1067 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Referer: firstone.html

+

+GET /want/data/10670002.txt?coolsite=yes HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Referer: http://%HOSTIP:%HTTPPORT/want/1067

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1068 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1068
new file mode 100644
index 0000000..f9bfec9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1068
@@ -0,0 +1,58 @@
+<testcase>
+# Similar to test 60
+<info>
+<keywords>
+HTTP
+HTTP PUT
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose

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

+Server: test-server/fake

+

+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP PUT from stdin
+</name>
+ <command>
+http://%HOSTIP:%HTTPPORT/bzz/1068 -T -
+</command>
+<stdin>
+more than one byte
+</stdin>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /bzz/1068 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Expect: 100-continue

+

+13

+more than one byte
+

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1069 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1069
new file mode 100644
index 0000000..c47c357
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1069
@@ -0,0 +1,36 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP/1.0
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP 1.0 PUT from stdin with no content length
+</name>
+ <command>
+http://%HOSTIP:%HTTPPORT/bzz/1069 -T - -0
+</command>
+<stdin>
+this data can't be sent
+</stdin>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+25
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test107 b/ap/lib/libcurl/curl-7.54.1/tests/data/test107
new file mode 100644
index 0000000..25b6452
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test107
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+STOR
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PASV upload file
+ </name>
+<file name="log/test107.txt">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</file>
+ <command>
+ftp://%HOSTIP:%FTPPORT/107 -T log/test107.txt
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+STOR 107

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1070 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1070
new file mode 100644
index 0000000..d202a9c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1070
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 403 Go away and swsclose

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 55

+Connection: close

+

+you are not supposed to be allowed to send things here
+</data>
+<servercmd>
+skip: 2300
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with server closing connection before (all) data is received
+ </name>
+ <command>
+ -d @log/input1070 http://%HOSTIP:%HTTPPORT/1070
+</command>
+<file name="log/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
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /1070 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 2313

+Content-Type: application/x-www-form-urlencoded

+Expect: 100-continue

+

+This creates 
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1071 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1071
new file mode 100644
index 0000000..4352e61
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1071
@@ -0,0 +1,114 @@
+<testcase>
+# Authorization is used to force curl to realize that the server is
+# speaking HTTP 1.0. The request must be resent with the correct
+# authorization header, but using HTTP 1.0, not 1.1.
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Digest auth
+--anyauth
+HTTP/1.0
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 401 Authorization Required swsclose

+Server: testcurl

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

+Content-Type: text/plain

+Content-Length: 35

+Connection: close

+

+Try again on this HTTP 1.0 server!
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.0 200 OK swsclose

+Server: testcurl

+Content-Type: text/plain

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.0 401 Authorization Required swsclose

+Server: testcurl

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

+Content-Type: text/plain

+Content-Length: 35

+Connection: close

+

+HTTP/1.0 200 OK swsclose

+Server: testcurl

+Content-Type: text/plain

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+Downgraded HTTP PUT to HTTP 1.0 with authorization
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1071 -T log/put1071 -u testuser:testpass --anyauth
+</command>
+<file name="log/put1071">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1071 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+PUT /1071 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1071", response="df4cef6b52a30e65d472dd848d2055a1"

+Accept: */*

+Content-Length: 85

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1072 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1072
new file mode 100644
index 0000000..14b6d80
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1072
@@ -0,0 +1,78 @@
+<testcase>
+# Authorization is used to force curl to realize that the server is
+# speaking HTTP 1.0. The request is impossible to satisfy with HTTP 1.0
+# because chunked encoding is unavailable, so the request must fail.
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Digest auth
+--anyauth
+HTTP/1.0
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 401 Authorization Required swsclose

+Server: testcurl

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

+Content-Type: text/plain

+Content-Length: 0

+Connection: close

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+crypto
+</features>
+ <name>
+HTTP chunked PUT to HTTP 1.0 server with authorization
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1072 -T - -u testuser:testpass --anyauth
+</command>
+<stdin>
+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
+</stdin>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+25
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1072 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Expect: 100-continue

+

+7a

+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
+

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1073 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1073
new file mode 100644
index 0000000..481f909
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1073
@@ -0,0 +1,72 @@
+<testcase>
+# Redirection is used to force curl to realize that the server is
+# speaking HTTP 1.0. The request is impossible to satisfy with HTTP 1.0
+# because chunked encoding is unavailable, so the request must fail.
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP/1.0
+followlocation
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 301 Redirect swsclose

+Server: testcurl

+Content-Type: text/plain

+Location: /newlocation/10730002

+Content-Length: 0

+Connection: close

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP chunked PUT to HTTP 1.0 server with redirect
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1073 -T - -L
+</command>
+<stdin>
+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
+</stdin>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+25
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1073 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Expect: 100-continue

+

+7a

+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
+

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1074 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1074
new file mode 100644
index 0000000..3464b41
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1074
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP/1.0
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 OK

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

+Content-Length: 9

+Connection: Keep-Alive

+

+surprise
+</data>
+<data1>
+HTTP/1.0 200 OK swsclose

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

+Connection: close

+

+surprise2
+</data1>
+
+<postcmd>
+wait 1
+</postcmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP downgrade to HTTP/1.0 on second request
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1074 http://%HOSTIP:%HTTPPORT/wantmore/10740001
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.0 200 OK

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

+Content-Length: 9

+Connection: Keep-Alive

+

+surprise
+HTTP/1.0 200 OK swsclose

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

+Connection: close

+

+surprise2
+</stdout>
+
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1074 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /wantmore/10740001 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1075 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1075
new file mode 100644
index 0000000..4b30c59
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1075
@@ -0,0 +1,94 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Basic auth
+--anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# The test server provides no way to respond differently to a subsequent
+# Basic authenticated request (we really want to respond with 200 for
+# the second), so just respond with 401 for both and let curl deal with it.
+<data>
+HTTP/1.1 401 Authorization Required

+Server: testcurl

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts"

+Content-Type: text/plain

+Content-Length: 0

+

+</data>
+<datacheck>
+HTTP/1.1 401 Authorization Required

+Server: testcurl

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts"

+Content-Type: text/plain

+Content-Length: 0

+

+HTTP/1.1 401 Authorization Required

+Server: testcurl

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts"

+Content-Type: text/plain

+Content-Length: 0

+

+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with --anyauth authorization (picking Basic)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1075 -T log/put1075 -u testuser:testpass --anyauth
+</command>
+<file name="log/put1075">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1075 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+PUT /1075 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1076 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1076
new file mode 100644
index 0000000..ad079eb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1076
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose
+Location: moo.html&testcase=/10760002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose
+Location: moo.html&testcase=/10760002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with 302 redirect and --post302
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/blah/1076 -L -d "moo" --post302
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /blah/1076 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+mooPOST /blah/moo.html&testcase=/10760002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+moo
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1077 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1077
new file mode 100644
index 0000000..a3c9024
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1077
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP
+HTTP/1.0
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

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

+Server: test-server/fake

+Content-Type: text/plain

+Content-Length: 9

+Funny-head: yesyes

+Proxy-Connection: Keep-Alive

+

+contents
+</data>
+<data2>
+HTTP/1.0 200 OK

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

+Server: test-server/fake

+Content-Type: text/plain

+Content-Length: 9

+Funny-head: yesyes

+Proxy-Connection: Keep-Alive

+

+contents
+</data2>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+ <name>
+FTP over HTTP proxy with downgrade to HTTP 1.0
+ </name>
+ <command>
+-x %HOSTIP:%HTTPPORT ftp://%HOSTIP:%HTTPPORT/we/want/that/page/1077 ftp://%HOSTIP:%HTTPPORT/we/want/that/page/10770002
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/1077 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/10770002 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1078 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1078
new file mode 100644
index 0000000..a9bb771
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1078
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP/1.0
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+Server: test tunnel 2000

+

+</connect>
+
+<data nocheck="yes">
+HTTP/1.0 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+Connection: keep-alive

+

+contents
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP 1.0 CONNECT with proxytunnel and downgrade GET to HTTP/1.0
+ </name>
+ <command>
+--proxy1.0 %HOSTIP:%PROXYPORT -p http://%HOSTIP.1078:%HTTPPORT/we/want/that/page/1078 http://%HOSTIP.1078:%HTTPPORT/we/want/that/page/1078
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT %HOSTIP.1078:%HTTPPORT HTTP/1.0

+Host: %HOSTIP.1078:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

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

+Host: %HOSTIP.1078:%HTTPPORT

+Accept: */*

+

+GET /we/want/that/page/1078 HTTP/1.0

+Host: %HOSTIP.1078:%HTTPPORT

+Accept: */*

+

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

+Server: test tunnel 2000

+

+HTTP/1.0 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+Connection: keep-alive

+

+contents
+HTTP/1.0 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+Connection: keep-alive

+

+contents
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1079 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1079
new file mode 100644
index 0000000..ac7b899
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1079
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

+Content-Type: text/plain; charset=iso-8859-1

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+# Send nothing to force an error code 52 reply
+<data1000>
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

+Content-Type: text/plain; charset=iso-8859-1

+Content-Length: 26

+

+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP retry after closed connection and empty response
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1079 -u testuser:testpass --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+52
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1079 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1079 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1079", response="e340c7cdca0950462070f46ee139e9f7"

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test108 b/ap/lib/libcurl/curl-7.54.1/tests/data/test108
new file mode 100644
index 0000000..eb2ea63
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test108
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+STOR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT upload with CWD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/CWD/STOR/RETR/108 -T log/upload108 -P -
+</command>
+<file name="log/upload108">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD CWD

+CWD STOR

+CWD RETR

+PORT 127,0,0,1,5,109

+TYPE I

+STOR 108

+QUIT

+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1080 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1080
new file mode 100644
index 0000000..e0f7d62
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1080
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+redirect_url
+followlocation
+--write-out
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10800002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: on two URLs 'redirect_url' check
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/our/1080 http://%HOSTIP:%HTTPPORT/we/want/our/1080 -w '%{redirect_url}\n'
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/our/1080 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/want/our/1080 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10800002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+http://%HOSTIP:%HTTPPORT/we/want/our/data/10800002.txt?coolsite=yes
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10800002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+http://%HOSTIP:%HTTPPORT/we/want/our/data/10800002.txt?coolsite=yes
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1081 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1081
new file mode 100644
index 0000000..d9f895f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1081
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+redirect_url
+followlocation
+--write-out
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10810099.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+</data>
+<data2 nocheck="yes">
+HTTP/1.1 200 Followed here fine swsclose

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

+Server: test-server/fake

+Content-Length: 41

+

+This second URL does not have a location
+</data2>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP no Location: on second URL 'redirect_url' check
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/our/1081 http://%HOSTIP:%HTTPPORT/we/want/our/10810002 -w '%{redirect_url}\n'
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/our/1081 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/want/our/10810002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10810099.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+http://%HOSTIP:%HTTPPORT/we/want/our/data/10810099.txt?coolsite=yes
+HTTP/1.1 200 Followed here fine swsclose

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

+Server: test-server/fake

+Content-Length: 41

+

+This second URL does not have a location
+
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1082 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1082
new file mode 100644
index 0000000..d58dd25
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1082
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--interface
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Date: Mon, 28 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/plain

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with localhost --interface
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1082 --interface localhost
+</command>
+<precheck>
+perl -e "print 'Test requires default test server host address' if ( '%CLIENTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1082 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1083 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1083
new file mode 100644
index 0000000..e441278
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1083
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--interface
+IPv6
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Date: Mon, 28 Jul 2008 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/plain

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP-IPv6 GET with ip6-localhost --interface
+ </name>
+ <command>
+-g "http://%HOST6IP:%HTTP6PORT/1083" --interface ip6-localhost
+</command>
+<precheck>
+perl -e "if ('%CLIENT6IP' ne '[::1]') {print 'Test requires default test server host address';} else {exec './server/resolve --ipv6 ip6-localhost'; print 'Cannot run precheck resolve';}"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1083 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1084 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1084
new file mode 100644
index 0000000..1cfab68
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1084
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--interface
+FAILURE
+non-existing host
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+http
+</features>
+<server>
+none
+</server>
+ <name>
+HTTP GET with invalid --interface
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1084 --interface non-existing-host.haxx.se.
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+45
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1085 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1085
new file mode 100644
index 0000000..db02e60
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1085
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--interface
+IPv6
+FAILURE
+non-existing host
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+http
+ipv6
+</features>
+<server>
+none
+</server>
+ <name>
+HTTP-IPv6 GET with invalid --interface
+ </name>
+ <command>
+-g "http://%HOST6IP:%HTTP6PORT/1085" --interface non-existing-host.haxx.se.
+</command>
+# Ensure the IPv6 stack is operational before running this test (other tests
+# use the startup of the IPv6 test server as a substitute check for this).
+<precheck>
+./server/resolve --ipv6 ::1
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+45
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1086 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1086
new file mode 100644
index 0000000..354b2e0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1086
@@ -0,0 +1,110 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+timeout
+FAILURE
+flaky
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# Overload some standard FTP responses to make them shorter and faster
+# to avoid wasting time waiting for the data phase to start
+<servercmd>
+SLOWDOWN
+REPLY USER 331 OK
+REPLY PASS 230 OK
+REPLY PWD 257 "/"
+REPLY TYPE 200 OK
+</servercmd>
+<data nocheck="yes">
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<killserver>
+ftp
+</killserver>
+ <name>
+FTP download with strict timeout and slow data transfer
+ </name>
+ <command timeout="1">
+ftp://%HOSTIP:%FTPPORT/1086 -m 7
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 28 is CURLE_OPERATION_TIMEDOUT
+<errorcode>
+28
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 1086

+RETR 1086

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1087 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1087
new file mode 100644
index 0000000..d228976
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1087
@@ -0,0 +1,110 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+HTTP Basic auth
+HTTP proxy Basic auth
+followlocation
+--anyauth
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1000 nocheck="yes">
+HTTP/1.1 401 Authorization Required

+WWW-Authenticate: Basic

+Content-Type: text/plain

+Content-Length: 0

+

+</data1000>
+<data1001 nocheck="yes">
+HTTP/1.1 302 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Location: http://goto.second.host.now/10871002

+Content-Length: 0

+Connection: close

+

+</data1001>
+<data1002 nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Content-Length: 9

+

+contents
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required

+WWW-Authenticate: Basic

+Content-Type: text/plain

+Content-Length: 0

+

+HTTP/1.1 302 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Location: http://goto.second.host.now/10871002

+Content-Length: 0

+Connection: close

+

+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Content-Length: 9

+

+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, proxy with --anyauth and Location: to new host
+ </name>
+ <command>
+http://first.host.it.is/we/want/that/page/10871000 -x %HOSTIP:%HTTPPORT --user iam:myself --location --anyauth
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://first.host.it.is/we/want/that/page/10871000 HTTP/1.1

+Host: first.host.it.is

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://first.host.it.is/we/want/that/page/10871000 HTTP/1.1

+Host: first.host.it.is

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://goto.second.host.now/10871002 HTTP/1.1

+Host: goto.second.host.now

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1088 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1088
new file mode 100644
index 0000000..a807ce9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1088
@@ -0,0 +1,112 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+HTTP Basic auth
+HTTP proxy Basic auth
+followlocation
+--anyauth
+--location-trusted
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1000 nocheck="yes">
+HTTP/1.1 401 Authorization Required

+WWW-Authenticate: Basic

+Content-Type: text/plain

+Content-Length: 0

+

+</data1000>
+<data1001 nocheck="yes">
+HTTP/1.1 302 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Location: http://goto.second.host.now/10881002

+Content-Length: 0

+Connection: close

+

+</data1001>
+<data1003 nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Content-Length: 9

+

+contents
+</data1003>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required

+WWW-Authenticate: Basic

+Content-Type: text/plain

+Content-Length: 0

+

+HTTP/1.1 302 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Location: http://goto.second.host.now/10881002

+Content-Length: 0

+Connection: close

+

+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/plain

+Funny-head: yesyes

+Content-Length: 9

+

+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, proxy with --anyauth and Location: to new host using location-trusted
+ </name>
+ <command>
+http://first.host.it.is/we/want/that/page/10881000 -x %HOSTIP:%HTTPPORT --user iam:myself --location-trusted --anyauth
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://first.host.it.is/we/want/that/page/10881000 HTTP/1.1

+Host: first.host.it.is

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://first.host.it.is/we/want/that/page/10881000 HTTP/1.1

+Host: first.host.it.is

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://goto.second.host.now/10881002 HTTP/1.1

+Host: goto.second.host.now

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1089 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1089
new file mode 100644
index 0000000..d2a18a2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1089
@@ -0,0 +1,91 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+--write-out
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK swsbounce swsclose

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

+Content-Length: 8

+Connection: close

+Content-Type: text/plain

+Location: ./10890001

+

+monster
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK

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

+Content-Length: 15

+Connection: close

+Content-Type: text/plain; charset=us-ascii

+

+bigger monster
+</data1>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET --write-out with redirected fetch
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1089 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1089 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /10890001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 302 OK swsbounce swsclose

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

+Content-Length: 8

+Connection: close

+Content-Type: text/plain

+Location: ./10890001

+

+HTTP/1.1 200 OK

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

+Content-Length: 15

+Connection: close

+Content-Type: text/plain; charset=us-ascii

+

+bigger monster
+2
+1
+15
+http://%HOSTIP:%HTTPPORT/10890001
+text/plain; charset=us-ascii
+200
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test109 b/ap/lib/libcurl/curl-7.54.1/tests/data/test109
new file mode 100644
index 0000000..c027885
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test109
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+APPE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PASV upload append
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/109 -T log/upload109 --append
+</command>
+<file name="log/upload109">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+APPE 109

+QUIT

+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1090 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1090
new file mode 100644
index 0000000..3304f91
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1090
@@ -0,0 +1,98 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+chunked Transfer-Encoding
+--write-out
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK swsbounce swsclose

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

+Content-Length: 8

+Connection: close

+Content-Type: text/plain

+Location: ./10900001

+

+monster
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK

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

+Transfer-Encoding: chunked

+Connection: close

+Content-Type: text/plain; charset=us-ascii

+

+0007

+bigger 

+0008

+monster
+

+0

+

+</data1>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET --write-out with redirected fetch and chunked reply
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1090 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1090 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /10900001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 302 OK swsbounce swsclose

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

+Content-Length: 8

+Connection: close

+Content-Type: text/plain

+Location: ./10900001

+

+HTTP/1.1 200 OK

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

+Transfer-Encoding: chunked

+Connection: close

+Content-Type: text/plain; charset=us-ascii

+

+bigger monster
+2
+1
+15
+http://%HOSTIP:%HTTPPORT/10900001
+text/plain; charset=us-ascii
+200
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1091 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1091
new file mode 100644
index 0000000..f3ce860
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1091
@@ -0,0 +1,46 @@
+<testcase>
+# based on test 143
+<info>
+<keywords>
+FTP
+RETR
+type=
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP URL with type=i
+ </name>
+ <command>
+"ftp://%HOSTIP:%FTPPORT/%2ftmp/moo/1091;type=i" --use-ascii
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /tmp

+CWD moo

+EPSV

+TYPE I

+SIZE 1091

+RETR 1091

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1092 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1092
new file mode 100644
index 0000000..adef432
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1092
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP
+HTTP GET
+HTTP proxy
+type=
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+
+contents
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+ <name>
+FTP with type=i over HTTP proxy
+ </name>
+ <command>
+"ftp://%HOSTIP:%HTTPPORT/we/want/that/page/1092;type=i" --use-ascii -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/1092;type=i HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1093 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1093
new file mode 100644
index 0000000..da2d83c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1093
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+mode=
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+a chunk of
+data
+returned
+ to client
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve with mode=i
+ </name>
+ <command>
+"tftp://%HOSTIP:%TFTPPORT//1093;mode=i" --use-ascii
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /1093
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1094 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1094
new file mode 100644
index 0000000..c7b09ca
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1094
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+mode=
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+a chunk of
+data
+returned
+ to client
+</data>
+<datacheck>
+a chunk of

+data

+returned

+ to client

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve with mode=netascii
+ </name>
+ <command>
+"tftp://%HOSTIP:%TFTPPORT//1094;mode=netascii"
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: netascii
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /1094
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1095 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1095
new file mode 100644
index 0000000..6bfe54f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1095
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="test \"this\" realm!!", nonce="1053604145"

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="test \"this\" realm!!", nonce="1053604145"

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

+Content-Length: 26

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with Digest and realm with quoted quotes
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1095 -u testuser:testpass --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1095 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1095 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="test \"this\" realm!!", nonce="1053604145", uri="/1095", response="a1c7931ece9e8617bae2715045e4f49f"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1096 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1096
new file mode 100644
index 0000000..30748c1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1096
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY RETR 550 no such file!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+Two FTP downloads, with failed RETR but re-used control connection
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/dir/1096 ftp://%HOSTIP:%FTPPORT/dir/1096
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+78
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD dir

+EPSV

+TYPE I

+SIZE 1096

+RETR 1096

+EPSV

+SIZE 1096

+RETR 1096

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1097 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1097
new file mode 100644
index 0000000..7512a2e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1097
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP CONNECT
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 We are fine and cool

+Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2

+Content-Length: 27

+

+This is all fine and dandy
+</data>
+
+# This is the CONNECT response
+<connect1001>
+HTTP/1.1 200 We are fine and cool

+Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2

+

+</connect1001>
+
+<datacheck>
+HTTP/1.1 200 We are fine and cool

+Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2

+

+HTTP/1.1 200 We are fine and cool

+Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2

+Content-Length: 27

+

+This is all fine and dandy
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+https
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+HTTP POST using CONNECT with --proxy-ntlm but no auth is required
+ </name>
+ <command>
+http://test.a.galaxy.far.far.away.1097:%HTTPPORT/1097 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-ntlm -d "dummy=value" -p
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.a.galaxy.far.far.away.1097:%HTTPPORT HTTP/1.1

+Host: test.a.galaxy.far.far.away.1097:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS OpenSSL/0.9.8g zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.12 libssh2/1.0.1_CVS

+Proxy-Connection: Keep-Alive

+

+POST /1097 HTTP/1.1

+User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS OpenSSL/0.9.8g zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.12 libssh2/1.0.1_CVS

+Host: test.a.galaxy.far.far.away.1097:%HTTPPORT

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1098 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1098
new file mode 100644
index 0000000..9805648
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1098
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP proxy
+CURLOPT_PROXY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Content-Length: 6

+

+hello
+</data>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+ftp
+</features>
+ <name>
+FTP RETR twice over proxy confirming persistent connection
+ </name>
+
+ <command>
+ftp://ftp-site/moo/1098 ftp://ftp-site/moo/1098 --proxy http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://ftp-site/moo/1098 HTTP/1.1

+Host: ftp-site:21

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET ftp://ftp-site/moo/1098 HTTP/1.1

+Host: ftp-site:21

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<stdout>
+HTTP/1.1 200 OK

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

+Content-Length: 6

+

+hello
+HTTP/1.1 200 OK

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

+Content-Length: 6

+

+hello
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1099 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1099
new file mode 100644
index 0000000..4a33189
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1099
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+FAILURE
+</keywords>
+</info>
+
+<reply>
+<data nocheck="yes">
+data for 1099
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP get first a non-existing file then an existing
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT/an/invalid-file tftp://%HOSTIP:%TFTPPORT//1099
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: an/invalid-file
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /1099
+</protocol>
+<stdout>
+data for 1099
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test11 b/ap/lib/libcurl/curl-7.54.1/tests/data/test11
new file mode 100644
index 0000000..9d93f80
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test11
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/110002.txt?coolsite=yes
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/110002.txt?coolsite=yes
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+simple HTTP Location: following
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/11 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/11 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data/110002.txt?coolsite=yes HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test110 b/ap/lib/libcurl/curl-7.54.1/tests/data/test110
new file mode 100644
index 0000000..b63ba8a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test110
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+Resume
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+expected to be a file without the first part
+but we emulate that
+</data>
+<size>
+85
+</size>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download resume with set limit
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/110 -C 20
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 110

+REST 20

+RETR 110

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1100 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1100
new file mode 100644
index 0000000..2e8d761
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1100
@@ -0,0 +1,118 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 200 Thanks for this! swsclose

+Content-Length: 25

+

+This is the final page !
+</data>
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 302 Thanks for this, but we want to redir you!

+Server: Microsoft-IIS/5.0

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

+Location: /1100

+Content-Length: 34

+

+This is not the real page either!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 302 Thanks for this, but we want to redir you!

+Server: Microsoft-IIS/5.0

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

+Location: /1100

+Content-Length: 34

+

+HTTP/1.1 200 Thanks for this! swsclose

+Content-Length: 25

+

+This is the final page !
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP POST with NTLM authorization and following a 302 redirect
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/1100 -u testuser:testpass --ntlm -L -d "stuff to send away" 
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /1100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /1100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Content-Length: 18

+Content-Type: application/x-www-form-urlencoded

+

+stuff to send awayGET /1100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS GnuTLS/2.6.6 zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.14 libssh2/1.1

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1101 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1101
new file mode 100644
index 0000000..75c6619
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1101
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+NO_PROXY
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 4

+Content-Type: text/html

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+NO_PROXY test, with user name in URL
+ </name>
+
+<setenv>
+no_proxy=%HOSTIP
+http_proxy=http://non-existing-host.haxx.se:3128/
+</setenv>
+ <command>
+http://user:secret@%HOSTIP:%HTTPPORT/gimme/1101
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /gimme/1101 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpzZWNyZXQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1102 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1102
new file mode 100644
index 0000000..addc7b5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1102
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+FTP
+SYST
+SITE
+OS400
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+blabla
+</data>
+<servercmd>
+REPLY PWD 257 "QGPL" is the current library
+REPLY SYST 215  OS/400 runs this server
+REPLY SITE 250 Name format set to 1
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP OS/400 server name format check
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1102
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+SYST

+SITE NAMEFMT 1

+PWD

+EPSV

+TYPE I

+SIZE 1102

+RETR 1102

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1103 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1103
new file mode 100644
index 0000000..4d45056
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1103
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+SYST
+SITE
+OS400
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+blabla
+</data>
+<servercmd>
+REPLY PWD 257 "C:/somedir" is the current directory
+REPLY SYST 215  unknown-OS runs this server
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP non-OS/400 server
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1103
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+SYST

+EPSV

+TYPE I

+SIZE 1103

+RETR 1103

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1104 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1104
new file mode 100644
index 0000000..102d522
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1104
@@ -0,0 +1,85 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 Moved
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Location: /want/data/11040002
+Server: test-server/fake
+Set-Cookie: test=true; domain=127.0.0.1; path=/; expires=Thu Jan  1 00:00:00 GMT 1970;
+Set-Cookie: test2=true; domain=127.0.0.1; path=/; expires=Fri Feb 2 11:56:27 GMT 2035;
+Connection: close
+
+This server reply is for testing a set-cookie
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 Moved
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Location: /want/data/11040002
+Server: test-server/fake
+Set-Cookie: test=true; domain=127.0.0.1; path=/; expires=Thu Jan  1 00:00:00 GMT 1970;
+Set-Cookie: test2=true; domain=127.0.0.1; path=/; expires=Fri Feb 2 11:56:27 GMT 2035;
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP cookie expiry date at Jan 1 00:00:00 GMT 1970
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1104 -L -x %HOSTIP:%HTTPPORT -c log/cookies1104.jar
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/want/1104 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://%HOSTIP:%HTTPPORT/want/data/11040002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+Cookie: test2=true

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1105 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1105
new file mode 100644
index 0000000..4b5e0c8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1105
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+cookies
+cookiejar
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes swsclose
+Set-Cookie: foobar=name;
+Set-Cookie: mismatch=this; domain=127.0.0.1; path="/silly/";
+Set-Cookie: partmatch=present; domain=.0.0.1; path=/;
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with cookie parser and header recording
+ </name>
+ <command>
+"http://%HOSTIP:%HTTPPORT/we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105" -c log/cookie1105.txt -d "userid=myname&password=mypassword"
+</command>
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 33

+Content-Type: application/x-www-form-urlencoded

+

+userid=myname&password=mypassword
+</protocol>
+<file name="log/cookie1105.txt" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.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	foobar	name
+127.0.0.1	FALSE	"/silly/"	FALSE	0	mismatch	this
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1106 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1106
new file mode 100644
index 0000000..0c6bec1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1106
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+CURLOPT_PORT
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<features>
+ftp
+</features>
+<server>
+http
+</server>
+ <name>
+FTP URL and with ftp_proxy environment variable set
+ </name>
+
+<setenv>
+ftp_proxy=http://%HOSTIP:%HTTPPORT/
+</setenv>
+ <command>
+ftp://%HOSTIP:23456/1106
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://%HOSTIP:23456/1106 HTTP/1.1

+Host: %HOSTIP:23456

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1107 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1107
new file mode 100644
index 0000000..6adc636
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1107
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+PRET
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY PRET 200 fine
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR PASV with PRET
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1107 --ftp-pret
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PRET RETR 1107

+EPSV

+TYPE I

+SIZE 1107

+RETR 1107

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1108 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1108
new file mode 100644
index 0000000..7b779e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1108
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+PRET
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<servercmd>
+REPLY PRET 550 unkown command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR PASV with PRET not supported
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1108 --ftp-pret
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PRET RETR 1108

+</protocol>
+# we expect that the server doesn't understand PRET
+<errorcode>
+84
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1109 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1109
new file mode 100644
index 0000000..b68b5a2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1109
@@ -0,0 +1,46 @@
+<testcase>
+# Test that the fragment is not send as part of the path.
+<info>
+<keywords>
+HTTP
+CURLOPT_URL
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+
+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with URL that contains fragment after the path
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1109#test
+</command>
+</client>
+
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1109 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test111 b/ap/lib/libcurl/curl-7.54.1/tests/data/test111
new file mode 100644
index 0000000..bcaa554
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test111
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+Resume
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+85
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download resume beyond file size
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/111 -C 2000
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+36
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 111

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1110 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1110
new file mode 100644
index 0000000..94cfe91
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1110
@@ -0,0 +1,47 @@
+<testcase>
+# Test that the fragment is not send as part of the path
+# when it contains a query.
+<info>
+<keywords>
+HTTP
+CURLOPT_URL
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+
+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with URL that contains a fragment after the query part
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1110?q=foobar#fragment
+</command>
+</client>
+
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1110?q=foobar HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1111 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1111
new file mode 100644
index 0000000..d9db12c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1111
@@ -0,0 +1,47 @@
+<testcase>
+# Test that no fragment is not send as part of the path
+# when the URI contains 2 '#' (does not follow RFC 2396)
+<info>
+<keywords>
+HTTP
+CURLOPT_URL
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+
+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with URL whose fragment contains a # (which is illegal)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1111?q=foobar#fragment#fragment2
+</command>
+</client>
+
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1111?q=foobar HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1112 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1112
new file mode 100644
index 0000000..849f671
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1112
@@ -0,0 +1,114 @@
+<testcase>
+<info>
+<keywords>
+FTPS
+EPSV
+RETR
+timeout
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# Overload some standard FTP responses to make them shorter and faster
+# to avoid wasting time waiting for the data phase to start
+<servercmd>
+SLOWDOWN
+REPLY USER 331 OK
+REPLY PASS 230 OK
+REPLY PWD 257 "/"
+REPLY TYPE 200 OK
+</servercmd>
+<data nocheck="yes">
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+Long chunk of data that couldn't possibly be sent in the time allotted.
+</data>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+<killserver>
+ftps
+</killserver>
+ <name>
+FTPS download with strict timeout and slow data transfer
+ </name>
+ <command timeout="1">
+-k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/1112 -m 16
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 28 is CURLE_OPERATION_TIMEDOUT
+<errorcode>
+28
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+EPSV

+TYPE I

+SIZE 1112

+RETR 1112

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1113 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1113
new file mode 100644
index 0000000..8d10975
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1113
@@ -0,0 +1,99 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+LIST
+wildcardmatch
+ftplistparser
+flaky
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib574
+</tool>
+<name>
+FTP wildcard download - changed fnmatch, 2x perform (DOS LIST response)
+</name>
+<command>
+"ftp://%HOSTIP:%FTPPORT/fully_simulated/DOS/*.txt"
+</command>
+</client>
+
+############################################
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+# THERE SHOULD NOT BE "SIZE"! and one "USER/PASS"
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD fully_simulated

+CWD DOS

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+CWD /

+CWD fully_simulated

+CWD DOS

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+QUIT

+</protocol>
+<stdout>
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1114 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1114
new file mode 100644
index 0000000..573eda4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1114
@@ -0,0 +1,136 @@
+<testcase>
+<info>
+<keywords>
+FTP
+wildcardmatch
+ftplistparser
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib576
+</tool>
+ <name>
+FTP wildcard download - skip/parser_correctness/CURLOPT_FNMATCH_FUNCTION (DOS)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/fully_simulated/DOS/*
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+<stdout>
+=============================================================
+Remains:      12
+Filename:     .
+Size:         0B
+Time:         04-27-10  05:12AM
+Filetype:     directory
+=============================================================
+Remains:      11
+Filename:     ..
+Size:         0B
+Time:         04-23-10  03:12AM
+Filetype:     directory
+=============================================================
+Remains:      10
+Filename:     chmod1
+Size:         38B
+Time:         01-11-10  10:00AM
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This file should have permissions 444
+-------------------------------------------------------------
+=============================================================
+Remains:      9
+Filename:     chmod2
+Size:         38B
+Time:         02-01-10  08:00AM
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This file should have permissions 666
+-------------------------------------------------------------
+=============================================================
+Remains:      8
+Filename:     chmod3
+Size:         38B
+Time:         02-01-10  08:00AM
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This file should have permissions 777
+-------------------------------------------------------------
+=============================================================
+Remains:      7
+Filename:     chmod4
+Size:         0B
+Time:         05-04-10  04:31AM
+Filetype:     directory
+=============================================================
+Remains:      6
+Filename:     chmod5
+Size:         0B
+Time:         05-04-10  04:31AM
+Filetype:     directory
+=============================================================
+Remains:      5
+Filename:     empty_file.dat
+Size:         0B
+Time:         04-27-10  11:01AM
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+-------------------------------------------------------------
+=============================================================
+Remains:      4
+Filename:     file.txt
+Size:         35B
+Time:         04-27-10  11:01AM
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This is content of file "file.txt"
+-------------------------------------------------------------
+=============================================================
+Remains:      3
+Filename:     .NeXT
+Size:         0B
+Time:         01-23-05  02:05AM
+Filetype:     directory
+=============================================================
+Remains:      2
+Filename:     someothertext.txt
+Size:         47B
+Time:         04-27-10  11:01AM
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+# THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #
+-------------------------------------------------------------
+=============================================================
+Remains:      1
+Filename:     weirddir.txt
+Size:         0B
+Time:         04-23-10  03:12AM
+Filetype:     directory
+=============================================================
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1115 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1115
new file mode 100644
index 0000000..f9d6e36
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1115
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP 1xx response code
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 104 Experiment

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 200 OK swsbounce

+Server: Microsoft-IIS/6.0

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

+Content-Length: 0

+

+</data>
+
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+ <name>
+HTTP GET with unexpected 1xx response
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1115
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1115 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1116 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1116
new file mode 100644
index 0000000..a9af3e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1116
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Connection: mooo

+

+40

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+30

+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

+21;heresatest=moooo

+cccccccccccccccccccccccccccccccc
+

+0

+chunky-trailer: header data

+another-header: yes

+

+</data>
+<datacheck>
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Connection: mooo

+

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with chunked trailer without Trailer:
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1116 -D log/heads1116
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1116 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/heads1116">
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Connection: mooo

+

+chunky-trailer: header data

+another-header: yes

+</file>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1117 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1117
new file mode 100644
index 0000000..963f1ef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1117
@@ -0,0 +1,87 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 416 Requested Range Not Satisfiable

+Date: Thu, 09 Sep 2010 14:49:00 GMT

+Accept-Ranges: bytes

+Content-Length: 115

+

+This is a long error message that is large enough that the test server is
+guaranteed to split it into two packets.
+</data>
+
+<data1>
+HTTP/1.1 206 Partial Content

+Date: Thu, 09 Sep 2010 14:49:01 GMT

+Accept-Ranges: bytes

+Content-Range: bytes 10-18/155

+Content-Length: 13

+Content-Type: text/plain

+

+partial body
+</data1>
+
+<servercmd>
+writedelay: 1
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with invalid range then another URL
+ </name>
+ <command>
+-r 10-22 http://%HOSTIP:%HTTPPORT/want/1117 http://%HOSTIP:%HTTPPORT/wantmore/11170001
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 416 Requested Range Not Satisfiable

+Date: Thu, 09 Sep 2010 14:49:00 GMT

+Accept-Ranges: bytes

+Content-Length: 115

+

+This is a long error message that is large enough that the test server is
+guaranteed to split it into two packets.
+HTTP/1.1 206 Partial Content

+Date: Thu, 09 Sep 2010 14:49:01 GMT

+Accept-Ranges: bytes

+Content-Range: bytes 10-18/155

+Content-Length: 13

+Content-Type: text/plain

+

+partial body
+</stdout>
+
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1117 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=10-22

+Accept: */*

+

+GET /wantmore/11170001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=10-22

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1118 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1118
new file mode 100644
index 0000000..bc776af
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1118
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+URL without slash and @-letter in query
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT?email=name@example.com/1118
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /?email=name@example.com/1118 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1119 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1119
new file mode 100644
index 0000000..017f598
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1119
@@ -0,0 +1,25 @@
+<testcase>
+<info>
+<keywords>
+source analysis
+symbols-in-versions
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+ <name>
+Verify that symbols-in-versions and headers are in sync
+ </name>
+
+<command type="perl">
+%SRCDIR/symbol-scan.pl %SRCDIR/.. ../include/curl
+</command>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test112 b/ap/lib/libcurl/curl-7.54.1/tests/data/test112
new file mode 100644
index 0000000..eb3400c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test112
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+APPE
+Resume
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PASV upload resume
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/112 -T log/upload112 -C 40
+</command>
+<file name="log/upload112">
+this is the *****crap******** that we're gonna upload
+
+worx?
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+APPE 112

+QUIT

+</protocol>
+<upload>
+ gonna upload
+
+worx?
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1120 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1120
new file mode 100644
index 0000000..4ea2042
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1120
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+421
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY CWD 421 Timeout!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with 421 timeout response
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/1120
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+</protocol>
+# CURLE_OPERATION_TIMEDOUT is 28
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1121 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1121
new file mode 100644
index 0000000..405066f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1121
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 6

+

+blaha
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP multiple provided Host: headers
+ </name>
+ <command>
+-H "Host: host1" -H "Host: host2" -H "Host: host3" http://%HOSTIP:%HTTPPORT/1121
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1121 HTTP/1.1

+Host: host1

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1122 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1122
new file mode 100644
index 0000000..78d50d7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1122
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5ndGg6IDQ0DQoN
+Ch+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Transfer-Encoding: gzip

+Content-Length: 44

+

+line 1
+ line 2
+  line 3
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET gzip transfer-encoded content
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1122 --tr-encoding
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1122 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Connection: TE

+TE: gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1123 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1123
new file mode 100644
index 0000000..bd441a9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1123
@@ -0,0 +1,201 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZGVmbGF0ZQ0KQ29udGVudC1MZW5ndGg6IDEz
+MDUNCg0KeJzcWNtu4zYQfTeQf2D91AK2brYTOXC0KHLZBM02wdoFuk8GLdE2G0kUSMq5PPTbO5Qo
+ibEcr3eDvgRIYnLmnMPhDEmTmXx6SmK0IVxQlp51XcvpIpKGLKLp6qx7M73r+/5o3He7n4LO5JeL
+u/PZt/tLlHH2DwllP6ZCAhBNv01nl19Qdy1ldmrbS07EOiFYWimR9gKHDySN7GXS1zzRd6yhFcmo
+C6JbWkEHocqm2k1vTqPAPXa9iW0YSkSEJZnjKCKAGI/9vuP3PRc5w1PHPfXGE9vwG4Q8Ux9R4DnO
+sO86fddHjnfqwc9AUyrEqzhSnJC5WDMugzDncR2OYW/jl3kcF3CE0wjFdNGmFhAdHhGhljpnSVJS
+UoIkY7UAx/wZLRlHYUxJKvuCRgT99fUWSY5TsYSKWjCLRshQ3hkMogLhcgSlWqlwVd8ljYk46uRC
+ddQY4jmV+MlCNxKJPMtAX6Dr2ey+V/yd9tAVtI86V0X74uZ81kOzy9s/L+Hz9uJ3gF3d3F72iuE/
+391fX36FNgzwSGKIqZTqZ0zInm7m0AoZe6BEFNooz2KGIxgCllqekKiZdQ9lWIhHxiPVhMjSPFkU
+9un09qgTEi7pkoZQVzD9QTj4mChDgWo8wQjFtCAbGXsknERHncVzlaQekmvyZsarslhHndkaqAjD
+74KmajMJSG2dapVgBpsOec5RJ8bpKscrIooYSLqhnKUJDCBAR5fQWBsbKnFM5fNchIyTYHTiD63R
+ycTesm+BM8JDkAwGlntsYCvzFhrm8wB7bWwgC5Ne1yzLY8ybsY5HY4hhCMt529MiVAO6A8t3XxFe
+h2I4ymCc0Su0EQ7HxbnhWyNnYuuO6ZmHLAddz6282vAKUw7iD2qMMYDIFyLkNJNwRIpgoE6H16YS
+BqVPw/Vc7eXggixxHsuJbRpLGNR/Xh1gGZQ92HloVielrdaLPbFbrEZszRLythAsYMpLFXV42iZD
+69YCjaZcvRwuB2CtpGiNyOLFO1wEwFpE0RqRF5odLgJgLaJojUi4hj1GYrY6XKqmaMFGopHlWXK4
+IIC1lKI1IhFZHC4CYC2iaI0IE0+HiwBYiyiaUS8RqfPyB2pWEqq6abqxzHMOaRMk0Ou36hqF2Ygf
+KMlGVMXYCENE3RwOV1FoLVMQG52Ecs744UolXmtpslnXhAVVraBZemIKhxyk4MvNzP4bncPpASmj
+eYJuS8fErhAar76n5JyTmNSZa5nn+v4WnFiuZ8EF6Q33G2x1rzo5dvxRi1hdsNocdS/afXHaBSzn
+Yu+azATOUQITXjM5l2v4qoactUwlEucSbjKiDqnsV93aoE9gnFISo6kkKXzDrya26WxRoEq76/7v
+Aq8ioopsIFt0zmIS3D2mhNe4wlRFapuhVr1qCasveE4TmmJpzk5yuCEUtYGC1p2W1/OO97kHe7n7
+nK7v7+W6e8eFpbE/6r1u93i4zz3eS/bHe73OXrc7+k7c3wlsf2SD1tjl/W67/LAmMngywUMMrqO1
+Tm18RvI5I2ddTkJ4HSibeknVi7LBmRvZUUPtcuwk6nsLuE+Gqhg7XTuZxuOsRd1+uL3FlVSqDQV2
+uLOjX/Vt6redWiW23mkN4u28seLehuP/L2nOT2dsOHhnxtT76uMnyvUGI/cdmXqBp9jHz9LAc4Yn
+78jSNaFJhOOPn6jhcDTw3pGosA9PffEzeTIs+qyv/ysUdP4DAAD//4IzEaNjAAAAAP//AwDdOI7R
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Transfer-Encoding: deflate

+Content-Length: 1305

+

+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE project-listing SYSTEM "http://freshmeat.net/backend/fm-projects-0.4.dtd">
+<project-listing>
+  <project>
+    <project_id>1612</project_id>
+    <date_added>1998-08-21 04:01:29</date_added>
+    <date_updated>2004-10-18 02:22:23</date_updated>
+    <projectname_short>curl</projectname_short>
+    <projectname_full>curl and libcurl</projectname_full>
+    <desc_short>Command line tool and library for client-side URL transfers.</desc_short>
+    <desc_full>curl and libcurl is a tool for transferring files

+using URL syntax. It supports HTTP, HTTPS, FTP,

+FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as

+well as HTTP-post, HTTP-put, cookies, FTP upload,

+resumed transfers, passwords, portnumbers, SSL

+certificates, Kerberos, and proxies. It is powered

+by libcurl, the client-side URL transfer library.

+There are bindings to libcurl for over 20

+languages and environments.

+</desc_full>
+    <vitality_score>5784.57</vitality_score>
+    <vitality_percent>3.16</vitality_percent>
+    <vitality_rank>169</vitality_rank>
+    <popularity_score>6594.54</popularity_score>
+    <popularity_percent>13.81</popularity_percent>
+    <popularity_rank>105</popularity_rank>
+    <rating>8.50</rating>
+    <rating_count>21</rating_count>
+    <rating_rank>183</rating_rank>
+    <subscriptions>323</subscriptions>
+    <branch_name>Default</branch_name>
+    <url_project_page>http://freshmeat.net/projects/curl/</url_project_page>
+    <url_homepage>http://freshmeat.net/redir/curl/1612/url_homepage/</url_homepage>
+    <url_tgz>http://freshmeat.net/redir/curl/1612/url_tgz/</url_tgz>
+    <url_bz2>http://freshmeat.net/redir/curl/1612/url_bz2/</url_bz2>
+    <url_zip>http://freshmeat.net/redir/curl/1612/url_zip/</url_zip>
+    <url_changelog>http://freshmeat.net/redir/curl/1612/url_changelog/</url_changelog>
+    <url_rpm>http://freshmeat.net/redir/curl/1612/url_rpm/</url_rpm>
+    <url_deb>http://freshmeat.net/redir/curl/1612/url_deb/</url_deb>
+    <url_osx>http://freshmeat.net/redir/curl/1612/url_osx/</url_osx>
+    <url_bsdport>http://freshmeat.net/redir/curl/1612/url_bsdport/</url_bsdport>
+    <url_purchase></url_purchase>
+    <url_cvs>http://freshmeat.net/redir/curl/1612/url_cvs/</url_cvs>
+    <url_list>http://freshmeat.net/redir/curl/1612/url_list/</url_list>
+    <url_mirror>http://freshmeat.net/redir/curl/1612/url_mirror/</url_mirror>
+    <url_demo></url_demo>
+    <license>MIT/X Consortium License</license>
+    <latest_release>
+      <latest_release_version>7.12.2</latest_release_version>
+      <latest_release_id>176085</latest_release_id>
+      <latest_release_date>2004-10-18 02:22:23</latest_release_date>
+    </latest_release>
+    <screenshot_thumb></screenshot_thumb>
+    <authors>
+      <author>
+        <author_name>Daniel Stenberg</author_name>
+        <author_url>http://freshmeat.net/~bagder/</author_url>
+        <author_role>Owner</author_role>
+      </author>
+    </authors>
+    <descriminators>
+      <trove_id>12</trove_id>
+      <trove_id>226</trove_id>
+      <trove_id>3</trove_id>
+      <trove_id>2</trove_id>
+      <trove_id>188</trove_id>
+      <trove_id>216</trove_id>
+      <trove_id>200</trove_id>
+      <trove_id>220</trove_id>
+      <trove_id>164</trove_id>
+      <trove_id>90</trove_id>
+      <trove_id>89</trove_id>
+      <trove_id>809</trove_id>
+      <trove_id>150</trove_id>
+      <trove_id>224</trove_id>
+      <trove_id>900</trove_id>
+      <trove_id>839</trove_id>
+    </descriminators>
+    <dependencies>
+      <dependency type="recommended">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>7464</dependency_branch_id>
+        <dependency_project_id>7464</dependency_project_id>
+        <dependency_project_title>OpenSSL (Default)</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>7443</dependency_project_id>
+        <dependency_project_title>OpenLDAP</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>12351</dependency_project_id>
+        <dependency_project_title>zlib</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>32047</dependency_project_id>
+        <dependency_project_title>Heimdal</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>44532</dependency_project_id>
+        <dependency_project_title>c-ares</dependency_project_title>
+      </dependency>
+    </dependencies>
+  </project>
+</project-listing>
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET deflate transfer-encoded content
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1123 --tr-encoding
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1123 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Connection: TE

+TE: gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1124 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1124
new file mode 100644
index 0000000..58f63f9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1124
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+Transfer-Encoding
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDI0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBTb21ldGhpbmctVEUtZnJpZW5kbHkvMC4xDQpWYXJ5OiBBY2NlcHQtRW5jb2RpbmcNCkNv
+bnRlbnQtVHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTENClRyYW5zZmVyLUVuY29k
+aW5nOiBnemlwLCBjaHVua2VkDQoNCjE0DQofiwgIeZ6rQQADbGFsYWxhAMvJzA0KMTgNCktVMORS
+yAHRRlwKEIYxFwAKAnFgGAAAAA0KMA0KDQo=
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

+Date: Mon, 29 Nov 2024 21:56:53 GMT

+Server: Something-TE-friendly/0.1

+Vary: Accept-Encoding

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

+Transfer-Encoding: gzip, chunked

+

+line 1
+ line 2
+  line 3
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET gzip+chunked transfer-encoded content
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1124 --tr-encoding
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1124 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Connection: TE

+TE: gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1125 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1125
new file mode 100644
index 0000000..1883734
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1125
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5ndGg6IDQ0DQoN
+Ch+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Transfer-Encoding: gzip

+Content-Length: 44

+

+line 1
+ line 2
+  line 3
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET transfer-encoding with custom Connection:
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1125 --tr-encoding -H "Connection: close"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1125 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Connection: close, TE

+TE: gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1126 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1126
new file mode 100644
index 0000000..52f4db4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1126
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+If-Modified-Since
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2003 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+0123456789
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 200 If-Modified-Since with newer document
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1126 -z "dec 12 12:00:00 1999 GMT"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1126 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1127 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1127
new file mode 100644
index 0000000..3cc42c2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1127
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+If-Modified-Since
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1980 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+0123456789
+</data>
+<datacheck>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1980 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 200 If-Modified-Since with older document
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1127 -z "dec 12 12:00:00 1999 GMT"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1127 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1128 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1128
new file mode 100644
index 0000000..a20487b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1128
@@ -0,0 +1,85 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+If-Modified-Since
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1980 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+0123456789
+</data>
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:01 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2002 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+0123456789
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 200 If-Modified-Since with old+new documents
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1128 http://%HOSTIP:%HTTPPORT/11280001 -z "dec 12 12:00:00 1999 GMT"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1128 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+GET /11280001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+</protocol>
+
+<stdout>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1980 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:01 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2002 12:10:00 GMT
+Content-Length: 11
+Content-Type: text/html
+
+0123456789
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1129 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1129
new file mode 100644
index 0000000..f47141c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1129
@@ -0,0 +1,97 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+Expect: 100-continue
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 404 NOOOOOOOOO
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+</data>
+
+<data1>
+HTTP/1.1 404 NEITHER
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+</data1>
+
+# we use skip to make the test server never read the full payload off
+# the socket and instead return the response at once 
+<servercmd>
+skip: 1025
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+# 1025 x 'x'
+<file name="log/file1129">
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+</file>
+<server>
+http
+</server>
+ <name>
+HTTP POST expect 100-continue with a 404
+ </name>
+ <command option="no-output">
+-d @log/file1129 http://%HOSTIP:%HTTPPORT/1129 http://%HOSTIP:%HTTPPORT/11290001
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 404 NOOOOOOOOO
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+HTTP/1.1 404 NEITHER
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /1129 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 1025

+Content-Type: application/x-www-form-urlencoded

+Expect: 100-continue

+

+POST /11290001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 1025

+Content-Type: application/x-www-form-urlencoded

+Expect: 100-continue

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test113 b/ap/lib/libcurl/curl-7.54.1/tests/data/test113
new file mode 100644
index 0000000..0046297
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test113
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY USER 314 bluah you fewl!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed login: USER not valid
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/113
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<protocol>
+USER anonymous

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1130 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1130
new file mode 100644
index 0000000..eb1e59f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1130
@@ -0,0 +1,97 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+Expect: 100-continue
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 404 NOOOOOOOOO
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+</data>
+
+<data1>
+HTTP/1.1 404 NEITHER
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+</data1>
+
+# we use skip to make the test server never read the full payload off
+# the socket and instead return the response at once 
+<servercmd>
+skip: 100
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+# 100 x 'x'
+<file name="log/file1130">
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+</file>
+<server>
+http
+</server>
+ <name>
+HTTP POST forced expect 100-continue with a 404
+ </name>
+ <command option="no-output">
+-d @log/file1130 http://%HOSTIP:%HTTPPORT/1130 http://%HOSTIP:%HTTPPORT/11300001 -H "Expect: 100-continue"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 404 NOOOOOOOOO
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+HTTP/1.1 404 NEITHER
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Content-Type: text/html
+
+-foo-
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /1130 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Expect: 100-continue

+Content-Length: 100

+Content-Type: application/x-www-form-urlencoded

+

+POST /11300001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Expect: 100-continue

+Content-Length: 100

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1131 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1131
new file mode 100644
index 0000000..96843af
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1131
@@ -0,0 +1,95 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+Expect: 100-continue
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 400 NOOOOOOOOO
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 9
+Content-Type: text/html
+
+FAILURE1
+</data>
+
+<data1>
+HTTP/1.1 400 NEITHER
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 9
+Content-Type: text/html
+
+FAILURE2
+</data1>
+
+# we use skip to make the test server never read the full payload off
+# the socket and instead return the response at once 
+<servercmd>
+skip: 100
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+# 100 x 'x'
+<file name="log/file1131">
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+</file>
+<server>
+http
+</server>
+ <name>
+HTTP PUT expect 100-continue with a 400
+ </name>
+ <command option="no-output">
+-T log/file1131 http://%HOSTIP:%HTTPPORT/1131 -T log/file1131 http://%HOSTIP:%HTTPPORT/11310001
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 400 NOOOOOOOOO
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 9
+Content-Type: text/html
+
+FAILURE1
+HTTP/1.1 400 NEITHER
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 9
+Content-Type: text/html
+
+FAILURE2
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1131 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 100

+Expect: 100-continue

+

+PUT /11310001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 100

+Expect: 100-continue

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1132 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1132
new file mode 100644
index 0000000..8aa6432
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1132
@@ -0,0 +1,25 @@
+<testcase>
+<info>
+<keywords>
+source analysis
+memory-includes
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+ <name>
+Verify memory #include files in libcurl's C source files
+ </name>
+
+<command type="perl">
+%SRCDIR/mem-include-scan.pl %SRCDIR/../lib
+</command>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1133 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1133
new file mode 100644
index 0000000..8b016fc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1133
@@ -0,0 +1,95 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 10

+

+blablabla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting with filename contains ',', ';', '"'
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1133 -F "file=@\"log/test1133,a\\\"nd;.txt\";type=mo/foo;filename=\"faker,and;.txt\"" -F 'file2=@"log/test1133,a\"nd;.txt"' -F 'file3=@"log/test1133,a\"nd;.txt";type=m/f,"log/test1133,a\"nd;.txt"'
+</command>
+# We create this file before the command is invoked!
+<file name=log/test1133,a"nd;.txt>
+foo bar
+This is a bar foo
+bar
+foo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|Content-Type: multipart/mixed; boundary=|-------).*
+</strip>
+<protocol>
+POST /we/want/1133 HTTP/1.1

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 967

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32

+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file"; filename="faker,and;.txt"

+Content-Type: mo/foo

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file2"; filename="test1133,a\"nd;.txt"

+Content-Type: text/plain

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file3"

+Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b

+

+Content-Disposition: attachment; filename="test1133,a\"nd;.txt"

+Content-Type: m/f

+

+foo bar
+This is a bar foo
+bar
+foo
+

+Content-Disposition: attachment; filename="test1133,a\"nd;.txt"

+Content-Type: text/plain

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1134 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1134
new file mode 100644
index 0000000..e290b53
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1134
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP HEAD
+-G
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 10
+
+contents1
+</data>
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 10
+
+contents2
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP connection re-use with different credentials
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1134 -u user1:password1 --next http://%HOSTIP:%HTTPPORT/11340001 -u 2user:password2
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1134 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjE6cGFzc3dvcmQx

+Accept: */*

+

+GET /11340001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic MnVzZXI6cGFzc3dvcmQy

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1135 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1135
new file mode 100644
index 0000000..f7c6a7a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1135
@@ -0,0 +1,95 @@
+<testcase>
+<info>
+<keywords>
+source analysis
+CURL_EXTERN
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+# The VMS and OS/400 builds extract the CURL_EXTERN protos and use in
+# the build. We break binary compatibility by changing order. Only add
+# new entries last or bump the SONAME.
+# 
+ <name>
+Verify CURL_EXTERN order
+ </name>
+
+<command type="perl">
+%SRCDIR/extern-scan.pl %SRCDIR/..
+</command>
+</client>
+
+<verify>
+<stdout>
+CURL_EXTERN int (curl_strequal)(const char *s1, const char *s2);
+CURL_EXTERN int (curl_strnequal)(const char *s1, const char *s2, size_t n);
+CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost,
+CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg,
+CURL_EXTERN void curl_formfree(struct curl_httppost *form);
+CURL_EXTERN char *curl_getenv(const char *variable);
+CURL_EXTERN char *curl_version(void);
+CURL_EXTERN char *curl_easy_escape(CURL *handle,
+CURL_EXTERN char *curl_escape(const char *string,
+CURL_EXTERN char *curl_easy_unescape(CURL *handle,
+CURL_EXTERN char *curl_unescape(const char *string,
+CURL_EXTERN void curl_free(void *p);
+CURL_EXTERN CURLcode curl_global_init(long flags);
+CURL_EXTERN CURLcode curl_global_init_mem(long flags,
+CURL_EXTERN void curl_global_cleanup(void);
+CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *,
+CURL_EXTERN void curl_slist_free_all(struct curl_slist *);
+CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused);
+CURL_EXTERN CURLSH *curl_share_init(void);
+CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...);
+CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *);
+CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
+CURL_EXTERN const char *curl_easy_strerror(CURLcode);
+CURL_EXTERN const char *curl_share_strerror(CURLSHcode);
+CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
+CURL_EXTERN CURL *curl_easy_init(void);
+CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
+CURL_EXTERN CURLcode curl_easy_perform(CURL *curl);
+CURL_EXTERN void curl_easy_cleanup(CURL *curl);
+CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
+CURL_EXTERN CURL *curl_easy_duphandle(CURL *curl);
+CURL_EXTERN void curl_easy_reset(CURL *curl);
+CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
+CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
+CURL_EXTERN int curl_mprintf(const char *format, ...);
+CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...);
+CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...);
+CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength,
+CURL_EXTERN int curl_mvprintf(const char *format, va_list args);
+CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args);
+CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args);
+CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength,
+CURL_EXTERN char *curl_maprintf(const char *format, ...);
+CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args);
+CURL_EXTERN CURLM *curl_multi_init(void);
+CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
+CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
+CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
+CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s,
+CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
+CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
+CURL_EXTERN char *curl_pushheader_bynum(struct curl_pushheaders *h,
+CURL_EXTERN char *curl_pushheader_byname(struct curl_pushheaders *h,
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1136 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1136
new file mode 100644
index 0000000..d3327e8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1136
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+cookiejar
+PSL
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+Funny-head: yesyes
+Set-Cookie: test1=forbidden1; domain=example.ck; path=/;
+Set-Cookie: test2=allowed2; domain=www.example.ck; path=/;
+Set-Cookie: test3=forbidden3; domain=ck; path=/;
+Set-Cookie: test4=allowed4; domain=www.ck; path=/;
+Set-Cookie: test5=forbidden5; domain=z-1.compute-1.amazonaws.com; path=/;
+
+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<features>
+PSL
+</features>
+<server>
+http
+</server>
+<name>
+Check cookies against PSL
+</name>
+<setenv>
+TZ=GMT
+</setenv>
+<command>
+http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com/1136 -b none -c log/jar1136.txt -x %HOSTIP:%HTTPPORT
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/jar1136.txt" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+.www.example.ck	TRUE	/	FALSE	0	test2	allowed2
+.www.ck	TRUE	/	FALSE	0	test4	allowed4
+.z-1.compute-1.amazonaws.com	TRUE	/	FALSE	0	test5	forbidden5
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1137 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1137
new file mode 100644
index 0000000..a2bfcba
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1137
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+--ignore-content-length
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR --ignore-content-length
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1137 --ignore-content-length
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+RETR 1137

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1138 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1138
new file mode 100644
index 0000000..0c91d20
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1138
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose

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

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

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose

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

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect with UTF-8 characters
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/1138 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/1138 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/are/all/moo.html/?name=%d8%a2%d8%ba%d8%a7%d8%b2-%d8%b3%d9%85-%d8%b2%d8%af%d8%a7%db%8c%db%8c-%d8%a7%d8%b2-%d8%a8%d8%a7%d8%b2%d8%a7%d8%b1-%d9%be%d9%88%d9%84&testcase=/11380002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1139 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1139
new file mode 100644
index 0000000..72761c6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1139
@@ -0,0 +1,27 @@
+<testcase>
+<info>
+<keywords>
+source analysis
+symbols-in-versions
+documentation
+--manual
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+ <name>
+Verify that all libcurl options have man pages
+ </name>
+
+<command type="perl">
+%SRCDIR/manpage-scan.pl %SRCDIR/.. %PWD/..
+</command>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test114 b/ap/lib/libcurl/curl-7.54.1/tests/data/test114
new file mode 100644
index 0000000..6611aed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test114
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed login: PASS not valid
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/114
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1140 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1140
new file mode 100644
index 0000000..b9458be
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1140
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+source analysis
+symbols-in-versions
+documentation
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+ <name>
+Verify the nroff of man pages
+ </name>
+
+<command type="perl">
+%SRCDIR/nroff-scan.pl %SRCDIR/../docs/ %SRCDIR/../docs/libcurl/*.3 %SRCDIR/../docs/libcurl/opts/*.3 %SRCDIR/../docs/*.1
+</command>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1141 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1141
new file mode 100644
index 0000000..9c41d39
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1141
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 This is a weirdo text message
+Connection: close
+Location: http:///foo.example.com/want/11410001
+
+This server reply is for testing
+</data>
+<data1>
+HTTP/1.1 200 hello
+Connection: close
+Content-Length: 4
+
+hej
+</data1>
+<datacheck>
+HTTP/1.1 302 This is a weirdo text message
+Connection: close
+Location: http:///foo.example.com/want/11410001
+
+HTTP/1.1 200 hello
+Connection: close
+Content-Length: 4
+
+hej
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect to http:/// (three slashes!)
+ </name>
+ <command>
+%HOSTIP:%HTTPPORT/want/1141 -L -x http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/want/1141 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://foo.example.com/want/11410001 HTTP/1.1

+Host: foo.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1142 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1142
new file mode 100644
index 0000000..76c6bdf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1142
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 This is a weirdo text message
+Connection: close
+Location: http:////foo.example.com/want/11420001
+
+This server reply is for testing
+</data>
+<data1>
+HTTP/1.1 200 hello
+Connection: close
+Content-Length: 4
+
+hej
+</data1>
+<datacheck>
+HTTP/1.1 302 This is a weirdo text message
+Connection: close
+Location: http:////foo.example.com/want/11420001
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect to http://// (four slashes!)
+ </name>
+ <command>
+%HOSTIP:%HTTPPORT/want/1142 -L -x http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/want/1142 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+# 3, CURLE_URL_MALFORMAT for the four slashes
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1143 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1143
new file mode 100644
index 0000000..4f2f443
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1143
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 hello
+Connection: close
+Content-Length: 4
+
+hej
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP URL with http:/ (one slash!)
+ </name>
+ <command>
+http:/%HOSTIP:%HTTPPORT/want/1143
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/1143 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1144 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1144
new file mode 100644
index 0000000..3fb9093
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1144
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP HEAD
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+No headers at all, just data swsclose
+
+Let's get
+
+a little
+
+so that
+
+we
+
+have
+
+some
+
+test
+
+data to
+
+verify
+</data>
+# make sure no data is written
+<datacheck nonewline="yes">
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP HEAD, receive no headers only body
+ </name>
+ <command>
+-I http://%HOSTIP:%HTTPPORT/1144
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+HEAD /1144 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+8
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1145 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1145
new file mode 100644
index 0000000..287bebf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1145
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+<name>
+file:// bad host
+</name>
+# This command should not succeed since we only accept
+# file:/// file://localhost/ file://127.0.0.1/
+<command>
+file://bad-host%PWD/log/test1145.txt
+</command>
+<file name="log/test1145.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# CURLE_URL_MALFORMAT is error code 3
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1146 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1146
new file mode 100644
index 0000000..43f33b7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1146
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FILE
+--proto-default
+</keywords>
+</info>
+
+<reply>
+<data>
+foo
+   bar
+bar
+   foo
+moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+<name>
+--proto-default file
+</name>
+<command>
+--proto-default file %PWD/log/test1146.txt
+</command>
+<file name="log/test1146.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test115 b/ap/lib/libcurl/curl-7.54.1/tests/data/test115
new file mode 100644
index 0000000..f37a7e9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test115
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY PASV 314 bluah you f00l!
+REPLY EPSV 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed PASV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/115
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+13
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test116 b/ap/lib/libcurl/curl-7.54.1/tests/data/test116
new file mode 100644
index 0000000..2ed4ab0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test116
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPRT
+PORT
+FAILURE
+EPRT refused
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY EPRT 500 we don't like EPRT now
+REPLY PORT 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# EPRT is only sent when IPv6 is enabled
+<features>
+ipv6
+</features>
+ <name>
+FTP download, failed PORT
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/116 -P 1.2.3.4
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+30
+</errorcode>
+# Strip the port number but leave the rest
+<strippart>
+s/^(PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},)\d{1,3},\d{1,3}/$1/
+s/^(EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|)\d{1,5}\|/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|1.2.3.4|

+PORT 1,2,3,4,

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test117 b/ap/lib/libcurl/curl-7.54.1/tests/data/test117
new file mode 100644
index 0000000..2caad0d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test117
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY EPSV 314 bluah you f00l!
+REPLY TYPE 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed TYPE
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/117
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+17
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test118 b/ap/lib/libcurl/curl-7.54.1/tests/data/test118
new file mode 100644
index 0000000..6cd086c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test118
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY RETR 314 bluah you f00l!
+REPLY EPSV 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed RETR
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/118
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+19
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 118

+RETR 118

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test119 b/ap/lib/libcurl/curl-7.54.1/tests/data/test119
new file mode 100644
index 0000000..00a2428
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test119
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY RETR 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed RETR with PORT
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/119 -P -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+19
+</errorcode>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+TYPE I

+SIZE 119

+RETR 119

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test12 b/ap/lib/libcurl/curl-7.54.1/tests/data/test12
new file mode 100644
index 0000000..06dbdf5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test12
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Content-Range
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 206 Partial Content

+Date: Mon, 13 Nov 2000 13:41:09 GMT

+Server: Apache/1.3.11 (Unix) PHP/3.0.14

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 101

+Content-Range: bytes 100-200/3527

+Connection: close

+Content-Type: text/html

+

+..partial data returned from the
+server as a result of setting an explicit byte range
+in the request
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP range support
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/12 -r 100-200
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/12 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=100-200

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test120 b/ap/lib/libcurl/curl-7.54.1/tests/data/test120
new file mode 100644
index 0000000..85d49f5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test120
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+post-quote
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY EPSV 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+ftp download with post-quote delete operation
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/120 -Q "-DELE file"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 120

+RETR 120

+DELE file

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1200 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1200
new file mode 100644
index 0000000..ba1159f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1200
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+GOPHER
+INDEX
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+iMenu results		error.host	1

+0Selector 	/bar	bar.foo.invalid	70

+.

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+gopher
+</server>
+ <name>
+Gopher index
+ </name>
+ <command>
+gopher://%HOSTIP:%GOPHERPORT/1/1200
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+/1200

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1201 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1201
new file mode 100644
index 0000000..81a9fe4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1201
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+GOPHER
+SELECTOR
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+iMenu results		error.host	1

+0Selector /selector/SELECTOR	/bar	bar.foo.invalid	70

+.

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+gopher
+</server>
+ <name>
+Gopher selector
+ </name>
+ <command>
+gopher://%HOSTIP:%GOPHERPORT/1/selector/SELECTOR/1201
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+/selector/SELECTOR/1201

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1202 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1202
new file mode 100644
index 0000000..37d270a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1202
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+GOPHER
+QUERY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+iSearch results		error.host	1

+0Query query succeeded	/foo	foo.bar.invalid	70

+0Selector /the/search/engine	/bar	bar.foo.invalid	70

+.

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+gopher
+</server>
+ <name>
+Gopher query
+ </name>
+ <command>
+"gopher://%HOSTIP:%GOPHERPORT/7/the/search/engine?query%20succeeded/1202"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+/the/search/engine	query succeeded/1202

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1203 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1203
new file mode 100644
index 0000000..02d094d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1203
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+GOPHER-ipv6
+IPv6
+INDEX
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+iMenu results		error.host	1

+0Selector 	/bar	bar.foo.invalid	70

+.

+</data>
+</reply>
+
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+gopher-ipv6
+</server>
+ <name>
+Gopher IPv6 index
+ </name>
+ <command>
+-g gopher://%HOST6IP:%GOPHER6PORT/1/moo/1203
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+/moo/1203

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1204 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1204
new file mode 100644
index 0000000..d2f06b6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1204
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+--anyauth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsbounce

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: X-MobileMe-AuthToken realm="Newcastle", Basic realm="fun fun  fun"

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets the second request
+<data1>
+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsbounce

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: X-MobileMe-AuthToken realm="Newcastle", Basic realm="fun fun  fun"

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

+Content-Length: 26

+

+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with WWW-Authenticate and multiple auths in a single line
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1204 -u testuser:testpass --anyauth
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1204 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1204 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1205 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1205
new file mode 100644
index 0000000..7e4a882
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1205
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Funny-head: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAendofthem
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with 18K HTTP header
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1205
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1205 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1206 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1206
new file mode 100644
index 0000000..3f853d1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1206
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+NODATACONN425
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+some bytes
+</data>
+<servercmd>
+NODATACONN425
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT and 425 on download
+ </name>
+ <command>
+--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1206 -P -
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+TYPE I

+SIZE 1206

+RETR 1206

+QUIT

+</protocol>
+<errorcode>
+10
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1207 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1207
new file mode 100644
index 0000000..283e46d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1207
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+NODATACONN421
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+some bytes
+</data>
+<servercmd>
+NODATACONN421
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT and 421 on download
+ </name>
+ <command>
+--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1207 -P -
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+TYPE I

+SIZE 1207

+RETR 1207

+QUIT

+</protocol>
+<errorcode>
+10
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1208 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1208
new file mode 100644
index 0000000..504f6c7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1208
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+NODATACONN150
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+some bytes
+</data>
+<servercmd>
+NODATACONN150
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT download, no data conn and no transient negative reply
+ </name>
+ <command>
+--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1208 -P -
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+
+# This test doesn't send a QUIT because the main state machine in multi.c
+# triggers the timeout and sets the CURLE_OPERATION_TIMEDOUT error (28) for
+# which the FTP disconect code generically has to assume could mean the
+# control the connection and thus it cannot send any command.
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+TYPE I

+SIZE 1208

+RETR 1208

+</protocol>
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1209 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1209
new file mode 100644
index 0000000..7086829
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1209
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+NODATACONN
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+some bytes
+</data>
+<servercmd>
+NODATACONN
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT download, no data conn and no positive preliminary reply
+ </name>
+ <command>
+--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1209 -P -
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+
+# The protocol part does not include QUIT simply because the error is
+# CURLE_OPERATION_TIMEDOUT (28) which is a generic timeout error without
+# specificly saying for which connection it concerns, and for timeouts libcurl
+# marks the control channel as "invalid". As this test case times out for the
+# data connection it could still use the control channel.
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+TYPE I

+SIZE 1209

+RETR 1209

+</protocol>
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test121 b/ap/lib/libcurl/curl-7.54.1/tests/data/test121
new file mode 100644
index 0000000..de7a561
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test121
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+post-quote
+pre-quote
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+ftp download with post- and pre-transfer delete operations
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/121 -Q "-DELE after_transfer" -Q "DELE before_transfer"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+DELE before_transfer

+EPSV

+TYPE I

+SIZE 121

+RETR 121

+DELE after_transfer

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1210 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1210
new file mode 100644
index 0000000..df93198
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1210
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+
+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -J without Content-Disposition
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1210 -J -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1210 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/1210">
+12345
+</file>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1211 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1211
new file mode 100644
index 0000000..5418a85
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1211
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+NODATACONN425
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+some bytes
+</data>
+<servercmd>
+NODATACONN425
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT and 425 on download
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1211 -P -
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+TYPE I

+SIZE 1211

+RETR 1211

+</protocol>
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1212 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1212
new file mode 100644
index 0000000..a50601f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1212
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+SOCKS5
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+noproxy setting together with socks proxy
+ </name>
+
+<command>
+http://user:secret@%HOSTIP:%HTTPPORT/ulion/1212 --socks5 non-existing-host.haxx.se:1080 --noproxy %HOSTIP --max-time 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /ulion/1212 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpzZWNyZXQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1213 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1213
new file mode 100644
index 0000000..4f22f0d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1213
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 22

+

+the content goes here
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy and host-only URL
+ </name>
+# the thing here is that this sloppy form is accepted and we convert it
+# for normal server use, and we need to make sure it gets converted to
+# RFC style even for proxies
+ <command>
+-x %HOSTIP:%HTTPPORT we.want.that.site.com.1213
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com.1213/ HTTP/1.1

+Host: we.want.that.site.com.1213

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1214 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1214
new file mode 100644
index 0000000..3eeb3e3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1214
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 22

+

+the content goes here
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy and URL with ? and no slash separator
+ </name>
+# the thing here is that this sloppy form is accepted and we convert it
+# for normal server use, and we need to make sure it gets converted to
+# RFC style even for proxies
+ <command>
+-x %HOSTIP:%HTTPPORT http://we.want.that.site.com.1214?moo=foo
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com.1214/?moo=foo HTTP/1.1

+Host: we.want.that.site.com.1214

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1215 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1215
new file mode 100644
index 0000000..262910a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1215
@@ -0,0 +1,106 @@
+<testcase>
+<info>
+# This test is a copy of test 67, modified to use a HTTP proxy.
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+HTTP proxy
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 34
+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+
+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 34
+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+
+HTTP/1.1 200 Things are fine in server land swsclose
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with server NTLM authorization using a proxy
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/1215 -u testuser:testpass --ntlm --proxy http://%HOSTIP:%HTTPPORT
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/1215 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.30.0-DEV

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://%HOSTIP:%HTTPPORT/1215 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.30.0-DEV

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1216 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1216
new file mode 100644
index 0000000..5beda79
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1216
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Server: Microsoft-IIS/4.0
+Date: Tue, 25 Sep 2001 19:37:44 GMT
+Content-Type: text/html
+Connection: close
+Content-Length: 21

+
+This server says moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP cookie domains tailmatching the host name
+ </name>
+ <command>
+http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/injar1216 -x %HOSTIP:%HTTPPORT
+</command>
+<file name="log/injar1216">
+example.fake	FALSE	/a	FALSE	2139150993	mooo	indeed
+example.fake	FALSE	/b	FALSE	0		moo1	indeed
+example.fake	FALSE	/c	FALSE	2139150993	moo2	indeed
+example.fake	TRUE	/c	FALSE	2139150993	moo3	indeed
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://example.fake/c/1216 HTTP/1.1

+Host: example.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+Cookie: moo2=indeed; moo3=indeed

+

+GET http://bexample.fake/c/1216 HTTP/1.1

+Host: bexample.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1217 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1217
new file mode 100644
index 0000000..1efa4d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1217
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+NLST
+--data-binary
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+contents
+</data>
+<servercmd>
+REPLY PWD 257 there is rubbish all over "/this/is/the/path"
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with rubbish before name in 257-response
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/get/file/1217 ftp://%HOSTIP:%FTPPORT/get/file/again/1217 --ftp-method singlecwd
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD get/file

+EPSV

+TYPE I

+SIZE 1217

+RETR 1217

+CWD /this/is/the/path

+CWD get/file/again

+EPSV

+SIZE 1217

+RETR 1217

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1218 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1218
new file mode 100644
index 0000000..e3f1f6d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1218
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+</keywords>
+</info>
+
+# This test is very similar to 1216, only that it sets the cookies from the
+# first site instead of reading from a file
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 25 Sep 2001 19:37:44 GMT
+Set-Cookie: bug=fixed; domain=.example.fake;
+Content-Length: 21

+
+This server says moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP cookies and domains with same prefix
+ </name>
+ <command>
+http://example.fake/c/1218 http://example.fake/c/1218 http://bexample.fake/c/1218 -b nonexisting -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://example.fake/c/1218 HTTP/1.1

+Host: example.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://example.fake/c/1218 HTTP/1.1

+Host: example.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+Cookie: bug=fixed

+

+GET http://bexample.fake/c/1218 HTTP/1.1

+Host: bexample.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1219 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1219
new file mode 100644
index 0000000..e42a211
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1219
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY welcome 230 welcome without password
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with no user+password required (230 response)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1219
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+PWD

+EPSV

+TYPE I

+SIZE 1219

+RETR 1219

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test122 b/ap/lib/libcurl/curl-7.54.1/tests/data/test122
new file mode 100644
index 0000000..fb1dd05
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test122
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+Resume
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+5
+</size>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download resume with whole file already downloaded
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/122 -C 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 122

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1220 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1220
new file mode 100644
index 0000000..959abbf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1220
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+FILE
+URL
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+file:// URLs with query string
+ </name>
+ <command>
+file://localhost/%PWD/log/test1220.txt?a_query=foobar#afragment
+</command>
+<file name="log/test1220.txt">
+contents in a single file
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+contents in a single file
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1221 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1221
new file mode 100644
index 0000000..261cb8c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1221
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+build system
+source analysis
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+<name>
+10 chars object name generation testing
+</name>
+<command option="no-output,no-include" type="shell">
+%SRCDIR/../lib/objnames-test10.sh %SRCDIR
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stderr1221" mode="text">
+</file1>
+<file2 name="log/stdout1221">
+Testing curl_10char_object_name...
+
+result: 16AFKPQRST expected: 16AFKPQRST input: 123__678__ABC__FGH__KLM__PQRSTUV
+result: 16AFKPQ expected: 16AFKPQ input: 123__678__ABC__FGH__KLM__PQ.S.UV
+result: 16ABC expected: 16ABC input: 123__678__ABC..FGH..KLM..PQRSTUV
+result: 16 expected: 16 input: 123__678_.ABC._FGH__KLM__PQRSTUV
+result: 123 expected: 123 input: 123.567.90ABCDEFGHIJKLMNOPQRSTUV
+result: 1234567 expected: 1234567 input: 1234567.90A.CDEFGHIJKLMNOPQRSTUV
+result: 1234567890 expected: 1234567890 input: 1234567890.BCD.FGHIJKLMNOPQRSTUV
+result: 1470AB expected: 1470AB input: 12=45-78+0AB.DE.GHIJKLMNOPQRSTUV
+result: 1234567890 expected: 1234567890 input: 1234567890ABCDEFGHIJKLMNOPQRSTUV
+result: 159CGHIJKL expected: 159CGHIJKL input: 123_567_90A_CDE_GHIJKLMNOPQRSTUV
+result: 159CDEFGHI expected: 159CDEFGHI input: 123_567_90A_CDEFGHIJKLMNOPQRSTUV
+result: 1590ABCDEF expected: 1590ABCDEF input: 123_567_90ABCDEFGHIJKLMNOPQRSTUV
+result: 1567890ABC expected: 1567890ABC input: 123_567890ABCDEFGHIJKLMNOPQRSTUV
+result: 1234567890 expected: 1234567890 input: 1234567890ABCDEFGHIJKLMNOPQRSTUV
+
+
+
+10-characters-or-less generated object names are unique.
+</file2>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1222 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1222
new file mode 100644
index 0000000..51edc97
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1222
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+build system
+source analysis
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+
+<name>
+8 chars object name generation testing
+</name>
+<command option="no-output,no-include" type="shell">
+%SRCDIR/../lib/objnames-test08.sh %SRCDIR
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stderr1222">
+</file1>
+<file2 name="log/stdout1222">
+Testing curl_8char_object_name...
+
+result: 16AFKPQR expected: 16AFKPQR input: 123__678__ABC__FGH__KLM__PQRSTUV
+result: 16AFKPQ expected: 16AFKPQ input: 123__678__ABC__FGH__KLM__PQ.S.UV
+result: 16ABC expected: 16ABC input: 123__678__ABC..FGH..KLM..PQRSTUV
+result: 16 expected: 16 input: 123__678_.ABC._FGH__KLM__PQRSTUV
+result: 123 expected: 123 input: 123.567.90ABCDEFGHIJKLMNOPQRSTUV
+result: 1234567 expected: 1234567 input: 1234567.90A.CDEFGHIJKLMNOPQRSTUV
+result: 12345678 expected: 12345678 input: 1234567890.BCD.FGHIJKLMNOPQRSTUV
+result: 1470AB expected: 1470AB input: 12=45-78+0AB.DE.GHIJKLMNOPQRSTUV
+result: 12345678 expected: 12345678 input: 1234567890ABCDEFGHIJKLMNOPQRSTUV
+result: 159CGHIJ expected: 159CGHIJ input: 123_567_90A_CDE_GHIJKLMNOPQRSTUV
+result: 159CDEFG expected: 159CDEFG input: 123_567_90A_CDEFGHIJKLMNOPQRSTUV
+result: 1590ABCD expected: 1590ABCD input: 123_567_90ABCDEFGHIJKLMNOPQRSTUV
+result: 1567890A expected: 1567890A input: 123_567890ABCDEFGHIJKLMNOPQRSTUV
+result: 12345678 expected: 12345678 input: 1234567890ABCDEFGHIJKLMNOPQRSTUV
+
+
+
+8-characters-or-less generated object names are unique.
+</file2>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1223 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1223
new file mode 100644
index 0000000..2885bc5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1223
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# disable data check since it gets sent to stdout and is verified there
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 4
+Connection: close
+Content-Type: text/html
+
+hej
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET -w remote_ip and -w remote_port
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1223 -w 'IP %{remote_ip} and PORT %{remote_port}\n'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1223 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 4
+Connection: close
+Content-Type: text/html
+
+hej
+IP %HOSTIP and PORT %HTTPPORT
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1224 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1224
new file mode 100644
index 0000000..315936b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1224
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP fetch a file from the root directory
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT//1224
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /

+EPSV

+TYPE I

+SIZE 1224

+RETR 1224

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1225 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1225
new file mode 100644
index 0000000..2b2519c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1225
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP fetch two files using absolute paths
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT//foo/1225 ftp://%HOSTIP:%FTPPORT//foo/bar/1225
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /

+CWD foo

+EPSV

+TYPE I

+SIZE 1225

+RETR 1225

+CWD /

+CWD /

+CWD foo

+CWD bar

+EPSV

+SIZE 1225

+RETR 1225

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1226 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1226
new file mode 100644
index 0000000..6381b12
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1226
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP fetch a file from the root directory with singlecwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT//1226 --ftp-method singlecwd
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /

+EPSV

+TYPE I

+SIZE 1226

+RETR 1226

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1227 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1227
new file mode 100644
index 0000000..46b28d5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1227
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP fetch a file from the root directory with nocwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT//1227 --ftp-method nocwd
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE /1227

+RETR /1227

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1228 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1228
new file mode 100644
index 0000000..a7e56a7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1228
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+cookie path
+</keywords>
+</info>
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 25 Sep 2001 19:37:44 GMT
+Set-Cookie: path1=root; domain=.example.fake; path=/;
+Set-Cookie: path2=depth1; domain=.example.fake; path=/hoge;
+Content-Length: 34
+
+This server says cookie path test
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP cookie path match
+ </name>
+ <command>
+http://example.fake/hoge/1228 http://example.fake/hogege/ -b nonexisting -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://example.fake/hoge/1228 HTTP/1.1

+Host: example.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://example.fake/hogege/ HTTP/1.1

+Host: example.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+Cookie: path1=root

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1229 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1229
new file mode 100644
index 0000000..225ba3c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1229
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Content-Length: 26

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with Digest authorization with user name needing escape
+ </name>
+ <command>
+http://%5cuser%22:password@%HOSTIP:%HTTPPORT/1229 --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1229 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1229 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="\\user\"", realm="testrealm", nonce="1053604145", uri="/1229", response="f2694d426040712584c156d3de72b8d6"

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test123 b/ap/lib/libcurl/curl-7.54.1/tests/data/test123
new file mode 100644
index 0000000..4bbfce9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test123
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+Resume
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP upload resume with whole file already downloaded
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/123 -T log/upload123 -C 51
+</command>
+<file name="log/upload123">
+--------------------------------------------------
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1230 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1230
new file mode 100644
index 0000000..ca2f6c6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1230
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP CONNECT
+HTTP proxy
+IPv6
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 200 OK

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

+Content-Length: 9

+
+mooooooo
+</data>
+
+<connect>
+HTTP/1.1 200 welcome dear

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

+

+</connect>
+
+<datacheck>
+HTTP/1.1 200 welcome dear

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

+

+HTTP/1.1 200 OK

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

+Content-Length: 9

+
+mooooooo
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-proxy
+http-ipv6
+http
+</server>
+ <name>
+HTTP CONNECT to IPv6 numerical address
+ </name>
+# 0x4ce == 1230, the test number
+ <command>
+http://[1234:1234:1234::4ce]:%HTTPPORT/wanted/page/1230 -p -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+CONNECT [1234:1234:1234::4ce]:%HTTPPORT HTTP/1.1

+Host: [1234:1234:1234::4ce]:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+GET /wanted/page/1230 HTTP/1.1

+Host: [1234:1234:1234::4ce]:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1231 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1231
new file mode 100644
index 0000000..61998d1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1231
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+dotdot removal
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+
+<data1>
+HTTP/1.1 200 OK
+Content-Length: 7
+Connection: close
+
+-cool-
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP URL with dotdot removal from path
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/../../hej/but/who/../1231?stupid=me/../1231#soo/../1231 http://%HOSTIP:%HTTPPORT/../../hej/but/who/../12310001#/../12310001
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /hej/but/1231?stupid=me/../1231 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /hej/but/12310001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1232 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1232
new file mode 100644
index 0000000..d0659f1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1232
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+# This test is a copy of test 1231, modified to use a HTTP proxy.
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+dotdot removal
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+
+<data1>
+HTTP/1.1 200 OK
+Content-Length: 7
+Connection: close
+
+-cool-
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP URL with dotdot removal from path using an HTTP proxy
+ </name>
+ <command>
+--proxy http://%HOSTIP:%HTTPPORT 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
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://test.remote.haxx.se.1232:8990/hej/but/1232?stupid=me/../1232 HTTP/1.1

+Host: test.remote.haxx.se.1232:8990

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.haxx.se.1232:8990/hej/but/12320001 HTTP/1.1

+Host: test.remote.haxx.se.1232:8990

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1233 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1233
new file mode 100644
index 0000000..caf0527
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1233
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+# Assuming there's nothing listening on port 1
+REPLY EPSV 229 Entering Passiv Mode (|||1|)
+</servercmd>
+<data>
+here are some bytes
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP failing to connect to EPSV port, switching to PASV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1233
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 1233

+RETR 1233

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1234 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1234
new file mode 100644
index 0000000..41c4bc0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1234
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+globbing
+{} list
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+abusing {}-globbing
+ </name>
+ <command>
+"%HOSTIP:%HTTPPORT/1234[0-1]{" "%HOSTIP:%HTTPPORT/{}{}{}{"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 3 == CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1235 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1235
new file mode 100644
index 0000000..9e51219
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1235
@@ -0,0 +1,95 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+{} list
+</keywords>
+</info>
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 15

+

+the number one
+</data1>
+<data2>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 16

+

+two is nice too
+</data2>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+multiple requests using {}{} in the URL
+ </name>
+ <command>
+"%HOSTIP:%HTTPPORT/{1235,1235}{0001,0002}"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /12350001 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /12350002 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /12350001 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /12350002 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+--_curl_--%HOSTIP:%HTTPPORT/12350001
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 15

+

+the number one
+--_curl_--%HOSTIP:%HTTPPORT/12350002
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 16

+

+two is nice too
+--_curl_--%HOSTIP:%HTTPPORT/12350001
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 15

+

+the number one
+--_curl_--%HOSTIP:%HTTPPORT/12350002
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 16

+

+two is nice too
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1236 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1236
new file mode 100644
index 0000000..0829be3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1236
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+globbing
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+[] globbing overflowing the range counter
+ </name>
+# 2^62 == 4611686018427387904
+ <command>
+"%HOSTIP:%HTTPPORT/1234[0-1]{" "%HOSTIP:%HTTPPORT/[1-4611686018427387904][1-4611686018427387904]"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 3 == CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1237 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1237
new file mode 100644
index 0000000..21da17d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1237
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP Basic auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+
+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+URL with 1000+ letter user name + password
+ </name>
+ <command>
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@%HOSTIP:%HTTPPORT/1237"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1237 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQTpCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkI=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1238 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1238
new file mode 100644
index 0000000..a0eef41
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1238
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+writedelay: 2
+</servercmd>
+# ~1200 bytes (so that they don't fit in two 512 byte chunks)
+<data nocheck="yes">
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+slow TFTP retrieve cancel due to -Y and -y
+ </name>
+# if less than 1000 bytes/sec within 2 seconds, abort!
+ <command>
+tftp://%HOSTIP:%TFTPPORT//1238 -Y1000 -y2
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /1238
+</protocol>
+# 28 = CURLE_OPERATION_TIMEDOUT
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1239 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1239
new file mode 100644
index 0000000..b3503d9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1239
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-z
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2010 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with -z + -w response_code and simulated 304
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1239 -z "-dec 12 12:00:00 1999 GMT" -w '%{response_code}'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1239 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Unmodified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+</protocol>
+<stdout nonewline="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2010 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+
+304
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test124 b/ap/lib/libcurl/curl-7.54.1/tests/data/test124
new file mode 100644
index 0000000..255d873
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test124
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+we can still send data even if pwd fails!
+</data>
+<servercmd>
+REPLY PWD 314 bluah you f00l!
+REPLY EPSV 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed PWD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/124
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+PASV

+TYPE I

+SIZE 124

+RETR 124

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1240 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1240
new file mode 100644
index 0000000..6435950
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1240
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+globbing
+HTTP
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+glob [0-1] with stuff after range (7.33.0 regression)
+ </name>
+ <command>
+"%HOSTIP:%HTTPPORT/0[0-1]/1240"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /00/1240 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /01/1240 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1241 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1241
new file mode 100644
index 0000000..aaa5688
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1241
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+# verify that dotdot removal can be disabled!
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+
+<data1>
+HTTP/1.1 200 OK
+Content-Length: 7
+Connection: close
+
+-cool-
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP _without_ dotdot removal
+ </name>
+ <command>
+--path-as-is --proxy http://%HOSTIP:%HTTPPORT 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
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://test.remote.haxx.se.1241:8990/../../hej/but/who/../1241?stupid=me/../1241 HTTP/1.1

+Host: test.remote.haxx.se.1241:8990

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.haxx.se.1241:8990/../../hej/but/who/../12410001 HTTP/1.1

+Host: test.remote.haxx.se.1241:8990

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1242 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1242
new file mode 100644
index 0000000..80111eb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1242
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+a chunk of
+data
+returned
+ to client
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve without TFTP options requests
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT//1242 --tftp-no-options
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+filename: /1242
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1243 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1243
new file mode 100644
index 0000000..8a89af0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1243
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP WRQ
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP send without TFTP options requests
+ </name>
+ <command>
+-T log/test1243.txt tftp://%HOSTIP:%TFTPPORT// --tftp-no-options
+</command>
+<file name="log/test1243.txt">
+a chunk of
+data
+sent
+ to server
+</file>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<upload>
+a chunk of
+data
+sent
+ to server
+</upload>
+<protocol>
+opcode: 2
+mode: octet
+filename: /test1243.txt
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1244 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1244
new file mode 100644
index 0000000..d0769ad
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1244
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Server: test-server/fake
+Content-Length: 5
+
+bing
+</data>
+<data1>
+HTTP/1.1 200 OK
+Server: test-server/fake
+Content-Length: 6
+
+wrong
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+https
+</server>
+ <name>
+HTTP GET same URL - different proxy ports
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1244 -x %HOSTIP:%HTTPPORT --next http://%HOSTIP:%HTTPPORT/124400001 -x %HOSTIP:%HTTPSPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# the second request meant to fail
+<errorcode>
+56
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/1244 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1245 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1245
new file mode 100644
index 0000000..851d78d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1245
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP
+HTTP GET
+--proto
+--proto-redir
+followlocation
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsclose

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

+Server: test-server/fake

+Content-Length: 0

+Location: ftp://127.0.0.1:8992/1245

+Connection: close

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+ftp
+</server>
+<name>
+--proto deny must override --proto-redir allow
+</name>
+<command>
+--location --proto +all,-ftp --proto-redir -all,+ftp http://%HOSTIP:%HTTPPORT/1245
+</command>
+# The data section doesn't do variable substitution, so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%FTPPORT' ne '8992' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1245 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+# 1 - Protocol ftp not supported or disabled in libcurl
+<errorcode>
+1
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1246 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1246
new file mode 100644
index 0000000..6565929
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1246
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+# verify URL with hostname ending in pound sign
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+
+<data1>
+HTTP/1.1 200 OK
+Content-Length: 7
+Connection: close
+
+-cool-
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+URL with '#' at end of host name instead of '/'
+ </name>
+ <command>
+--proxy http://%HOSTIP:%HTTPPORT http://test.remote.haxx.se.1246:%HTTPPORT#@127.0.0.1/tricked.html no-scheme-url.com.1246:%HTTPPORT#@127.127.127.127/again.html
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://test.remote.haxx.se.1246:%HTTPPORT/ HTTP/1.1

+Host: test.remote.haxx.se.1246:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://no-scheme-url.com.1246:%HTTPPORT/ HTTP/1.1

+Host: no-scheme-url.com.1246:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1247 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1247
new file mode 100644
index 0000000..48c5ccd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1247
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+--fail-early
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+--fail-early
+ </name>
+ <command>
+--fail-early h1234://%HOSTIP:%HTTPPORT/1247 http://%HOSTIP:%HTTPPORT/1247
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# Protocol "h1234" not supported or disabled in libcurl
+<errorcode>
+1
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1248 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1248
new file mode 100644
index 0000000..28e7a85
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1248
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Access a non-proxied host with using the combination of --proxy option and --noproxy option
+</name>
+<command>
+http://user:secret@%HOSTIP:%HTTPPORT/1248 --proxy http://dummy:%PROXYPORT/ --noproxy %HOSTIP --max-time 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1248 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpzZWNyZXQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1249 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1249
new file mode 100644
index 0000000..ab56140
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1249
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Access a non-proxied host with using the combination of --proxy option and NO_PROXY env var
+</name>
+<setenv>
+NO_PROXY=%HOSTIP
+</setenv>
+<command>
+http://user:secret@%HOSTIP:%HTTPPORT/1249 --proxy http://dummy:%PROXYPORT/ --max-time 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1249 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpzZWNyZXQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test125 b/ap/lib/libcurl/curl-7.54.1/tests/data/test125
new file mode 100644
index 0000000..5677aeb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test125
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY CWD 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download, failed CWD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/to/file/125
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+9
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1250 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1250
new file mode 100644
index 0000000..bf67b7f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1250
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+http_proxy
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Access a non-proxied host with using the combination of http_proxy env var and --noproxy option
+</name>
+<setenv>
+http_proxy=http://dummy:%PROXYPORT/
+</setenv>
+<command>
+http://user:secret@%HOSTIP:%HTTPPORT/1250 --noproxy %HOSTIP --max-time 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1250 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpzZWNyZXQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1251 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1251
new file mode 100644
index 0000000..f37a685
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1251
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+http_proxy
+NO_PROXY
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Access a non-proxied host with using the combination of http_proxy env var and NO_PROXY env var
+</name>
+<setenv>
+http_proxy=http://dummy:%PROXYPORT/
+NO_PROXY=%HOSTIP
+</setenv>
+<command>
+http://user:secret@%HOSTIP:%HTTPPORT/1251 --max-time 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1251 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpzZWNyZXQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1252 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1252
new file mode 100644
index 0000000..cbaef48
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1252
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Under condition using --proxy, override NO_PROXY by --nproxy and access target URL directly
+</name>
+<setenv>
+NO_PROXY=example.com
+</setenv>
+<command>
+http://%HOSTIP:%HTTPPORT/1252 --proxy http://%HOSTIP:%HTTPPORT --noproxy %HOSTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1252 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1253 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1253
new file mode 100644
index 0000000..7400299
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1253
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Under condition using --proxy, override NO_PROXY by --nproxy and access target URL through proxy
+</name>
+<setenv>
+NO_PROXY=example.com
+</setenv>
+<command>
+http://somewhere.example.com/1253 --proxy http://%HOSTIP:%HTTPPORT --noproxy %HOSTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://somewhere.example.com/1253 HTTP/1.1

+Host: somewhere.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1254 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1254
new file mode 100644
index 0000000..817b934
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1254
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Under condition using --proxy, override NO_PROXY by --nproxy and access target URL through proxy
+</name>
+<setenv>
+NO_PROXY=example.com
+</setenv>
+<command>
+http://somewhere.example.com/1254 --proxy http://%HOSTIP:%HTTPPORT --noproxy ""
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://somewhere.example.com/1254 HTTP/1.1

+Host: somewhere.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1255 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1255
new file mode 100644
index 0000000..d82310f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1255
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Under condition using http_proxy, override NO_PROXY by --nproxy and access target URL directly
+</name>
+<setenv>
+http_proxy=http://%HOSTIP:%HTTPPORT
+NO_PROXY=example.com
+</setenv>
+<command>
+http://%HOSTIP:%HTTPPORT/1255 --noproxy %HOSTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1255 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1256 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1256
new file mode 100644
index 0000000..09c59f4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1256
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Under condition using http_proxy, override NO_PROXY by --nproxy and access target URL through proxy
+</name>
+<setenv>
+http_proxy=http://%HOSTIP:%HTTPPORT
+NO_PROXY=example.com
+</setenv>
+<command>
+http://somewhere.example.com/1256 --noproxy %HOSTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://somewhere.example.com/1256 HTTP/1.1

+Host: somewhere.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1257 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1257
new file mode 100644
index 0000000..6b7e937
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1257
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+NO_PROXY
+noproxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+
+foo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Under condition using http_proxy, override NO_PROXY by --nproxy and access target URL through proxy
+</name>
+<setenv>
+http_proxy=http://%HOSTIP:%HTTPPORT
+NO_PROXY=example.com
+</setenv>
+<command>
+http://somewhere.example.com/1257 --noproxy ""
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://somewhere.example.com/1257 HTTP/1.1

+Host: somewhere.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1258 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1258
new file mode 100644
index 0000000..6fa88e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1258
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP replaced headers
+cookies
+httponly
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose

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

+Content-Type: text/html

+Set-Cookie: I-am=here; domain=localhost;
+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, use cookies with localhost
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1258 http://%HOSTIP:%HTTPPORT/we/want?hoge=fuga -b non-existing -H "Host: localhost"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/1258 HTTP/1.1

+Host: localhost

+Accept: */*

+

+GET /we/want?hoge=fuga HTTP/1.1

+Host: localhost

+Accept: */*

+Cookie: I-am=here

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1259 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1259
new file mode 100644
index 0000000..bad4ee2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1259
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose

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

+Content-Type: text/html

+Set-Cookie: I-am=here; domain=localhost;
+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP URL with semicolon in password
+ </name>
+ <command>
+"http://user:pass;word@%HOSTIP:%HTTPPORT/we/want/1259"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/1259 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dXNlcjpwYXNzO3dvcmQ=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test126 b/ap/lib/libcurl/curl-7.54.1/tests/data/test126
new file mode 100644
index 0000000..0872214
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test126
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+RETRWEIRDO
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+this is file contents
+</data>
+<servercmd>
+RETRWEIRDO
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download with multiple replies at once in RETR
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/lululul/126
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+CWD lululul

+EPSV

+TYPE I

+SIZE 126

+RETR 126

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1260 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1260
new file mode 100644
index 0000000..1d86ecd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1260
@@ -0,0 +1,36 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+HTTP URL with rubbish after port number
+ </name>
+ <command>
+-g "http://[%HOSTIP]:%HTTPPORT:80/we/want/1260" "http://%HOSTIP:%HTTPPORT:80/we/want/1260" "http://user@example.com:80@localhost"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# CURLE_URL_MALFORMAT == 3
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1261 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1261
new file mode 100644
index 0000000..7f88799
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1261
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+redirect_url
+followlocation
+--write-out
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10290002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+This server reply is for testing a simple Location: following
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+'redirect_url' with --location and --max-redir
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/our/1261 -w '%{redirect_url}\n' --location --max-redir 0
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/our/1261 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+# CURLE_TOO_MANY_REDIRECTS
+<errorcode>
+47
+</errorcode>
+<stdout>
+HTTP/1.1 301 This is a weirdo text message swsclose

+Location: data/10290002.txt?coolsite=yes

+Content-Length: 62

+Connection: close

+

+http://%HOSTIP:%HTTPPORT/we/want/our/data/10290002.txt?coolsite=yes
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1262 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1262
new file mode 100644
index 0000000..4b08a2c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1262
@@ -0,0 +1,40 @@
+# similar to test 139 but with a reversed time condition
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-z
+</keywords>
+</info>
+# Server-side
+<reply>
+<mdtm>
+213 20030409102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP request and denied to download an older file with -z
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/1262 -z "-1 jan 2001"
+</command>
+</client>
+
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+MDTM 1262

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test127 b/ap/lib/libcurl/curl-7.54.1/tests/data/test127
new file mode 100644
index 0000000..ac46d8d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test127
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+--disable-epsv
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+moooooooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP --disable-epsv
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/to/file/127 --disable-epsv
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+CWD to

+CWD file

+PASV

+TYPE I

+SIZE 127

+RETR 127

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test128 b/ap/lib/libcurl/curl-7.54.1/tests/data/test128
new file mode 100644
index 0000000..743cd12
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test128
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+STOR
+--crlf
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP upload with --crlf
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/128 -T log/upload128 --crlf
+</command>
+<file name="log/upload128">
+file
+with unix newlines
+meant to be
+converted
+with
+the
+--crlf option
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+STOR 128

+QUIT

+</protocol>
+<upload>
+file

+with unix newlines

+meant to be

+converted

+with

+the

+--crlf option

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1280 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1280
new file mode 100644
index 0000000..15c1e2f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1280
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+globbing
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+
+bytes
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+simple [a-d] globbing
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/[a-d]/1280
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /a/1280 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /b/1280 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /c/1280 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /d/1280 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1281 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1281
new file mode 100644
index 0000000..661b3c8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1281
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+URL
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+reject non-numerical port number in URL
+ </name>
+ <command>
+http://%HOSTIP:alpha/beta/1281
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 3 == CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1282 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1282
new file mode 100644
index 0000000..197356c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1282
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 633 XXXXXXXX\x00\x00XXXXXXXX
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<features>
+GSS-API
+</features>
+ <name>
+FTP with 633 response before gss initialized
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1282
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+</protocol>
+
+# 67 == CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1283 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1283
new file mode 100644
index 0000000..ac275e9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1283
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+[] range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Content-Length: 6

+Connection: close

+

+bytes
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+globbing range with same start and stop
+</name>
+<command option="no-output">
+http://%HOSTIP:%HTTPPORT/[a-a][1-1][b-b:1][2-2:1]/1283 -o "log/outfile1283_#1#2#3#4.dump"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /a1b2/1283 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/outfile1283_a1b2.dump">
+HTTP/1.1 200 OK

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

+Content-Length: 6

+Connection: close

+

+bytes
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1284 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1284
new file mode 100644
index 0000000..8437a40
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1284
@@ -0,0 +1,89 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+#
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+<name>
+HTTP POST --digest with user-specified Content-Length header
+</name>
+# This test is to ensure 'Content-Length: 0' is sent while negotiating auth
+# even when there is a user-specified Content-Length header.
+# https://github.com/curl/curl/pull/1242
+<command>
+-H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://%HOSTIP:%HTTPPORT/1284
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /1284 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /1284 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1284", response="5763079608de439072861a59ac733515"

+Accept: */*

+Content-Length: 11

+Content-Type: application/x-www-form-urlencoded

+

+junkelijunk
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1285 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1285
new file mode 100644
index 0000000..16c6623
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1285
@@ -0,0 +1,97 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+#
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+<name>
+HTTP PUT --digest with user-specified Content-Length header
+</name>
+# This test is to ensure 'Content-Length: 0' is sent while negotiating auth
+# even when there is a user-specified Content-Length header.
+# https://github.com/curl/curl/pull/1242
+<command>
+-H "Content-Length: 85" -u auser:apasswd --digest -T log/put1285 http://%HOSTIP:%HTTPPORT/1285
+</command>
+<file name="log/put1285">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1285 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+

+PUT /1285 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1285", response="dc185587d5e8391b347eef194c2a3cd6"

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1286 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1286
new file mode 100644
index 0000000..41782cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1286
@@ -0,0 +1,110 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 302 Thanks for this, but we want to redir you!

+Server: Microsoft-IIS/5.0

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

+Location: /12860001

+Content-Length: 0

+

+</data1000>
+<data1001>
+HTTP/1.1 404 Not Found

+Server: Microsoft-IIS/5.0

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

+Content-Length: 0

+

+</data1001>
+
+<datacheck>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth"

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

+Content-Length: 0

+

+HTTP/1.1 302 Thanks for this, but we want to redir you!

+Server: Microsoft-IIS/5.0

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

+Location: /12860001

+Content-Length: 0

+

+HTTP/1.1 404 Not Found

+Server: Microsoft-IIS/5.0

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

+Content-Length: 0

+

+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+#
+<server>
+http
+</server>
+<features>
+crypto
+</features>
+<name>
+HTTP GET --digest increasing nonce-count
+</name>
+# This test is to ensure the nonce-count (nc) increases
+# https://github.com/curl/curl/pull/1251
+<command>
+-u auser:apasswd --location --digest http://%HOSTIP:%HTTPPORT/1286
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+# Reorder the fields in 'Authorization: Digest' header.
+# Since regular and SSPI digest auth header fields may not have the same order
+# or whitespace we homogenize so that both may be tested. Also:
+# - Remove the unique value from cnonce if in RFC format
+# - Remove the unique value from response if in RFC format
+# - Remove quotes from qop="auth" used by SSPI
+# The if statement is one line because runtests evaluates one line at a time.
+<strippart>
+if(s/^(Authorization: Digest )([^\r\n]+)(\r?\n)$//) { $_ = $1 . join(', ', map { s/^(cnonce=)"[a-zA-Z0-9+\/=]+"$/$1REMOVED/; s/^(response=)"[a-f0-9]{32}"$/$1REMOVED/; s/^qop="auth"$/qop=auth/; $_ } sort split(/, */, $2)) . $3; }
+</strippart>
+<protocol>
+GET /1286 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1286 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest cnonce=REMOVED, nc=00000001, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/1286", username="auser"

+Accept: */*

+

+GET /12860001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest cnonce=REMOVED, nc=00000002, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/12860001", username="auser"

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1287 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1287
new file mode 100644
index 0000000..46c2924
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1287
@@ -0,0 +1,91 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+proxytunnel
+verbose logs
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+

+contents
+</data>
+
+# The purpose of this test is to make sure curl ignores headers
+# Content-Length and Transfer-Encoding in a successful CONNECT 2xx reply.
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+Content-Length: 123

+Transfer-Encoding: chunked

+

+</connect>
+
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+Content-Length: 123

+Transfer-Encoding: chunked

+

+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+

+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<name>
+HTTP over proxy-tunnel ignore TE and CL in CONNECT 2xx responses
+</name>
+<command>
+-v --proxytunnel -x %HOSTIP:%PROXYPORT http://test.1287:%HTTPPORT/we/want/that/page/1287
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT test.1287:%HTTPPORT HTTP/1.1

+Host: test.1287:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

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

+Host: test.1287:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/stderr1287" mode="text">
+* Ignoring Content-Length in CONNECT 200 response
+* Ignoring Transfer-Encoding in CONNECT 200 response
+</file>
+<stripfile>
+s/^.*(?=\* Ignoring (?:Content-Length|Transfer-Encoding) )// or $_ = ''
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1288 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1288
new file mode 100644
index 0000000..543aa3d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1288
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+Server: test tunnel 2000

+

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

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+Connection: keep-alive

+

+contents
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<name>
+Suppress proxy CONNECT response headers
+</name>
+<command>
+--proxytunnel --suppress-connect-headers --dump-header - --include --write-out "\nCONNECT CODE: %{http_connect}\nRECEIVED HEADER BYTE TOTAL: %{size_header}\n" --proxy %HOSTIP:%PROXYPORT http://%HOSTIP.1288:%HTTPPORT/we/want/that/page/1288
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT %HOSTIP.1288:%HTTPPORT HTTP/1.1

+Host: %HOSTIP.1288:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

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

+Host: %HOSTIP.1288:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+# This test is structured to test all the expectations of
+# --suppress-connect-headers, which are:
+# Must suppress in --include and --dump-header
+# Must not suppress in --verbose and --trace
+# Must not suppress in statistics (eg received header byte total)
+<stdout>
+HTTP/1.1 200 OK

+HTTP/1.1 200 OK

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

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

+Server: test-server/fake

+Server: test-server/fake

+Content-Type: text/html

+Content-Type: text/html

+Funny-head: yesyes

+Funny-head: yesyes

+Content-Length: 9

+Content-Length: 9

+Connection: keep-alive

+Connection: keep-alive

+

+

+contents
+
+CONNECT CODE: 200
+RECEIVED HEADER BYTE TOTAL: 231
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test129 b/ap/lib/libcurl/curl-7.54.1/tests/data/test129
new file mode 100644
index 0000000..cf1e839
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test129
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+TYPE A
+RETR
+type=
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+37
+</size>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP GET with type=A style ASCII URL and understated server SIZE
+ </name>
+ <command>
+"ftp://%HOSTIP:%FTPPORT/129;type=A"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+SIZE 129

+RETR 129

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test13 b/ap/lib/libcurl/curl-7.54.1/tests/data/test13
new file mode 100644
index 0000000..18f7f81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test13
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP custom request
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 Read you

+Content-Length: 29

+Deleted: suppose we got a header like this! ;-)

+

+blabla custom request result
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP custom request 'DELETE'
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/13 -X DELETE
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+DELETE /want/13 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test130 b/ap/lib/libcurl/curl-7.54.1/tests/data/test130
new file mode 100644
index 0000000..6e6d9c1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test130
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+LIST
+netrc
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP (optional .netrc; no user/pass) dir list PASV
+ </name>
+ <command>
+--netrc-optional --netrc-file log/netrc130 ftp://%HOSTIP:%FTPPORT/
+</command>
+<file name="log/netrc130" >
+# the following two lines were created while testing curl
+machine %HOSTIP login user1 password passwd1
+machine %HOSTIP login user2 password passwd2
+default login userdef password passwddef
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER user1

+PASS passwd1

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1300 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1300
new file mode 100644
index 0000000..1008885
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1300
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+llist
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+llist unit tests
+ </name>
+<tool>
+unit1300
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1301 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1301
new file mode 100644
index 0000000..8506c00
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1301
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+curl_strcasecompare
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+curl_strcasecompare unit tests
+ </name>
+<tool>
+unit1301
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1302 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1302
new file mode 100644
index 0000000..27ea862
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1302
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+base64
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+base64 encode/decode unit tests
+ </name>
+<tool>
+unit1302
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1303 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1303
new file mode 100644
index 0000000..925b47e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1303
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+Curl_timeleft
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Curl_timeleft unit tests
+ </name>
+<tool>
+unit1303
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1304 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1304
new file mode 100644
index 0000000..d518de9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1304
@@ -0,0 +1,30 @@
+<testcase>
+<info>
+<keywords>
+unittest
+netrc
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+netrc parsing unit tests
+ </name>
+<tool>
+unit1304
+</tool>
+<file name="log/netrc1304">
+machine example.com login admin password passwd
+machine curl.example.com login none password none
+</file>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1305 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1305
new file mode 100644
index 0000000..91149b3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1305
@@ -0,0 +1,30 @@
+<testcase>
+<!-- This replaces test 558 -->
+<info>
+<keywords>
+unittest
+hash
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+internal hash create/destroy testing
+ </name>
+<tool>
+unit1305
+</tool>
+<command>
+1305
+</command>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1306 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1306
new file mode 100644
index 0000000..b490efb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1306
@@ -0,0 +1,30 @@
+<testcase>
+<!-- This replaces test 559 -->
+<info>
+<keywords>
+unittest
+hash
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+internal hash create/add/destroy testing
+ </name>
+<tool>
+unit1305
+</tool>
+<command>
+1306
+</command>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1307 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1307
new file mode 100644
index 0000000..82ed3c0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1307
@@ -0,0 +1,27 @@
+<testcase>
+<!-- This replaces test 577 -->
+<info>
+<keywords>
+unittest
+wildcardmatch
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+internal Curl_fnmatch() testing
+ </name>
+<tool>
+unit1307
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1308 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1308
new file mode 100644
index 0000000..88e9771
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1308
@@ -0,0 +1,31 @@
+<testcase>
+<info>
+<keywords>
+unittest
+curl_formadd
+curl_formget
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+http
+</features>
+ <name>
+formpost unit tests
+ </name>
+<tool>
+unit1308
+</tool>
+<file name="log/test-1308">
+Piece of the file that is to uploaded as a formpost
+</file>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1309 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1309
new file mode 100644
index 0000000..0e0cad1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1309
@@ -0,0 +1,1568 @@
+<testcase>
+<info>
+<keywords>
+unittest
+splay
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+splay unit tests
+ </name>
+<tool>
+unit1309
+</tool>
+</client>
+
+<verify>
+<stdout>
+Result:
+      0.1013[3]
+    0.1003[2]
+      0.954[3]
+  0.944[1]
+0.934[0]
+  0.895[1]
+        0.885[4]
+      0.875[3]
+        0.836[4]
+              0.826[7]
+            0.816[6]
+          0.777[5]
+                  0.767[9]
+                0.757[8]
+              0.718[7]
+                    0.708[10]
+                  0.698[9]
+                0.659[8]
+                  0.649[9]
+                    0.639[10]
+                        0.600[12]
+                          0.590[13]
+                      0.580[11]
+            0.541[6]
+                  0.531[9]
+                    0.521[10]
+                0.472[8]
+                  0.462[9]
+              0.413[7]
+    0.403[2]
+      0.393[3]
+          0.354[5]
+        0.344[4]
+          0.334[5]
+              0.295[7]
+            0.285[6]
+              0.275[7]
+                  0.236[9]
+                0.226[8]
+                  0.216[9]
+                      0.177[11]
+                        0.167[12]
+                    0.157[10]
+                      0.118[11]
+                          0.108[13]
+                        0.98[12]
+                          0.59[13]
+                              0.49[15]
+                            0.39[14]
+                              0.0[15]
+Tree look:
+      0.1013[3]
+    0.1003[2]
+      0.954[3]
+  0.944[1]
+0.934[0]
+  0.895[1]
+        0.885[4]
+      0.875[3]
+        0.836[4]
+              0.826[7]
+            0.816[6]
+          0.777[5]
+                  0.767[9]
+                0.757[8]
+              0.718[7]
+                    0.708[10]
+                  0.698[9]
+                0.659[8]
+                  0.649[9]
+                    0.639[10]
+                        0.600[12]
+                          0.590[13]
+                      0.580[11]
+            0.541[6]
+                  0.531[9]
+                    0.521[10]
+                0.472[8]
+                  0.462[9]
+              0.413[7]
+    0.403[2]
+      0.393[3]
+          0.354[5]
+        0.344[4]
+          0.334[5]
+              0.295[7]
+            0.285[6]
+              0.275[7]
+                  0.236[9]
+                0.226[8]
+                  0.216[9]
+                      0.177[11]
+                        0.167[12]
+                    0.157[10]
+                      0.118[11]
+                          0.108[13]
+                        0.98[12]
+                          0.59[13]
+                              0.49[15]
+                            0.39[14]
+                              0.0[15]
+remove pointer 7, payload 718
+Tree look:
+          0.1013[5]
+        0.1003[4]
+          0.954[5]
+      0.944[3]
+    0.934[2]
+  0.895[1]
+        0.885[4]
+      0.875[3]
+    0.836[2]
+          0.826[5]
+        0.816[4]
+      0.777[3]
+          0.767[5]
+        0.757[4]
+0.708[0]
+    0.698[2]
+      0.659[3]
+        0.649[4]
+          0.639[5]
+              0.600[7]
+                0.590[8]
+            0.580[6]
+  0.541[1]
+          0.531[5]
+            0.521[6]
+        0.472[4]
+          0.462[5]
+      0.413[3]
+    0.403[2]
+      0.393[3]
+          0.354[5]
+        0.344[4]
+          0.334[5]
+              0.295[7]
+            0.285[6]
+              0.275[7]
+                  0.236[9]
+                0.226[8]
+                  0.216[9]
+                      0.177[11]
+                        0.167[12]
+                    0.157[10]
+                      0.118[11]
+                          0.108[13]
+                        0.98[12]
+                          0.59[13]
+                              0.49[15]
+                            0.39[14]
+                              0.0[15]
+remove pointer 8, payload 236
+Tree look:
+              0.1013[7]
+            0.1003[6]
+              0.954[7]
+          0.944[5]
+        0.934[4]
+      0.895[3]
+            0.885[6]
+          0.875[5]
+        0.836[4]
+              0.826[7]
+            0.816[6]
+          0.777[5]
+              0.767[7]
+            0.757[6]
+    0.708[2]
+      0.698[3]
+        0.659[4]
+          0.649[5]
+            0.639[6]
+                0.600[8]
+                  0.590[9]
+              0.580[7]
+  0.541[1]
+            0.531[6]
+              0.521[7]
+          0.472[5]
+            0.462[6]
+        0.413[4]
+      0.403[3]
+    0.393[2]
+          0.354[5]
+        0.344[4]
+      0.334[3]
+            0.295[6]
+          0.285[5]
+        0.275[4]
+0.226[0]
+  0.216[1]
+      0.177[3]
+        0.167[4]
+    0.157[2]
+      0.118[3]
+          0.108[5]
+        0.98[4]
+          0.59[5]
+              0.49[7]
+            0.39[6]
+              0.0[7]
+remove pointer 9, payload 777
+Tree look:
+            0.1013[6]
+          0.1003[5]
+            0.954[6]
+        0.944[4]
+      0.934[3]
+    0.895[2]
+        0.885[4]
+      0.875[3]
+  0.836[1]
+      0.826[3]
+    0.816[2]
+0.767[0]
+    0.757[2]
+  0.708[1]
+      0.698[3]
+        0.659[4]
+          0.649[5]
+            0.639[6]
+                0.600[8]
+                  0.590[9]
+              0.580[7]
+    0.541[2]
+                0.531[8]
+                  0.521[9]
+              0.472[7]
+                0.462[8]
+            0.413[6]
+          0.403[5]
+        0.393[4]
+              0.354[7]
+            0.344[6]
+          0.334[5]
+                0.295[8]
+              0.285[7]
+            0.275[6]
+      0.226[3]
+        0.216[4]
+            0.177[6]
+              0.167[7]
+          0.157[5]
+            0.118[6]
+                0.108[8]
+              0.98[7]
+                0.59[8]
+                    0.49[10]
+                  0.39[9]
+                    0.0[10]
+remove pointer 10, payload 295
+Tree look:
+                0.1013[8]
+              0.1003[7]
+                0.954[8]
+            0.944[6]
+          0.934[5]
+        0.895[4]
+            0.885[6]
+          0.875[5]
+      0.836[3]
+          0.826[5]
+        0.816[4]
+    0.767[2]
+      0.757[3]
+  0.708[1]
+      0.698[3]
+        0.659[4]
+          0.649[5]
+            0.639[6]
+                0.600[8]
+                  0.590[9]
+              0.580[7]
+    0.541[2]
+                0.531[8]
+                  0.521[9]
+              0.472[7]
+                0.462[8]
+            0.413[6]
+          0.403[5]
+        0.393[4]
+            0.354[6]
+          0.344[5]
+      0.334[3]
+0.285[0]
+    0.275[2]
+  0.226[1]
+    0.216[2]
+        0.177[4]
+          0.167[5]
+      0.157[3]
+        0.118[4]
+            0.108[6]
+          0.98[5]
+            0.59[6]
+                0.49[8]
+              0.39[7]
+                0.0[8]
+remove pointer 11, payload 836
+Tree look:
+          0.1013[5]
+        0.1003[4]
+          0.954[5]
+      0.944[3]
+    0.934[2]
+  0.895[1]
+      0.885[3]
+    0.875[2]
+0.826[0]
+    0.816[2]
+  0.767[1]
+      0.757[3]
+    0.708[2]
+          0.698[5]
+            0.659[6]
+              0.649[7]
+                0.639[8]
+                    0.600[10]
+                      0.590[11]
+                  0.580[9]
+        0.541[4]
+                    0.531[10]
+                      0.521[11]
+                  0.472[9]
+                    0.462[10]
+                0.413[8]
+              0.403[7]
+            0.393[6]
+                0.354[8]
+              0.344[7]
+          0.334[5]
+      0.285[3]
+          0.275[5]
+        0.226[4]
+          0.216[5]
+              0.177[7]
+                0.167[8]
+            0.157[6]
+              0.118[7]
+                  0.108[9]
+                0.98[8]
+                  0.59[9]
+                      0.49[11]
+                    0.39[10]
+                      0.0[11]
+remove pointer 12, payload 354
+Tree look:
+              0.1013[7]
+            0.1003[6]
+              0.954[7]
+          0.944[5]
+        0.934[4]
+      0.895[3]
+          0.885[5]
+        0.875[4]
+    0.826[2]
+      0.816[3]
+  0.767[1]
+      0.757[3]
+    0.708[2]
+        0.698[4]
+          0.659[5]
+            0.649[6]
+              0.639[7]
+                  0.600[9]
+                    0.590[10]
+                0.580[8]
+      0.541[3]
+                0.531[8]
+                  0.521[9]
+              0.472[7]
+                0.462[8]
+            0.413[6]
+          0.403[5]
+        0.393[4]
+0.344[0]
+  0.334[1]
+    0.285[2]
+        0.275[4]
+      0.226[3]
+        0.216[4]
+            0.177[6]
+              0.167[7]
+          0.157[5]
+            0.118[6]
+                0.108[8]
+              0.98[7]
+                0.59[8]
+                    0.49[10]
+                  0.39[9]
+                    0.0[10]
+remove pointer 13, payload 895
+Tree look:
+        0.1013[4]
+      0.1003[3]
+        0.954[4]
+    0.944[2]
+  0.934[1]
+0.885[0]
+    0.875[2]
+  0.826[1]
+      0.816[3]
+    0.767[2]
+          0.757[5]
+        0.708[4]
+            0.698[6]
+              0.659[7]
+                0.649[8]
+                  0.639[9]
+                      0.600[11]
+                        0.590[12]
+                    0.580[10]
+          0.541[5]
+                    0.531[10]
+                      0.521[11]
+                  0.472[9]
+                    0.462[10]
+                0.413[8]
+              0.403[7]
+            0.393[6]
+      0.344[3]
+        0.334[4]
+          0.285[5]
+              0.275[7]
+            0.226[6]
+              0.216[7]
+                  0.177[9]
+                    0.167[10]
+                0.157[8]
+                  0.118[9]
+                      0.108[11]
+                    0.98[10]
+                      0.59[11]
+                          0.49[13]
+                        0.39[12]
+                          0.0[13]
+remove pointer 14, payload 413
+Tree look:
+            0.1013[6]
+          0.1003[5]
+            0.954[6]
+        0.944[4]
+      0.934[3]
+    0.885[2]
+      0.875[3]
+  0.826[1]
+      0.816[3]
+    0.767[2]
+          0.757[5]
+        0.708[4]
+          0.698[5]
+            0.659[6]
+              0.649[7]
+                0.639[8]
+                    0.600[10]
+                      0.590[11]
+                  0.580[9]
+      0.541[3]
+          0.531[5]
+            0.521[6]
+        0.472[4]
+          0.462[5]
+0.403[0]
+    0.393[2]
+  0.344[1]
+    0.334[2]
+      0.285[3]
+          0.275[5]
+        0.226[4]
+          0.216[5]
+              0.177[7]
+                0.167[8]
+            0.157[6]
+              0.118[7]
+                  0.108[9]
+                0.98[8]
+                  0.59[9]
+                      0.49[11]
+                    0.39[10]
+                      0.0[11]
+remove pointer 15, payload 954
+Tree look:
+    0.1013[2]
+  0.1003[1]
+0.944[0]
+  0.934[1]
+      0.885[3]
+        0.875[4]
+    0.826[2]
+          0.816[5]
+        0.767[4]
+              0.757[7]
+            0.708[6]
+              0.698[7]
+                0.659[8]
+                  0.649[9]
+                    0.639[10]
+                        0.600[12]
+                          0.590[13]
+                      0.580[11]
+          0.541[5]
+              0.531[7]
+                0.521[8]
+            0.472[6]
+              0.462[7]
+      0.403[3]
+          0.393[5]
+        0.344[4]
+          0.334[5]
+            0.285[6]
+                0.275[8]
+              0.226[7]
+                0.216[8]
+                    0.177[10]
+                      0.167[11]
+                  0.157[9]
+                    0.118[10]
+                        0.108[12]
+                      0.98[11]
+                        0.59[12]
+                            0.49[14]
+                          0.39[13]
+                            0.0[14]
+remove pointer 16, payload 472
+Tree look:
+        0.1013[4]
+      0.1003[3]
+    0.944[2]
+  0.934[1]
+      0.885[3]
+        0.875[4]
+    0.826[2]
+          0.816[5]
+        0.767[4]
+            0.757[6]
+          0.708[5]
+            0.698[6]
+              0.659[7]
+                0.649[8]
+                  0.639[9]
+                      0.600[11]
+                        0.590[12]
+                    0.580[10]
+      0.541[3]
+        0.531[4]
+          0.521[5]
+0.462[0]
+  0.403[1]
+      0.393[3]
+    0.344[2]
+      0.334[3]
+        0.285[4]
+            0.275[6]
+          0.226[5]
+            0.216[6]
+                0.177[8]
+                  0.167[9]
+              0.157[7]
+                0.118[8]
+                    0.108[10]
+                  0.98[9]
+                    0.59[10]
+                        0.49[12]
+                      0.39[11]
+                        0.0[12]
+remove pointer 17, payload 1013
+Tree look:
+0.1003[0]
+    0.944[2]
+  0.934[1]
+        0.885[4]
+          0.875[5]
+      0.826[3]
+            0.816[6]
+          0.767[5]
+              0.757[7]
+            0.708[6]
+              0.698[7]
+                0.659[8]
+                  0.649[9]
+                    0.639[10]
+                        0.600[12]
+                          0.590[13]
+                      0.580[11]
+        0.541[4]
+          0.531[5]
+            0.521[6]
+    0.462[2]
+      0.403[3]
+          0.393[5]
+        0.344[4]
+          0.334[5]
+            0.285[6]
+                0.275[8]
+              0.226[7]
+                0.216[8]
+                    0.177[10]
+                      0.167[11]
+                  0.157[9]
+                    0.118[10]
+                        0.108[12]
+                      0.98[11]
+                        0.59[12]
+                            0.49[14]
+                          0.39[13]
+                            0.0[14]
+remove pointer 18, payload 531
+Tree look:
+    0.1003[2]
+      0.944[3]
+  0.934[1]
+        0.885[4]
+          0.875[5]
+      0.826[3]
+          0.816[5]
+        0.767[4]
+            0.757[6]
+          0.708[5]
+            0.698[6]
+              0.659[7]
+                0.649[8]
+                  0.639[9]
+                      0.600[11]
+                        0.590[12]
+                    0.580[10]
+    0.541[2]
+0.521[0]
+  0.462[1]
+    0.403[2]
+        0.393[4]
+      0.344[3]
+        0.334[4]
+          0.285[5]
+              0.275[7]
+            0.226[6]
+              0.216[7]
+                  0.177[9]
+                    0.167[10]
+                0.157[8]
+                  0.118[9]
+                      0.108[11]
+                    0.98[10]
+                      0.59[11]
+                          0.49[13]
+                        0.39[12]
+                          0.0[13]
+remove pointer 19, payload 49
+Tree look:
+        0.1003[4]
+          0.944[5]
+      0.934[3]
+            0.885[6]
+              0.875[7]
+          0.826[5]
+              0.816[7]
+            0.767[6]
+                0.757[8]
+              0.708[7]
+                0.698[8]
+                  0.659[9]
+                    0.649[10]
+                      0.639[11]
+                          0.600[13]
+                            0.590[14]
+                        0.580[12]
+        0.541[4]
+    0.521[2]
+  0.462[1]
+      0.403[3]
+        0.393[4]
+    0.344[2]
+        0.334[4]
+      0.285[3]
+            0.275[6]
+          0.226[5]
+        0.216[4]
+              0.177[7]
+                0.167[8]
+            0.157[6]
+          0.118[5]
+                0.108[8]
+              0.98[7]
+            0.59[6]
+0.39[0]
+  0.0[1]
+remove pointer 20, payload 590
+Tree look:
+    0.1003[2]
+      0.944[3]
+  0.934[1]
+        0.885[4]
+          0.875[5]
+      0.826[3]
+        0.816[4]
+    0.767[2]
+          0.757[5]
+        0.708[4]
+      0.698[3]
+          0.659[5]
+        0.649[4]
+          0.639[5]
+            0.600[6]
+0.580[0]
+    0.541[2]
+  0.521[1]
+    0.462[2]
+          0.403[5]
+            0.393[6]
+        0.344[4]
+            0.334[6]
+          0.285[5]
+                0.275[8]
+              0.226[7]
+            0.216[6]
+                  0.177[9]
+                    0.167[10]
+                0.157[8]
+              0.118[7]
+                    0.108[10]
+                  0.98[9]
+                0.59[8]
+      0.39[3]
+        0.0[4]
+remove pointer 21, payload 108
+Tree look:
+        0.1003[4]
+          0.944[5]
+      0.934[3]
+            0.885[6]
+              0.875[7]
+          0.826[5]
+            0.816[6]
+        0.767[4]
+              0.757[7]
+            0.708[6]
+          0.698[5]
+              0.659[7]
+            0.649[6]
+              0.639[7]
+                0.600[8]
+    0.580[2]
+      0.541[3]
+  0.521[1]
+    0.462[2]
+          0.403[5]
+            0.393[6]
+        0.344[4]
+          0.334[5]
+      0.285[3]
+              0.275[7]
+            0.226[6]
+          0.216[5]
+              0.177[7]
+                0.167[8]
+            0.157[6]
+        0.118[4]
+0.98[0]
+    0.59[2]
+  0.39[1]
+    0.0[2]
+remove pointer 22, payload 649
+Tree look:
+      0.1003[3]
+        0.944[4]
+    0.934[2]
+        0.885[4]
+          0.875[5]
+      0.826[3]
+        0.816[4]
+  0.767[1]
+        0.757[4]
+      0.708[3]
+    0.698[2]
+      0.659[3]
+0.639[0]
+    0.600[2]
+  0.580[1]
+      0.541[3]
+    0.521[2]
+        0.462[4]
+              0.403[7]
+                0.393[8]
+            0.344[6]
+              0.334[7]
+          0.285[5]
+                  0.275[9]
+                0.226[8]
+              0.216[7]
+                  0.177[9]
+                    0.167[10]
+                0.157[8]
+            0.118[6]
+      0.98[3]
+          0.59[5]
+        0.39[4]
+          0.0[5]
+remove pointer 23, payload 167
+Tree look:
+          0.1003[5]
+            0.944[6]
+        0.934[4]
+            0.885[6]
+              0.875[7]
+          0.826[5]
+            0.816[6]
+      0.767[3]
+            0.757[6]
+          0.708[5]
+        0.698[4]
+          0.659[5]
+    0.639[2]
+      0.600[3]
+  0.580[1]
+      0.541[3]
+    0.521[2]
+        0.462[4]
+            0.403[6]
+              0.393[7]
+          0.344[5]
+            0.334[6]
+      0.285[3]
+            0.275[6]
+          0.226[5]
+        0.216[4]
+          0.177[5]
+0.157[0]
+  0.118[1]
+    0.98[2]
+        0.59[4]
+      0.39[3]
+        0.0[4]
+remove pointer 24, payload 708
+Tree look:
+      0.1003[3]
+        0.944[4]
+    0.934[2]
+        0.885[4]
+          0.875[5]
+      0.826[3]
+        0.816[4]
+  0.767[1]
+    0.757[2]
+0.698[0]
+    0.659[2]
+  0.639[1]
+      0.600[3]
+    0.580[2]
+          0.541[5]
+        0.521[4]
+            0.462[6]
+                0.403[8]
+                  0.393[9]
+              0.344[7]
+                0.334[8]
+          0.285[5]
+                0.275[8]
+              0.226[7]
+            0.216[6]
+              0.177[7]
+      0.157[3]
+        0.118[4]
+          0.98[5]
+              0.59[7]
+            0.39[6]
+              0.0[7]
+remove pointer 25, payload 226
+Tree look:
+          0.1003[5]
+            0.944[6]
+        0.934[4]
+            0.885[6]
+              0.875[7]
+          0.826[5]
+            0.816[6]
+      0.767[3]
+        0.757[4]
+    0.698[2]
+      0.659[3]
+  0.639[1]
+      0.600[3]
+    0.580[2]
+          0.541[5]
+        0.521[4]
+          0.462[5]
+              0.403[7]
+                0.393[8]
+            0.344[6]
+              0.334[7]
+      0.285[3]
+        0.275[4]
+0.216[0]
+    0.177[2]
+  0.157[1]
+    0.118[2]
+      0.98[3]
+          0.59[5]
+        0.39[4]
+          0.0[5]
+remove pointer 26, payload 767
+Tree look:
+    0.1003[2]
+      0.944[3]
+  0.934[1]
+      0.885[3]
+        0.875[4]
+    0.826[2]
+      0.816[3]
+0.757[0]
+  0.698[1]
+      0.659[3]
+    0.639[2]
+          0.600[5]
+        0.580[4]
+              0.541[7]
+            0.521[6]
+              0.462[7]
+                  0.403[9]
+                    0.393[10]
+                0.344[8]
+                  0.334[9]
+          0.285[5]
+            0.275[6]
+      0.216[3]
+          0.177[5]
+        0.157[4]
+          0.118[5]
+            0.98[6]
+                0.59[8]
+              0.39[7]
+                0.0[8]
+remove pointer 27, payload 285
+Tree look:
+        0.1003[4]
+          0.944[5]
+      0.934[3]
+          0.885[5]
+            0.875[6]
+        0.826[4]
+          0.816[5]
+    0.757[2]
+  0.698[1]
+      0.659[3]
+    0.639[2]
+        0.600[4]
+      0.580[3]
+          0.541[5]
+        0.521[4]
+          0.462[5]
+              0.403[7]
+                0.393[8]
+            0.344[6]
+              0.334[7]
+0.275[0]
+  0.216[1]
+      0.177[3]
+    0.157[2]
+      0.118[3]
+        0.98[4]
+            0.59[6]
+          0.39[5]
+            0.0[6]
+remove pointer 28, payload 826
+Tree look:
+    0.1003[2]
+      0.944[3]
+  0.934[1]
+    0.885[2]
+      0.875[3]
+0.816[0]
+  0.757[1]
+    0.698[2]
+          0.659[5]
+        0.639[4]
+            0.600[6]
+          0.580[5]
+              0.541[7]
+            0.521[6]
+              0.462[7]
+                  0.403[9]
+                    0.393[10]
+                0.344[8]
+                  0.334[9]
+      0.275[3]
+        0.216[4]
+            0.177[6]
+          0.157[5]
+            0.118[6]
+              0.98[7]
+                  0.59[9]
+                0.39[8]
+                  0.0[9]
+remove pointer 29, payload 344
+Tree look:
+        0.1003[4]
+          0.944[5]
+      0.934[3]
+        0.885[4]
+          0.875[5]
+    0.816[2]
+  0.757[1]
+    0.698[2]
+          0.659[5]
+        0.639[4]
+          0.600[5]
+      0.580[3]
+            0.541[6]
+          0.521[5]
+        0.462[4]
+          0.403[5]
+            0.393[6]
+0.334[0]
+  0.275[1]
+    0.216[2]
+        0.177[4]
+      0.157[3]
+        0.118[4]
+          0.98[5]
+              0.59[7]
+            0.39[6]
+              0.0[7]
+remove pointer 30, payload 885
+Tree look:
+    0.1003[2]
+      0.944[3]
+  0.934[1]
+0.875[0]
+  0.816[1]
+    0.757[2]
+        0.698[4]
+              0.659[7]
+            0.639[6]
+              0.600[7]
+          0.580[5]
+                0.541[8]
+              0.521[7]
+            0.462[6]
+              0.403[7]
+                0.393[8]
+      0.334[3]
+        0.275[4]
+          0.216[5]
+              0.177[7]
+            0.157[6]
+              0.118[7]
+                0.98[8]
+                    0.59[10]
+                  0.39[9]
+                    0.0[10]
+remove pointer 31, payload 403
+Tree look:
+        0.1003[4]
+          0.944[5]
+      0.934[3]
+    0.875[2]
+  0.816[1]
+    0.757[2]
+        0.698[4]
+            0.659[6]
+          0.639[5]
+            0.600[6]
+      0.580[3]
+            0.541[6]
+          0.521[5]
+        0.462[4]
+0.393[0]
+  0.334[1]
+    0.275[2]
+      0.216[3]
+          0.177[5]
+        0.157[4]
+          0.118[5]
+            0.98[6]
+                0.59[8]
+              0.39[7]
+                0.0[8]
+remove pointer 32, payload 944
+Tree look:
+  0.1003[1]
+0.934[0]
+    0.875[2]
+  0.816[1]
+      0.757[3]
+          0.698[5]
+              0.659[7]
+            0.639[6]
+              0.600[7]
+        0.580[4]
+              0.541[7]
+            0.521[6]
+          0.462[5]
+    0.393[2]
+      0.334[3]
+        0.275[4]
+          0.216[5]
+              0.177[7]
+            0.157[6]
+              0.118[7]
+                0.98[8]
+                    0.59[10]
+                  0.39[9]
+                    0.0[10]
+remove pointer 33, payload 462
+Tree look:
+      0.1003[3]
+    0.934[2]
+      0.875[3]
+  0.816[1]
+      0.757[3]
+        0.698[4]
+            0.659[6]
+          0.639[5]
+            0.600[6]
+    0.580[2]
+        0.541[4]
+      0.521[3]
+0.393[0]
+  0.334[1]
+    0.275[2]
+      0.216[3]
+          0.177[5]
+        0.157[4]
+          0.118[5]
+            0.98[6]
+                0.59[8]
+              0.39[7]
+                0.0[8]
+remove pointer 34, payload 1003
+Tree look:
+0.934[0]
+    0.875[2]
+  0.816[1]
+        0.757[4]
+          0.698[5]
+              0.659[7]
+            0.639[6]
+              0.600[7]
+      0.580[3]
+          0.541[5]
+        0.521[4]
+    0.393[2]
+      0.334[3]
+        0.275[4]
+          0.216[5]
+              0.177[7]
+            0.157[6]
+              0.118[7]
+                0.98[8]
+                    0.59[10]
+                  0.39[9]
+                    0.0[10]
+remove pointer 35, payload 521
+Tree look:
+    0.934[2]
+      0.875[3]
+  0.816[1]
+      0.757[3]
+        0.698[4]
+            0.659[6]
+          0.639[5]
+            0.600[6]
+    0.580[2]
+      0.541[3]
+0.393[0]
+  0.334[1]
+    0.275[2]
+      0.216[3]
+          0.177[5]
+        0.157[4]
+          0.118[5]
+            0.98[6]
+                0.59[8]
+              0.39[7]
+                0.0[8]
+remove pointer 36, payload 39
+Tree look:
+        0.934[4]
+          0.875[5]
+      0.816[3]
+          0.757[5]
+            0.698[6]
+                0.659[8]
+              0.639[7]
+                0.600[8]
+        0.580[4]
+          0.541[5]
+    0.393[2]
+  0.334[1]
+      0.275[3]
+    0.216[2]
+          0.177[5]
+        0.157[4]
+      0.118[3]
+        0.98[4]
+          0.59[5]
+0.0[0]
+remove pointer 37, payload 580
+Tree look:
+    0.934[2]
+      0.875[3]
+  0.816[1]
+    0.757[2]
+      0.698[3]
+          0.659[5]
+        0.639[4]
+          0.600[5]
+0.541[0]
+  0.393[1]
+    0.334[2]
+          0.275[5]
+        0.216[4]
+              0.177[7]
+            0.157[6]
+          0.118[5]
+            0.98[6]
+              0.59[7]
+      0.0[3]
+remove pointer 38, payload 98
+Tree look:
+        0.934[4]
+          0.875[5]
+      0.816[3]
+        0.757[4]
+          0.698[5]
+              0.659[7]
+            0.639[6]
+              0.600[7]
+    0.541[2]
+  0.393[1]
+    0.334[2]
+          0.275[5]
+        0.216[4]
+            0.177[6]
+          0.157[5]
+      0.118[3]
+0.59[0]
+  0.0[1]
+remove pointer 39, payload 639
+Tree look:
+      0.934[3]
+        0.875[4]
+    0.816[2]
+  0.757[1]
+    0.698[2]
+      0.659[3]
+0.600[0]
+  0.541[1]
+    0.393[2]
+        0.334[4]
+              0.275[7]
+            0.216[6]
+                0.177[8]
+              0.157[7]
+          0.118[5]
+      0.59[3]
+        0.0[4]
+remove pointer 40, payload 157
+Tree look:
+          0.934[5]
+            0.875[6]
+        0.816[4]
+      0.757[3]
+        0.698[4]
+          0.659[5]
+    0.600[2]
+  0.541[1]
+    0.393[2]
+      0.334[3]
+          0.275[5]
+        0.216[4]
+          0.177[5]
+0.118[0]
+  0.59[1]
+    0.0[2]
+remove pointer 41, payload 698
+Tree look:
+      0.934[3]
+        0.875[4]
+    0.816[2]
+  0.757[1]
+0.659[0]
+  0.600[1]
+    0.541[2]
+        0.393[4]
+          0.334[5]
+              0.275[7]
+            0.216[6]
+              0.177[7]
+      0.118[3]
+        0.59[4]
+          0.0[5]
+remove pointer 42, payload 216
+Tree look:
+          0.934[5]
+            0.875[6]
+        0.816[4]
+      0.757[3]
+    0.659[2]
+  0.600[1]
+    0.541[2]
+        0.393[4]
+      0.334[3]
+        0.275[4]
+0.177[0]
+  0.118[1]
+    0.59[2]
+      0.0[3]
+remove pointer 43, payload 757
+Tree look:
+    0.934[2]
+      0.875[3]
+  0.816[1]
+0.659[0]
+  0.600[1]
+      0.541[3]
+          0.393[5]
+        0.334[4]
+          0.275[5]
+    0.177[2]
+      0.118[3]
+        0.59[4]
+          0.0[5]
+remove pointer 44, payload 275
+Tree look:
+        0.934[4]
+          0.875[5]
+      0.816[3]
+    0.659[2]
+  0.600[1]
+      0.541[3]
+        0.393[4]
+    0.334[2]
+0.177[0]
+  0.118[1]
+    0.59[2]
+      0.0[3]
+remove pointer 45, payload 816
+Tree look:
+  0.934[1]
+    0.875[2]
+0.659[0]
+  0.600[1]
+        0.541[4]
+          0.393[5]
+      0.334[3]
+    0.177[2]
+      0.118[3]
+        0.59[4]
+          0.0[5]
+remove pointer 46, payload 334
+Tree look:
+      0.934[3]
+        0.875[4]
+    0.659[2]
+  0.600[1]
+    0.541[2]
+      0.393[3]
+0.177[0]
+  0.118[1]
+    0.59[2]
+      0.0[3]
+remove pointer 47, payload 875
+Tree look:
+  0.934[1]
+0.659[0]
+  0.600[1]
+      0.541[3]
+        0.393[4]
+    0.177[2]
+      0.118[3]
+        0.59[4]
+          0.0[5]
+remove pointer 48, payload 393
+Tree look:
+      0.934[3]
+    0.659[2]
+  0.600[1]
+    0.541[2]
+0.177[0]
+  0.118[1]
+    0.59[2]
+      0.0[3]
+remove pointer 49, payload 934
+Tree look:
+0.659[0]
+  0.600[1]
+      0.541[3]
+    0.177[2]
+      0.118[3]
+        0.59[4]
+          0.0[5]
+remove pointer 0, payload 0
+Tree look:
+  0.659[1]
+0.600[0]
+      0.541[3]
+    0.177[2]
+  0.118[1]
+    0.59[2]
+remove pointer 1, payload 541
+Tree look:
+    0.659[2]
+  0.600[1]
+0.177[0]
+  0.118[1]
+    0.59[2]
+remove pointer 2, payload 59
+Tree look:
+      0.659[3]
+    0.600[2]
+  0.177[1]
+0.118[0]
+remove pointer 3, payload 600
+Tree look:
+  0.659[1]
+0.177[0]
+  0.118[1]
+remove pointer 4, payload 118
+Tree look:
+  0.659[1]
+0.177[0]
+remove pointer 5, payload 659
+Tree look:
+0.177[0]
+remove pointer 6, payload 177
+Removing nodes not larger than 0
+removed payload 0[0]
+Removing nodes not larger than 100
+removed payload 39[0]
+removed payload 49[0]
+removed payload 49[1]
+removed payload 59[0]
+removed payload 59[1]
+removed payload 59[2]
+removed payload 98[0]
+removed payload 98[1]
+removed payload 98[2]
+Removing nodes not larger than 200
+removed payload 108[0]
+removed payload 118[0]
+removed payload 118[1]
+removed payload 157[0]
+removed payload 157[1]
+removed payload 167[0]
+removed payload 167[1]
+removed payload 167[2]
+removed payload 177[0]
+Removing nodes not larger than 300
+removed payload 216[0]
+removed payload 226[0]
+removed payload 226[1]
+removed payload 236[0]
+removed payload 236[1]
+removed payload 236[2]
+removed payload 275[0]
+removed payload 275[1]
+removed payload 275[2]
+removed payload 285[0]
+removed payload 295[0]
+removed payload 295[1]
+Removing nodes not larger than 400
+removed payload 334[0]
+removed payload 334[1]
+removed payload 344[0]
+removed payload 344[1]
+removed payload 344[2]
+removed payload 354[0]
+removed payload 393[0]
+Removing nodes not larger than 500
+removed payload 403[0]
+removed payload 403[1]
+removed payload 413[0]
+removed payload 413[1]
+removed payload 413[2]
+removed payload 462[0]
+removed payload 472[0]
+removed payload 472[1]
+Removing nodes not larger than 600
+removed payload 521[0]
+removed payload 521[1]
+removed payload 521[2]
+removed payload 531[0]
+removed payload 541[0]
+removed payload 541[1]
+removed payload 580[0]
+removed payload 580[1]
+removed payload 590[0]
+removed payload 590[1]
+removed payload 590[2]
+removed payload 600[0]
+Removing nodes not larger than 700
+removed payload 639[0]
+removed payload 649[0]
+removed payload 649[1]
+removed payload 659[0]
+removed payload 659[1]
+removed payload 659[2]
+removed payload 698[0]
+removed payload 698[1]
+removed payload 698[2]
+Removing nodes not larger than 800
+removed payload 708[0]
+removed payload 718[0]
+removed payload 718[1]
+removed payload 757[0]
+removed payload 757[1]
+removed payload 767[0]
+removed payload 767[1]
+removed payload 767[2]
+removed payload 777[0]
+Removing nodes not larger than 900
+removed payload 816[0]
+removed payload 826[0]
+removed payload 826[1]
+removed payload 836[0]
+removed payload 836[1]
+removed payload 836[2]
+removed payload 875[0]
+removed payload 875[1]
+removed payload 875[2]
+removed payload 885[0]
+removed payload 895[0]
+removed payload 895[1]
+Removing nodes not larger than 1000
+removed payload 934[0]
+removed payload 934[1]
+removed payload 944[0]
+removed payload 944[1]
+removed payload 944[2]
+removed payload 954[0]
+Removing nodes not larger than 1100
+removed payload 1003[0]
+removed payload 1003[1]
+removed payload 1013[0]
+removed payload 1013[1]
+removed payload 1013[2]
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test131 b/ap/lib/libcurl/curl-7.54.1/tests/data/test131
new file mode 100644
index 0000000..6e99d8a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test131
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+LIST
+netrc
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+#
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP (optional .netrc; user/no pass) dir list PASV
+ </name>
+ <command>
+--netrc-optional --netrc-file log/netrc131 ftp://user2@%HOSTIP:%FTPPORT/
+</command>
+<file name="log/netrc131" >
+# the following two lines were created while testing curl
+machine %HOSTIP login user1 password passwd1
+machine %HOSTIP login user2 password passwd2
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER user2

+PASS passwd2

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1310 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1310
new file mode 100644
index 0000000..9ffe0d5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1310
@@ -0,0 +1,125 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 34
+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+
+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 34
+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+
+HTTP/1.1 200 Things are fine in server land swsclose
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM_WB
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM delegation to winbind helper
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+# set path to fake_auth instead of real ntlm_auth to generate NTLM type1 and type 3 messages
+CURL_NTLM_WB_FILE=%PWD/server/fake_ntlm
+# set source directory so fake_ntlm can find the test files
+CURL_NTLM_AUTH_SRCDIR=%SRCDIR
+# set the test number
+CURL_NTLM_AUTH_TESTNUM=1310
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/1310 -u testuser:anypasswd --ntlm-wb
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1310 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAA

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /1310 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAE8AAAAYABgAZwAAAAAAAABAAAAACAAIAEAAAAAHAAcASAAAAAAAAAAAAAAAggEAAHRlc3R1c2VyVU5LTk9XTlpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOQ==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+# Input and output (type 1 message) for fake_ntlm
+<ntlm_auth_type1>
+<input>
+YR
+</input>
+<output>
+YR TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAA
+</output>
+</ntlm_auth_type1>
+# Input and output (type 3 message) for fake_ntlm
+<ntlm_auth_type3>
+<input>
+TT TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+</input>
+<output>
+KK TlRMTVNTUAADAAAAGAAYAE8AAAAYABgAZwAAAAAAAABAAAAACAAIAEAAAAAHAAcASAAAAAAAAAAAAAAAggEAAHRlc3R1c2VyVU5LTk9XTlpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOQ==
+</output>
+</ntlm_auth_type3>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1311 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1311
new file mode 100644
index 0000000..e47647c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1311
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1311; charset=funny; option=strange
+
+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -J output in
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -J and Content-Disposition
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1311 -J -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1311 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/name1311">
+12345
+</file>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1312 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1312
new file mode 100644
index 0000000..bed492c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1312
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: inline; filename="name1312;weird"
+
+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -J output in
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -J, Content-Disposition and ; in filename
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+%HOSTIP:%HTTPPORT/1312 -J -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1312 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/name1312;weird">
+12345
+</file>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1313 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1313
new file mode 100644
index 0000000..2331ae9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1313
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: inline; filename='name1313
+
+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -J output in
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -J, Content-Disposition, uneven quotes
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1313 -J -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1313 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/name1313">
+12345
+</file>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1314 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1314
new file mode 100644
index 0000000..078ada6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1314
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsbounce
+Server: test-server/fake
+Location: //somewhere.example.com/reply/1314
+Content-Length: 32
+Connection: close
+
+Redirect to the same URL again!
+</data>
+
+<data1>
+HTTP/1.1 200 okidoki
+Server: test-server/fake
+Content-Length: 4
+Connection: close
+
+moo
+</data1>
+
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsbounce
+Server: test-server/fake
+Location: //somewhere.example.com/reply/1314
+Content-Length: 32
+Connection: close
+
+HTTP/1.1 200 okidoki
+Server: test-server/fake
+Content-Length: 4
+Connection: close
+
+moo
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following a // prefixed url
+ </name>
+ <command>
+http://firstplace.example.com/want/1314 -L -x http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://firstplace.example.com/want/1314 HTTP/1.1

+Host: firstplace.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://somewhere.example.com/reply/1314 HTTP/1.1

+Host: somewhere.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1315 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1315
new file mode 100644
index 0000000..c2f158a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1315
@@ -0,0 +1,83 @@
+<testcase>
+# Based on tests 186 and 1053
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP file upload
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting - -F with three files, one with explicit type
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1315 -F name=value -F 'file=@log/test1315.txt,log/test1315.txt;type=magic/content,log/test1315.txt'
+</command>
+# We create this file before the command is invoked!
+<file name="log/test1315.txt">
+dummy data
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+(^User-Agent:.*|-----+\w+)
+</strip>
+<protocol>
+POST /we/want/1315 HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 795

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763

+

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="name"

+

+value

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="file"

+Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa

+

+Content-Disposition: attachment; filename="test1315.txt"

+Content-Type: text/plain

+

+dummy data
+

+------------------------------9ef8d6205763

+Content-Disposition: attachment; filename="test1315.txt"

+Content-Type: magic/content

+

+dummy data
+

+------------------------------9ef8d6205763

+Content-Disposition: attachment; filename="test1315.txt"

+Content-Type: text/plain

+

+dummy data
+

+------------------------------aaaaaaaaaaaa--

+------------------------------9ef8d6205763--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1316 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1316
new file mode 100644
index 0000000..d6ea5e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1316
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+HTTP
+HTTP CONNECT
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+Magic: sure you can FTP me

+

+</connect>
+
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+HTTP/1.1 200 Mighty fine indeed

+Magic: sure you can FTP me

+

+HTTP/1.1 200 Mighty fine indeed

+Magic: sure you can FTP me

+

+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+
+# please send the real CONNECT connect off to the FTP server's port
+<connectport>
+%FTPPORT
+</connectport>
+<server>
+ftp
+http-proxy
+</server>
+<features>
+http
+</features>
+ <name>
+FTP LIST tunneled through HTTP proxy
+ </name>
+ <command>
+ftp://ftp.1316:%FTPPORT/ -p -x %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1317 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1317
new file mode 100644
index 0000000..d41886a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1317
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--resolve
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP with --resolve
+</name>
+<command>
+--resolve example.com:%HTTPPORT:%HOSTIP http://example.com:%HTTPPORT/1317
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1317 HTTP/1.1

+Host: example.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1318 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1318
new file mode 100644
index 0000000..dc182dc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1318
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--resolve
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+
+</data>
+<data1>
+HTTP/1.1 200 second version
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with --resolve and same host name using different cases
+ </name>
+ <command>
+--resolve MiXeDcAsE.cOm:%HTTPPORT:%HOSTIP http://MiXeDcAsE.cOm:%HTTPPORT/1318 http://mixedcase.com:%HTTPPORT/13180001
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1318 HTTP/1.1

+Host: MiXeDcAsE.cOm:%HTTPPORT

+Accept: */*

+

+GET /13180001 HTTP/1.1

+Host: mixedcase.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1319 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1319
new file mode 100644
index 0000000..0520b1b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1319
@@ -0,0 +1,86 @@
+<testcase>
+<info>
+<keywords>
+POP3
+RETR
+HTTP
+HTTP CONNECT
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+pop3: sure hit me

+

+</connect>
+
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<data>
+From: me@somewhere
+To: fake@nowhere
+
+body
+
+--
+  yours sincerely

+</data>
+
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+pop3: sure hit me

+

+From: me@somewhere
+To: fake@nowhere
+
+body
+
+--
+  yours sincerely

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+http-proxy
+</server>
+<features>
+http
+</features>
+ <name>
+POP3 fetch tunneled through HTTP proxy
+ </name>
+ <command>
+pop3://pop.1319:%POP3PORT/1319 -p -x %HOSTIP:%PROXYPORT -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:
+</strip>
+<protocol>
+CAPA

+USER user

+PASS secret

+RETR 1319

+QUIT

+</protocol>
+<proxy>
+CONNECT pop.1319:%POP3PORT HTTP/1.1

+Host: pop.1319:%POP3PORT

+User-Agent: curl/7.24.0-DEV (i686-pc-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0e zlib/1.2.3.4 c-ares/1.7.6-DEV libidn/1.23 libssh2/1.4.0_DEV librtmp/2.2e

+Proxy-Connection: Keep-Alive

+

+</proxy>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test132 b/ap/lib/libcurl/curl-7.54.1/tests/data/test132
new file mode 100644
index 0000000..51cb89c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test132
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+LIST
+netrc
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP (optional .netrc; user/passwd supplied) dir list PASV
+ </name>
+ <command>
+--netrc-optional --netrc-file log/netrc132 ftp://mary:mark@%HOSTIP:%FTPPORT/
+</command>
+<file name="log/netrc132" >
+# the following two lines were created while testing curl
+machine %HOSTIP login user1 password passwd1
+machine %HOSTIP login user2 password passwd2
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER mary

+PASS mark

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1320 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1320
new file mode 100644
index 0000000..7a15f80
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1320
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+HTTP
+HTTP CONNECT
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+smtp: sure hit me

+

+</connect>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+http-proxy
+</server>
+<features>
+http
+</features>
+ <name>
+SMTP send tunneled through HTTP proxy
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://smtp.1320:%SMTPPORT/1320 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+EHLO 1320

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+<proxy>
+CONNECT smtp.1320:%SMTPPORT HTTP/1.1

+Host: smtp.1320:%SMTPPORT

+User-Agent: curl/7.24.0-DEV (i686-pc-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0e zlib/1.2.3.4 c-ares/1.7.6-DEV libidn/1.23 libssh2/1.4.0_DEV librtmp/2.2e

+Proxy-Connection: Keep-Alive

+

+</proxy>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1321 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1321
new file mode 100644
index 0000000..266fd88
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1321
@@ -0,0 +1,82 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+FETCH
+HTTP
+HTTP CONNECT
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+imap: sure hit me

+

+</connect>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+imap: sure hit me

+

+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+http-proxy
+</server>
+<features>
+http
+</features>
+ <name>
+IMAP FETCH tunneled through HTTP proxy
+ </name>
+ <command>
+'imap://imap.1321:%IMAPPORT/1321/;UID=1' -u user:secret -p -x %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 1321

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+<proxy>
+CONNECT imap.1321:%IMAPPORT HTTP/1.1

+Host: imap.1321:%IMAPPORT

+User-Agent: curl/7.24.0-DEV (i686-pc-linux-gnu) libcurl/7.24.0-DEV OpenSSL/1.0.0e zlib/1.2.3.4 c-ares/1.7.6-DEV libidn/1.23 libssh2/1.4.0_DEV librtmp/2.2e

+Proxy-Connection: Keep-Alive

+

+</proxy>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1322 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1322
new file mode 100644
index 0000000..bf10a8d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1322
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--resolve
+trailing dot
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP with --resolve and hostname with trailing dot
+</name>
+<command>
+--resolve example.com:%HTTPPORT:%HOSTIP http://example.com.:%HTTPPORT/1322
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1322 HTTP/1.1

+Host: example.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1325 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1325
new file mode 100644
index 0000000..9f5ee58
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1325
@@ -0,0 +1,80 @@
+<testcase>
+# http://greenbytes.de/tech/webdav/draft-reschke-http-status-308-latest.html
+<info>
+<keywords>
+HTTP
+HTTP GET
+308
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 308 OK swsclose

+Location: 13250002

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

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 308 OK swsclose

+Location: 13250002

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 308-redirect with POST
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/1325 -L -d "moo"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /we/1325 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+mooPOST /we/13250002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+moo
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1326 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1326
new file mode 100644
index 0000000..2bcf64b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1326
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+TELNET
+UPLOAD
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 swsclose
+
+moo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+telnet
+</features>
+ <name>
+TELNET to HTTP server
+ </name>
+<stdin>
+GET /we/want/1326 HTTP/1.0

+

+</stdin>
+ <command>
+telnet://%HOSTIP:%HTTPPORT --upload-file -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /we/want/1326 HTTP/1.0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1327 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1327
new file mode 100644
index 0000000..a6e3d4f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1327
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+TELNET
+UPLOAD
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+telnet
+</features>
+ <name>
+TELNET check of upload with stdout redirected
+ </name>
+<stdin>
+GET /ignore/for/1327 HTTP/1.0

+

+</stdin>
+<file name="log/1327.txt">
+GET /we/want/1327 HTTP/1.0

+

+</file>
+ <command option="no-output">
+telnet://%HOSTIP:%HTTPPORT -T log/1327.txt
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /we/want/1327 HTTP/1.0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1328 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1328
new file mode 100644
index 0000000..0608888
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1328
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+--fail
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 404 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Funny-head: yesyes
+
+-noo-
+</data>
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Funny-head: yesyes
+
+-yes-
+</data1>
+<datacheck>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Funny-head: yesyes
+
+-yes-
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET a globbed range with -f
+ </name>
+ <command>
+-f 'http://%HOSTIP:%HTTPPORT/[13280000-13280001]' -o log/#1
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /13280000 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /13280001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1329 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1329
new file mode 100644
index 0000000..3d2d0cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1329
@@ -0,0 +1,30 @@
+<testcase>
+<info>
+<keywords>
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+/-prefixed proxy name
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/that/page/1329 -x "/server"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 5 == CURLE_COULDNT_RESOLVE_PROXY
+<errorcode>
+5
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test133 b/ap/lib/libcurl/curl-7.54.1/tests/data/test133
new file mode 100644
index 0000000..0b4d2ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test133
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+LIST
+netrc
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP (compulsory .netrc; ignored user/passwd) dir list PASV
+ </name>
+ <command>
+-n --netrc-file log/netrc133 ftp://mary:mark@%HOSTIP:%FTPPORT/
+</command>
+<file name="log/netrc133" >
+# the following two lines were created while testing curl
+machine %HOSTIP login user1 password passwd1
+machine %HOSTIP login user2 password passwd2
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER user1

+PASS passwd1

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1330 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1330
new file mode 100644
index 0000000..1fb5a66
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1330
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+unittest
+TrackMemory
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+TrackMemory
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+unit1330
+</tool>
+
+<name>
+unit tests memory tracking operational
+</name>
+<command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/memdump">
+MEM unit1330.c: malloc()
+MEM unit1330.c: free()
+</file>
+<stripfile>
+s/ =.*//
+s/\(.*\)/()/
+s/:\d+/:/
+s:^(MEM )(.*/)(.*):$1$3:
+</stripfile>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1331 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1331
new file mode 100644
index 0000000..3299df4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1331
@@ -0,0 +1,89 @@
+<testcase>
+# Test case inspired by this question on stackoverflow:
+#
+# http://stackoverflow.com/questions/10017165/use-libcurl-with-bluecoat-cookie-proxy
+#
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 407 Me not know you swsbounce

+Date: Tue, 25 Sep 2001 19:37:44 GMT

+Content-Type: text/html

+Set-Cookie: proxycookie=weirdo; Path=/

+Cache-control: private

+Content-Length: 62

+Proxy-Authenticate: Basic realm="moo on you"

+

+This server reply is for testing a simple cookie test case...
+</data>
+
+<data1>
+HTTP/1.1 200 Fine!

+Content-Type: text/html

+Content-Length: 6

+

+hello
+</data1>
+
+<datacheck>
+HTTP/1.1 407 Me not know you swsbounce

+Date: Tue, 25 Sep 2001 19:37:44 GMT

+Content-Type: text/html

+Set-Cookie: proxycookie=weirdo; Path=/

+Cache-control: private

+Content-Length: 62

+Proxy-Authenticate: Basic realm="moo on you"

+

+HTTP/1.1 200 Fine!

+Content-Type: text/html

+Content-Length: 6

+

+hello
+</datacheck>
+
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP --proxy-anyauth and 407 with cookies
+ </name>
+ <command>
+-U myname:mypassword -x %HOSTIP:%HTTPPORT http://z.x.com/1331 --proxy-anyauth -c log/dump1331
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://z.x.com/1331 HTTP/1.1

+Host: z.x.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://z.x.com/1331 HTTP/1.1

+Host: z.x.com

+Proxy-Authorization: Basic bXluYW1lOm15cGFzc3dvcmQ=

+Accept: */*

+Proxy-Connection: Keep-Alive

+Cookie: proxycookie=weirdo

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1332 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1332
new file mode 100644
index 0000000..3447b2d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1332
@@ -0,0 +1,80 @@
+<testcase>
+# test case cloned from 1076 and then 302 was replaced with 303
+<info>
+<keywords>
+HTTP
+HTTP POST
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 303 OK swsclose
+Location: moo.html&testcase=/13320002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 303 OK swsclose
+Location: moo.html&testcase=/13320002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with 303 redirect and --post303
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/blah/1332 -L -d "moo" --post303
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /blah/1332 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+mooPOST /blah/moo.html&testcase=/13320002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+moo
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1333 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1333
new file mode 100644
index 0000000..50ca42a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1333
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST zero length, chunked-encoded
+ </name>
+ <command>
+-d "" --header "Transfer-Encoding: chunked" http://%HOSTIP:%HTTPPORT/1333
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /1333 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Content-Type: application/x-www-form-urlencoded

+

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1334 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1334
new file mode 100644
index 0000000..59116e3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1334
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O without Content-Disposition, -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1334 -O -D log/heads1334
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1334 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1334">
+12345
+</file1>
+
+<file2 name="log/heads1334">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+<file3 name="log/stdout1334">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1335 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1335
new file mode 100644
index 0000000..bb499e7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1335
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O without Content-Disposition, -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1335 -O -D -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1335 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1335">
+12345
+</file1>
+
+<file2 name="log/stdout1335">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1336 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1336
new file mode 100644
index 0000000..ebe562b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1336
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1336; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O and Content-Disposition, -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1336 -O -D log/heads1336
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1336
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1336 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1336">
+12345
+</file1>
+
+<file2 name="log/heads1336">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1336; charset=funny; option=strange

+

+</file2>
+
+<file3 name="log/stdout1336">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1337 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1337
new file mode 100644
index 0000000..80a99fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1337
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1337; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O and Content-Disposition, -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1337 -O -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1337
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1337 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1337">
+12345
+</file1>
+
+<file2 name="log/stdout1337">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1337; charset=funny; option=strange

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1338 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1338
new file mode 100644
index 0000000..d96f804
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1338
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O and -J output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -J without Content-Disposition, -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1338 -J -O -D log/heads1338
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1338 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1338">
+12345
+</file1>
+
+<file2 name="log/heads1338">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+<file3 name="log/stdout1338">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1339 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1339
new file mode 100644
index 0000000..a3c1f0e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1339
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O and -J output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -J without Content-Disposition, -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1339 -J -O -D -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1339 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1339">
+12345
+</file1>
+
+<file2 name="log/stdout1339">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test134 b/ap/lib/libcurl/curl-7.54.1/tests/data/test134
new file mode 100644
index 0000000..e314b66
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test134
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+LIST
+netrc
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP (optional .netrc; programmatic user/passwd) dir list PASV
+ </name>
+ <command>
+--netrc-optional --netrc-file log/netrc134 -u romulus:rhemus ftp://mary:mark@%HOSTIP:%FTPPORT/
+</command>
+<file name="log/netrc134" >
+# the following two lines were created while testing curl
+machine %HOSTIP login user1 password passwd1
+machine %HOSTIP login user2 password passwd2
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER romulus

+PASS rhemus

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1340 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1340
new file mode 100644
index 0000000..81f1ed6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1340
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1340; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O and -J output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -J and Content-Disposition, -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1340 -J -O -D log/heads1340
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1340 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/name1340">
+12345
+</file1>
+
+<file2 name="log/heads1340">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1340; charset=funny; option=strange

+

+</file2>
+
+<file3 name="log/stdout1340" mode="text">
+curl: Saved to filename '%PWD/log/name1340'
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1341 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1341
new file mode 100644
index 0000000..b364ede
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1341
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1341; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O and -J output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -J and Content-Disposition, -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1341 -J -O -D -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1341 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/name1341">
+12345
+</file1>
+
+<file2 name="log/stdout1341">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1341; charset=funny; option=strange

+

+curl: Saved to filename '%PWD/log/name1341'
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1342 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1342
new file mode 100644
index 0000000..1d7889d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1342
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -i without Content-Disposition, -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1342 -i -O -D log/heads1342
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1342 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1342">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</file1>
+
+<file2 name="log/heads1342">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+<file3 name="log/stdout1342">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1343 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1343
new file mode 100644
index 0000000..a05cab0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1343
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -i without Content-Disposition, -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1343 -i -O -D -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1343 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1343">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</file1>
+
+<file2 name="log/stdout1343">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1344 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1344
new file mode 100644
index 0000000..ac354f0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1344
@@ -0,0 +1,89 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1344; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -i and Content-Disposition, -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1344 -i -O -D log/heads1344
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1344
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1344 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1344">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1344; charset=funny; option=strange

+

+12345
+</file1>
+
+<file2 name="log/heads1344">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1344; charset=funny; option=strange

+

+</file2>
+
+<file3 name="log/stdout1344">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1345 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1345
new file mode 100644
index 0000000..6d1201e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1345
@@ -0,0 +1,86 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1345; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -i and Content-Disposition, -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1345 -i -O -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1345
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1345 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1345">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1345; charset=funny; option=strange

+

+12345
+</file1>
+
+<file2 name="log/stdout1345">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1345; charset=funny; option=strange

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1346 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1346
new file mode 100644
index 0000000..347214e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1346
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -i without Content-Disposition, without -D
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1346 -i -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1346 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1346">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</file1>
+
+<file2 name="log/stdout1346">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1347 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1347
new file mode 100644
index 0000000..8eac42c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1347
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1347; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -i and Content-Disposition, without -D
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1347 -i -O
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1347
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1347 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/1347">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1347; charset=funny; option=strange

+

+12345
+</file1>
+
+<file2 name="log/stdout1347">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1348 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1348
new file mode 100644
index 0000000..5f374cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1348
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without Content-Disposition inside, using -O
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1348 -O
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1348

+RETR file1348

+QUIT

+</protocol>
+
+<file1 name="log/file1348">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1348">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1349 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1349
new file mode 100644
index 0000000..33906f8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1349
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1349 -O -D log/heads1349
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1349

+RETR file1349

+QUIT

+</protocol>
+
+<file1 name="log/file1349">
+fooo
+mooo
+</file1>
+
+# The final "221 bye bye baby" response to QUIT will not be recorded
+# since that is not considered part of this particular transfer!
+<file2 name="log/heads1349">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1349 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1349">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test135 b/ap/lib/libcurl/curl-7.54.1/tests/data/test135
new file mode 100644
index 0000000..10eb0ea
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test135
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+Range
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+0123456789abcdef
+0123456789abcdef
+0123456789abcdef
+0123456789abcdef
+</data>
+<datacheck nonewline="yes">
+0123456789abc
+</datacheck>
+<size>
+64
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP retrieve a byte-range
+ </name>
+ <command>
+-r 4-16 ftp://%HOSTIP:%FTPPORT/135
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 135

+REST 4

+RETR 135

+ABOR

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1350 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1350
new file mode 100644
index 0000000..b788597
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1350
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1350 -O -D -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1350

+RETR file1350

+QUIT

+</protocol>
+
+<file1 name="log/file1350">
+fooo
+mooo
+</file1>
+
+# The final "221 bye bye baby" response to QUIT will not be recorded
+# since that is not considered part of this particular transfer!
+<file2 name="log/stdout1350">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1350 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1351 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1351
new file mode 100644
index 0000000..3e9cc21
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1351
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -J -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1351 -O -J -D log/heads1351
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1351

+RETR file1351

+QUIT

+</protocol>
+
+<file1 name="log/file1351">
+fooo
+mooo
+</file1>
+
+# The final "221 bye bye baby" response to QUIT will not be recorded
+# since that is not considered part of this particular transfer!
+<file2 name="log/heads1351">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1351 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1351">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1352 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1352
new file mode 100644
index 0000000..cf690af
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1352
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -J -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1352 -O -J -D -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1352

+RETR file1352

+QUIT

+</protocol>
+
+<file1 name="log/file1352">
+fooo
+mooo
+</file1>
+
+# The final "221 bye bye baby" response to QUIT will not be recorded
+# since that is not considered part of this particular transfer!
+<file2 name="log/stdout1352">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1352 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1353 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1353
new file mode 100644
index 0000000..8bd751c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1353
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -i -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1353 -O -i -D log/heads1353
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1353

+RETR file1353

+QUIT

+</protocol>
+
+<file1 name="log/file1353">
+fooo
+mooo
+</file1>
+
+# The final "221 bye bye baby" response to QUIT will not be recorded
+# since that is not considered part of this particular transfer!
+<file2 name="log/heads1353">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1353 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1353">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1354 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1354
new file mode 100644
index 0000000..13c5a1b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1354
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -i -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1354 -O -i -D -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1354

+RETR file1354

+QUIT

+</protocol>
+
+<file1 name="log/file1354">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1354">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1354 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1355 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1355
new file mode 100644
index 0000000..e7a392c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1355
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file without C-D inside, using -O -i, without -D
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1355 -O -i
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1355

+RETR file1355

+QUIT

+</protocol>
+
+<file1 name="log/file1355">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1355">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1356 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1356
new file mode 100644
index 0000000..ea610a5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1356
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1356 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1356; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with Content-Disposition inside, using -O
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1356 -O
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1356
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1356

+RETR file1356

+QUIT

+</protocol>
+
+<file1 name="log/file1356">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1356; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1356">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1357 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1357
new file mode 100644
index 0000000..3df0ad3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1357
@@ -0,0 +1,99 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1357 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1357; charset=funny; option=strange
+
+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1357 -O -D log/heads1357
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1357
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1357

+RETR file1357

+QUIT

+</protocol>
+
+<file1 name="log/file1357">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1357; charset=funny; option=strange
+
+MOOOO
+</file1>
+
+<file2 name="log/heads1357">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 214

+150 Binary data connection for 1357 () (214 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1357">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1358 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1358
new file mode 100644
index 0000000..b0e2795
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1358
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1358 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1358; charset=funny; option=strange
+
+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1358 -O -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1358
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1358

+RETR file1358

+QUIT

+</protocol>
+
+<file1 name="log/file1358">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1358; charset=funny; option=strange
+
+MOOOO
+</file1>
+
+<file2 name="log/stdout1358">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 214

+150 Binary data connection for 1358 () (214 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1359 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1359
new file mode 100644
index 0000000..fc7851d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1359
@@ -0,0 +1,100 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1359 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1359; charset=funny; option=strange
+
+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -J -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1359 -O -J -D log/heads1359
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1359
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1359

+RETR file1359

+QUIT

+</protocol>
+
+<file1 name="log/file1359">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1359; charset=funny; option=strange
+
+MOOOO
+</file1>
+
+<file2 name="log/heads1359">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 214

+150 Binary data connection for 1359 () (214 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1359">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test136 b/ap/lib/libcurl/curl-7.54.1/tests/data/test136
new file mode 100644
index 0000000..25940b5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test136
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+0123456789abcdef
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with user and no password
+ </name>
+ <command>
+-u user: ftp://%HOSTIP:%FTPPORT/136
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER user

+PASS 

+PWD

+EPSV

+TYPE I

+SIZE 136

+RETR 136

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1360 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1360
new file mode 100644
index 0000000..0000d60
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1360
@@ -0,0 +1,97 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1360 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1360; charset=funny; option=strange
+
+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -J -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1360 -O -J -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1360
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1360

+RETR file1360

+QUIT

+</protocol>
+
+<file1 name="log/file1360">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1360; charset=funny; option=strange
+
+MOOOO
+</file1>
+
+<file2 name="log/stdout1360">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 214

+150 Binary data connection for 1360 () (214 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1361 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1361
new file mode 100644
index 0000000..884e0b2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1361
@@ -0,0 +1,99 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1361 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1361; charset=funny; option=strange
+
+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -i -D file
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1361 -O -i -D log/heads1361
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1361
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1361

+RETR file1361

+QUIT

+</protocol>
+
+<file1 name="log/file1361">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1361; charset=funny; option=strange
+
+MOOOO
+</file1>
+
+<file2 name="log/heads1361">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 214

+150 Binary data connection for 1361 () (214 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1361">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1362 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1362
new file mode 100644
index 0000000..98fffb6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1362
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1362 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1362; charset=funny; option=strange
+
+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -i -D stdout
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1362 -O -i -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1362
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1362

+RETR file1362

+QUIT

+</protocol>
+
+<file1 name="log/file1362">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name1362; charset=funny; option=strange
+
+MOOOO
+</file1>
+
+<file2 name="log/stdout1362">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 214

+150 Binary data connection for 1362 () (214 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1363 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1363
new file mode 100644
index 0000000..c34f05a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1363
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1363 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1363; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+ftp
+</server>
+<name>
+FTP download, file with C-D inside, using -O -i, without -D
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1363 -O -i
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/name1363
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1363

+RETR file1363

+QUIT

+</protocol>
+
+<file1 name="log/file1363">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1363; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1363">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1364 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1364
new file mode 100644
index 0000000..e8c981d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1364
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname without Content-Disposition, -D file
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1364 -o log/outfile1364 -D log/heads1364
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1364
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1364 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1364">
+12345
+</file1>
+
+<file2 name="log/heads1364">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+<file3 name="log/stdout1364">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1365 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1365
new file mode 100644
index 0000000..4a09cfd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1365
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname without Content-Disposition, -D stdout
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1365 -o log/outfile1365 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1365
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1365 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1365">
+12345
+</file1>
+
+<file2 name="log/stdout1365">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1366 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1366
new file mode 100644
index 0000000..62e3b0c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1366
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1366; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname and Content-Disposition, -D file
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1366 -o log/outfile1366 -D log/heads1366
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1366 log/name1366
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1366 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1366">
+12345
+</file1>
+
+<file2 name="log/heads1366">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1366; charset=funny; option=strange

+

+</file2>
+
+<file3 name="log/stdout1366">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1367 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1367
new file mode 100644
index 0000000..d4bd3d7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1367
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1367; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname and Content-Disposition, -D stdout
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1367 -o log/outfile1367 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1367 log/name1367
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1367 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1367">
+12345
+</file1>
+
+<file2 name="log/stdout1367">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1367; charset=funny; option=strange

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1368 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1368
new file mode 100644
index 0000000..6a926ab
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1368
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -J without Content-Disposition, -D file
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1368 -J -o log/outfile1368 -D log/heads1368
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1368
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1368 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1368">
+12345
+</file1>
+
+<file2 name="log/heads1368">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+<file3 name="log/stdout1368">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1369 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1369
new file mode 100644
index 0000000..5176ed0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1369
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -J without Content-Disposition, -D stdout
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1369 -J -o log/outfile1369 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1369
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1369 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1369">
+12345
+</file1>
+
+<file2 name="log/stdout1369">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test137 b/ap/lib/libcurl/curl-7.54.1/tests/data/test137
new file mode 100644
index 0000000..b8e2726
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test137
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+--data-binary
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+this is file contents
+</data>
+<servercmd>
+RETRNOSIZE
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download without size in RETR string
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/lululul/137
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+CWD lululul

+EPSV

+TYPE I

+SIZE 137

+RETR 137

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1370 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1370
new file mode 100644
index 0000000..d0abbdd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1370
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1370; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -J and Content-Disposition, -D file
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1370 -J -o log/outfile1370 -D log/heads1370
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1370 log/name1370
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1370 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1370">
+12345
+</file1>
+
+<file2 name="log/heads1370">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1370; charset=funny; option=strange

+

+</file2>
+
+<file3 name="log/stdout1370">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1371 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1371
new file mode 100644
index 0000000..fe3977f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1371
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1371; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -J and Content-Disposition, -D stdout
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1371 -J -o log/outfile1371 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1371 log/name1371
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1371 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1371">
+12345
+</file1>
+
+<file2 name="log/stdout1371">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1371; charset=funny; option=strange

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1372 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1372
new file mode 100644
index 0000000..a2b8ec9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1372
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -i without Content-Disposition, -D file
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1372 -i -o log/outfile1372 -D log/heads1372
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1372
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1372 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1372">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</file1>
+
+<file2 name="log/heads1372">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+<file3 name="log/stdout1372">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1373 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1373
new file mode 100644
index 0000000..ae906d7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1373
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -i without Content-Disposition, -D stdout
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1373 -i -o log/outfile1373 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1373
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1373 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1373">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</file1>
+
+<file2 name="log/stdout1373">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1374 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1374
new file mode 100644
index 0000000..f8d9d0d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1374
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1374; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -i and Content-Disposition, -D file
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1374 -i -o log/outfile1374 -D log/heads1374
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1374 log/name1374
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1374 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1374">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1374; charset=funny; option=strange

+

+12345
+</file1>
+
+<file2 name="log/heads1374">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1374; charset=funny; option=strange

+

+</file2>
+
+<file3 name="log/stdout1374">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1375 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1375
new file mode 100644
index 0000000..595f03a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1375
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1375; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -i and Content-Disposition, -D stdout
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1375 -i -o log/outfile1375 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1375 log/name1375
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1375 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1375">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1375; charset=funny; option=strange

+

+12345
+</file1>
+
+<file2 name="log/stdout1375">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1375; charset=funny; option=strange

+

+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1376 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1376
new file mode 100644
index 0000000..f34c277
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1376
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -i without Content-Disposition, without -D
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1376 -i -o log/outfile1376
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1376
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1376 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1376">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+12345
+</file1>
+
+<file2 name="log/stdout1376">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1377 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1377
new file mode 100644
index 0000000..f542b11
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1377
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1377; charset=funny; option=strange

+

+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname -i and Content-Disposition, without -D
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1377 -i -o log/outfile1377
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1377 log/name1377
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1377 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1377">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1377; charset=funny; option=strange

+

+12345
+</file1>
+
+<file2 name="log/stdout1377">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1378 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1378
new file mode 100644
index 0000000..e004afc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1378
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without Content-Disposition inside, using -o fname
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1378 -o log/download1378
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1378
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1378

+RETR file1378

+QUIT

+</protocol>
+
+<file1 name="log/download1378">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1378">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1379 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1379
new file mode 100644
index 0000000..81314b6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1379
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -D file
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1379 -o log/download1379 -D log/heads1379
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1379
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1379

+RETR file1379

+QUIT

+</protocol>
+
+<file1 name="log/download1379">
+fooo
+mooo
+</file1>
+
+<file2 name="log/heads1379">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1379 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1379">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test138 b/ap/lib/libcurl/curl-7.54.1/tests/data/test138
new file mode 100644
index 0000000..4eb73e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test138
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+this is file contents
+</data>
+<size>
+-1
+</size>
+<servercmd>
+RETRNOSIZE
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download without size in RETR string and no SIZE command
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/lululul/138
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+CWD lululul

+EPSV

+TYPE I

+SIZE 138

+RETR 138

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1380 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1380
new file mode 100644
index 0000000..e715270
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1380
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -D stdout
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1380 -o log/download1380 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1380
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1380

+RETR file1380

+QUIT

+</protocol>
+
+<file1 name="log/download1380">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1380">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1380 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1381 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1381
new file mode 100644
index 0000000..a55c6b5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1381
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -J -D file
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1381 -o log/download1381 -J -D log/heads1381
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1381
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1381

+RETR file1381

+QUIT

+</protocol>
+
+<file1 name="log/download1381">
+fooo
+mooo
+</file1>
+
+<file2 name="log/heads1381">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1381 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1381">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1382 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1382
new file mode 100644
index 0000000..a657e1f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1382
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -J -D stdout
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1382 -o log/download1382 -J -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1382
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1382

+RETR file1382

+QUIT

+</protocol>
+
+<file1 name="log/download1382">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1382">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1382 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1383 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1383
new file mode 100644
index 0000000..0694a22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1383
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -i -D file
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1383 -o log/download1383 -i -D log/heads1383
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1383
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1383

+RETR file1383

+QUIT

+</protocol>
+
+<file1 name="log/download1383">
+fooo
+mooo
+</file1>
+
+<file2 name="log/heads1383">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1383 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1383">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1384 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1384
new file mode 100644
index 0000000..c07c266
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1384
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -i -D stdout
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1384 -o log/download1384 -i -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1384
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1384

+RETR file1384

+QUIT

+</protocol>
+
+<file1 name="log/download1384">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1384">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 10

+150 Binary data connection for 1384 () (10 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1385 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1385
new file mode 100644
index 0000000..ee35ab7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1385
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+fooo
+mooo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file without C-D inside, using -o fname -i, without -D
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1385 -o log/download1385 -i
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1385
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1385

+RETR file1385

+QUIT

+</protocol>
+
+<file1 name="log/download1385">
+fooo
+mooo
+</file1>
+
+<file2 name="log/stdout1385">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1386 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1386
new file mode 100644
index 0000000..c7f5d8a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1386
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1386 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1386; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with Content-Disposition inside, using -o fname
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1386 -o log/download1386
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1386 log/name1386
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1386

+RETR file1386

+QUIT

+</protocol>
+
+<file1 name="log/download1386">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1386; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1386">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1387 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1387
new file mode 100644
index 0000000..2b6c3fc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1387
@@ -0,0 +1,91 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1387 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1387; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -D file
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1387 -o log/download1387 -D log/heads1387
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1387 log/name1387
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1387

+RETR file1387

+QUIT

+</protocol>
+
+<file1 name="log/download1387">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1387; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/heads1387">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 222

+150 Binary data connection for 1387 () (222 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1387">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1388 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1388
new file mode 100644
index 0000000..3d2c59a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1388
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1388 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1388; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -D stdout
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1388 -o log/download1388 -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1388 log/name1388
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1388

+RETR file1388

+QUIT

+</protocol>
+
+<file1 name="log/download1388">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1388; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1388">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 222

+150 Binary data connection for 1388 () (222 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1389 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1389
new file mode 100644
index 0000000..4aaacd8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1389
@@ -0,0 +1,92 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1389 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1389; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -J -D file
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1389 -o log/download1389 -J -D log/heads1389
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1389 log/name1389
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1389

+RETR file1389

+QUIT

+</protocol>
+
+<file1 name="log/download1389">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1389; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/heads1389">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 222

+150 Binary data connection for 1389 () (222 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1389">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test139 b/ap/lib/libcurl/curl-7.54.1/tests/data/test139
new file mode 100644
index 0000000..15a242b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test139
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-z
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+this is file contents
+</data>
+<mdtm>
+213 20030409102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download a newer file with -z
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/139 -z "1 jan 1989"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+MDTM 139

+EPSV

+TYPE I

+SIZE 139

+RETR 139

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1390 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1390
new file mode 100644
index 0000000..0668cf7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1390
@@ -0,0 +1,89 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+-J
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1390 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1390; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -J -D stdout
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1390 -o log/download1390 -J -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1390 log/name1390
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1390

+RETR file1390

+QUIT

+</protocol>
+
+<file1 name="log/download1390">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1390; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1390">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 222

+150 Binary data connection for 1390 () (222 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1391 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1391
new file mode 100644
index 0000000..09c670a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1391
@@ -0,0 +1,91 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1391 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1391; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -i -D file
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1391 -o log/download1391 -i -D log/heads1391
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1391 log/name1391
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1391

+RETR file1391

+QUIT

+</protocol>
+
+<file1 name="log/download1391">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1391; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/heads1391">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 222

+150 Binary data connection for 1391 () (222 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+<file3 name="log/stdout1391">
+</file3>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1392 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1392
new file mode 100644
index 0000000..994c881
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1392
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1392 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1392; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -i -D stdout
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1392 -o log/download1392 -i -D -
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1392 log/name1392
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1392

+RETR file1392

+QUIT

+</protocol>
+
+<file1 name="log/download1392">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1392; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1392">
+220-        _   _ ____  _     

+220-    ___| | | |  _ \| |    

+220-   / __| | | | |_) | |    

+220-  | (__| |_| |  _ {| |___ 

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

+331 We are happy you popped in!

+230 Welcome you silly person

+257 "/" is current directory

+250 CWD command successful.

+229 Entering Passive Mode (stripped)
+200 I modify TYPE as you wanted

+213 222

+150 Binary data connection for 1392 () (222 bytes).

+226 File transfer complete

+</file2>
+<stripfile2>
+s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
+</stripfile2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1393 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1393
new file mode 100644
index 0000000..12f9284
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1393
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# file1393 contents...
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1393; charset=funny; option=strange

+

+MOOOO
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP DL, file with C-D inside, using -o fname -i, without -D
+</name>
+<command option="no-output,no-include">
+ftp://%HOSTIP:%FTPPORT/path/file1393 -o log/download1393 -i
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/file1393 log/name1393
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE file1393

+RETR file1393

+QUIT

+</protocol>
+
+<file1 name="log/download1393">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1393; charset=funny; option=strange

+

+MOOOO
+</file1>
+
+<file2 name="log/stdout1393">
+</file2>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1394 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1394
new file mode 100644
index 0000000..34d4a0e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1394
@@ -0,0 +1,30 @@
+<testcase>
+<info>
+<keywords>
+unittest
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+unit test for parse_cert_parameter()
+ </name>
+<tool>
+unit1394
+</tool>
+</client>
+
+<verify>
+<stdout mode="text">
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1395 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1395
new file mode 100644
index 0000000..967c8d4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1395
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Curl_dedotdotify
+ </name>
+<tool>
+unit1395
+</tool>
+
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1396 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1396
new file mode 100644
index 0000000..8ffe35f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1396
@@ -0,0 +1,27 @@
+<testcase>
+<info>
+<keywords>
+unittest
+curl_easy_escape
+curl_easy_unescape
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+curl_easy_escape and curl_easy_unescape
+ </name>
+<tool>
+unit1396
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1397 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1397
new file mode 100644
index 0000000..5f479b4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1397
@@ -0,0 +1,27 @@
+<testcase>
+<info>
+<keywords>
+unittest
+ssl
+wildcard
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Check wildcard certificate matching function Curl_cert_hostcheck
+ </name>
+<tool>
+unit1397
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1398 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1398
new file mode 100644
index 0000000..dd50baa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1398
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+curl_msnprintf
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+curl_msnprintf unit tests
+ </name>
+<tool>
+unit1398
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test14 b/ap/lib/libcurl/curl-7.54.1/tests/data/test14
new file mode 100644
index 0000000..21a4865
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test14
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP HEAD
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Server: thebest/1.0
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP HEAD with Connection: close
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/14 -i --head
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+HEAD /want/14 HTTP/1.1

+User-Agent: curl/7.4.2-pre4 (sparc-sun-solaris2.7) libcurl 7.4.2-pre4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test140 b/ap/lib/libcurl/curl-7.54.1/tests/data/test140
new file mode 100644
index 0000000..4d8bc85
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test140
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FTP
+-z
+--data-binary
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+<mdtm>
+213 20030409102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download file with -z, expected to not transfer
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/140 -z "1 jan 2004"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+MDTM 140

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1400 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1400
new file mode 100644
index 0000000..0cef18d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1400
@@ -0,0 +1,109 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--libcurl
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--libcurl for simple HTTP GET
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1400 --libcurl log/test1400.c
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/1400 HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stripfile>
+s/(USERAGENT, \")[^\"]+/${1}stripped/
+# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
+# configurations - just ignore them
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+<file name="log/test1400.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1400");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
+  curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1401 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1401
new file mode 100644
index 0000000..2217ed8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1401
@@ -0,0 +1,130 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP set cookie
+cookies
+--libcurl
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+Content-Type: text/plain
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--libcurl for GET with various options
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1401 --libcurl log/test1401.c --basic -u fake:user -H "X-Files: Mulder" -H "X-Men: cyclops, iceman" -A MyUA -b chocolate=chip --proto "=http,ftp,file"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/1401 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: stripped

+Authorization: Basic ZmFrZTp1c2Vy

+Accept: */*

+Cookie: chocolate=chip

+X-Files: Mulder

+X-Men: cyclops, iceman

+

+</protocol>
+<stripfile>
+# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
+# configurations - just ignore them
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+<file name="log/test1401.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+  struct curl_slist *slist1;
+
+  slist1 = NULL;
+  slist1 = curl_slist_append(slist1, "X-Files: Mulder");
+  slist1 = curl_slist_append(slist1, "X-Men: cyclops, iceman");
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1401");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_USERPWD, "fake:user");
+  curl_easy_setopt(hnd, CURLOPT_USERAGENT, "MyUA");
+  curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, slist1);
+  curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
+  curl_easy_setopt(hnd, CURLOPT_HTTPAUTH, (long)CURLAUTH_BASIC);
+  curl_easy_setopt(hnd, CURLOPT_COOKIE, "chocolate=chip");
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_PROTOCOLS, (long)CURLPROTO_FILE |
+                                           (long)CURLPROTO_FTP |
+                                           (long)CURLPROTO_HTTP);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+  curl_slist_free_all(slist1);
+  slist1 = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1402 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1402
new file mode 100644
index 0000000..d2b05f5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1402
@@ -0,0 +1,116 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+--libcurl
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+Content-Type: text/plain
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--libcurl for simple POST
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1402 --libcurl log/test1402.c -d "foo=bar" -d "baz=quux"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /we/want/1402 HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 16

+Content-Type: application/x-www-form-urlencoded

+

+foo=bar&baz=quux
+</protocol>
+<stripfile>
+# curl's default user-agent varies with version, libraries etc.
+s/(USERAGENT, \")[^\"]+/${1}stripped/
+# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
+# configurations - just ignore them
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+<file name="log/test1402.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1402");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "foo=bar&baz=quux");
+  curl_easy_setopt(hnd, CURLOPT_POSTFIELDSIZE_LARGE, (curl_off_t)16);
+  curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
+  curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1403 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1403
new file mode 100644
index 0000000..b087283
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1403
@@ -0,0 +1,111 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--libcurl
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+Content-Type: text/plain
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--libcurl for GET with query
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1403 --libcurl log/test1403.c -G -d "foo=bar" -d "baz=quux"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/1403?foo=bar&baz=quux HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stripfile>
+# curl's default user-agent varies with version, libraries etc.
+s/(USERAGENT, \")[^\"]+/${1}stripped/
+# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
+# configurations - just ignore them
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+<file name="log/test1403.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1403?foo=bar&baz=quux");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
+  curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1404 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1404
new file mode 100644
index 0000000..c86d260
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1404
@@ -0,0 +1,167 @@
+<testcase>
+# Based on test 1315
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP file upload
+--libcurl
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 0
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--libcurl for HTTP RFC1867-type formposting - -F with three files, one with explicit type
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/1404 -F name=value -F 'file=@log/test1404.txt,log/test1404.txt;type=magic/content,log/test1404.txt' --libcurl log/test1404.c
+</command>
+# We create this file before the command is invoked!
+<file name="log/test1404.txt">
+dummy data
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+(^User-Agent:.*|-----+\w+)
+</strip>
+<protocol>
+POST /we/want/1404 HTTP/1.1

+User-Agent: curl/7.18.2 (i686-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.7a ipv6 zlib/1.1.4

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 795

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763

+

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="name"

+

+value

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="file"

+Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa

+

+Content-Disposition: attachment; filename="test1404.txt"

+Content-Type: text/plain

+

+dummy data
+

+------------------------------9ef8d6205763

+Content-Disposition: attachment; filename="test1404.txt"

+Content-Type: magic/content

+

+dummy data
+

+------------------------------9ef8d6205763

+Content-Disposition: attachment; filename="test1404.txt"

+Content-Type: text/plain

+

+dummy data
+

+------------------------------aaaaaaaaaaaa--

+------------------------------9ef8d6205763--

+</protocol>
+<stripfile>
+# curl's default user-agent varies with version, libraries etc.
+s/(USERAGENT, \")[^\"]+/${1}stripped/
+# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
+# configurations - just ignore them
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+<file name="log/test1404.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+  struct curl_httppost *post1;
+  struct curl_httppost *postend;
+
+  post1 = NULL;
+  postend = NULL;
+  curl_formadd(&post1, &postend,
+               CURLFORM_COPYNAME, "name",
+               CURLFORM_COPYCONTENTS, "value",
+               CURLFORM_END);
+  curl_formadd(&post1, &postend,
+               CURLFORM_COPYNAME, "file",
+               CURLFORM_FILE, "log/test1404.txt",
+               CURLFORM_CONTENTTYPE, "text/plain",
+               CURLFORM_FILE, "log/test1404.txt",
+               CURLFORM_CONTENTTYPE, "magic/content",
+               CURLFORM_FILE, "log/test1404.txt",
+               CURLFORM_CONTENTTYPE, "text/plain",
+               CURLFORM_END);
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "http://%HOSTIP:%HTTPPORT/we/want/1404");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_HTTPPOST, post1);
+  curl_easy_setopt(hnd, CURLOPT_USERAGENT, "stripped");
+  curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+  curl_formfree(post1);
+  post1 = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1405 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1405
new file mode 100644
index 0000000..f3ad3e7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1405
@@ -0,0 +1,142 @@
+<testcase>
+# Derived from test227
+<info>
+<keywords>
+FTP
+post-quote
+pre-quote
+--libcurl
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY EPSV 500 no such command
+REPLY FAIL 500 this might not be a failure!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+--libcurl for FTP with quote ops
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/test1405.c
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+NOOP 1

+FAIL

+EPSV

+PASV

+TYPE I

+NOOP 2

+FAIL HARD

+SIZE 1405

+RETR 1405

+NOOP 3

+QUIT

+</protocol>
+<file name="log/test1405.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+  struct curl_slist *slist1;
+  struct curl_slist *slist2;
+  struct curl_slist *slist3;
+
+  slist1 = NULL;
+  slist1 = curl_slist_append(slist1, "NOOP 1");
+  slist1 = curl_slist_append(slist1, "*FAIL");
+  slist2 = NULL;
+  slist2 = curl_slist_append(slist2, "NOOP 3");
+  slist3 = NULL;
+  slist3 = curl_slist_append(slist3, "NOOP 2");
+  slist3 = curl_slist_append(slist3, "*FAIL HARD");
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "ftp://%HOSTIP:%FTPPORT/1405");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_QUOTE, slist1);
+  curl_easy_setopt(hnd, CURLOPT_POSTQUOTE, slist2);
+  curl_easy_setopt(hnd, CURLOPT_PREQUOTE, slist3);
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+  curl_slist_free_all(slist1);
+  slist1 = NULL;
+  curl_slist_free_all(slist2);
+  slist2 = NULL;
+  curl_slist_free_all(slist3);
+  slist3 = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+<stripfile>
+# CURLOPT_USERAGENT and CURLOPT_MAXREDIRS requires HTTP protocol
+# support, IOW depends on configuration - just ignore these.
+$_ = '' if /CURLOPT_USERAGENT/
+$_ = '' if /CURLOPT_MAXREDIRS/
+# CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with
+# configurations - just ignore them
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1406 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1406
new file mode 100644
index 0000000..033957f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1406
@@ -0,0 +1,128 @@
+<testcase>
+# Based on test900
+# N.B. --libcurl output not sufficient to deal with uploaded files.
+<info>
+<keywords>
+SMTP
+--libcurl
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>

+CAPA SIZE

+</servercmd>

+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+--libcurl for SMTP
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+<file name="log/test1406.eml">
+From: different

+To: another

+

+body

+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/test1406.eml --libcurl log/test1406.c
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 1406

+MAIL FROM:<sender@example.com> SIZE=38

+RCPT TO:<recipient.one@example.com>

+RCPT TO:<recipient.two@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+<file name="log/test1406.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+  struct curl_slist *slist1;
+
+  slist1 = NULL;
+  slist1 = curl_slist_append(slist1, "recipient.one@example.com");
+  slist1 = curl_slist_append(slist1, "recipient.two@example.com");
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, (curl_off_t)38);
+  curl_easy_setopt(hnd, CURLOPT_URL, "smtp://%HOSTIP:%SMTPPORT/1406");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_UPLOAD, 1L);
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_MAIL_FROM, "sender@example.com");
+  curl_easy_setopt(hnd, CURLOPT_MAIL_RCPT, slist1);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+  curl_slist_free_all(slist1);
+  slist1 = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+<stripfile>
+# These options vary with configurations - just ignore them
+$_ = '' if /CURLOPT_USERAGENT/
+$_ = '' if /CURLOPT_MAXREDIRS/
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1407 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1407
new file mode 100644
index 0000000..5a3de1b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1407
@@ -0,0 +1,106 @@
+<testcase>
+# Based on test851
+<info>
+<keywords>
+POP3
+Clear Text

+LIST
+--libcurl
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY LIST +OK 1407 100\r\n.
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+--libcurl for POP3 LIST one message
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+<command>
+pop3://%HOSTIP:%POP3PORT/1407 -l -u user:secret --libcurl log/test1407.c
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+LIST 1407

+QUIT

+</protocol>
+<file name="log/test1407.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "pop3://%HOSTIP:%POP3PORT/1407");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_DIRLISTONLY, 1L);
+  curl_easy_setopt(hnd, CURLOPT_USERPWD, "user:secret");
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+<stripfile>
+# These options vary with configurations - just ignore them
+$_ = '' if /CURLOPT_USERAGENT/
+$_ = '' if /CURLOPT_MAXREDIRS/
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1408 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1408
new file mode 100644
index 0000000..54d5e77
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1408
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+IPv6
+cookies
+cookiejar
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Set-Cookie: time=1
+
+-foo-
+</data1>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Set-Cookie: time=2
+
+-foo-
+</data2>
+
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP receive cookies over IPV6
+ </name>
+ <command>
+-c log/jar1408 -g http://%HOST6IP:%HTTP6PORT/path/14080001 http://%HOST6IP:%HTTP6PORT/path/14080002
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /path/14080001 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Accept: */*

+

+GET /path/14080002 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Accept: */*

+Cookie: time=1

+

+</protocol>
+</verify>
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1409 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1409
new file mode 100644
index 0000000..5ceb53b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1409
@@ -0,0 +1,31 @@
+<testcase>
+<info>
+<keywords>
+cmdline
+FAILURE
+</keywords>
+</info>
+
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+Pass in string to -C
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1409 -C wrong
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+2
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test141 b/ap/lib/libcurl/curl-7.54.1/tests/data/test141
new file mode 100644
index 0000000..694d87c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test141
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+NOBODY
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+<size>
+42
+</size>
+<mdtm>
+213 20030409102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download info with -I
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/blalbla/141 -I
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD blalbla

+MDTM 141

+TYPE I

+SIZE 141

+REST 0

+QUIT

+</protocol>
+<stdout>
+Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT

+Content-Length: 42

+Accept-ranges: bytes

+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1410 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1410
new file mode 100644
index 0000000..97ad056
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1410
@@ -0,0 +1,31 @@
+<testcase>
+<info>
+<keywords>
+cmdline
+FAILURE
+</keywords>
+</info>
+
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+Pass in negative number to --max-time
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1410 --max-time -4
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+2
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1411 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1411
new file mode 100644
index 0000000..3ffd586
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1411
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+PUT
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+
+# make sure there's no Expect: 100-continue when there's no file to send!
+ <name>
+HTTP with zero size file PUT
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1411 -T log/empty1411
+</command>
+# create an empty file
+<file name="log/empty1411">
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /1411 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1412 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1412
new file mode 100644
index 0000000..ae63290
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1412
@@ -0,0 +1,118 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+--anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+auth_required
+</servercmd>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

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

+Connection: close

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</data1000>
+
+# This is the second request
+<data1001>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the second real page!
+</data1001>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP GET with --anyauth with two URLs (picking Digest) 
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1412 -u testuser:testpass --anyauth http://%HOSTIP:%HTTPPORT/14120001
+</command>
+<file name="log/put1412">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1412 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1412 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1412", response="0390dbe89e31adca0413d11f91f30e7f"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /14120001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/14120001", response="0085df91870374c8bf4e94415e7fbf8e"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1413 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1413
new file mode 100644
index 0000000..6e889a8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1413
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose

+Location: moo.html/14130002#fragmentpart

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

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose

+Location: moo.html/14130002#fragmentpart

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect with fragment in new URL
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/this/1413 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /this/1413 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /this/moo.html/14130002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1414 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1414
new file mode 100644
index 0000000..4440378
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1414
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+RETR
+no SIZE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY SIZE 502 no such command
+REPLY EPRT 502 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP PORT without SIZE or EPRT support
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1414 -P -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^(EPRT \|1\|)(.*)/$1/
+s/^(PORT)(.*)/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+PORT
+TYPE I

+SIZE 1414

+RETR 1414

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1415 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1415
new file mode 100644
index 0000000..5604404
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1415
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+cookiejar
+delete expired cookie
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 4
+Content-Type: text/html
+Funny-head: yesyes
+Set-Cookie: test1value=test1; domain=example.com; path=/;
+Set-Cookie: test2value=test2; expires=Friday, 01-Jan-2037 00:00:00 GMT; domain=example.com; path=/;
+Set-Cookie: test3value=test3; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
+Set-Cookie: test4value=test4; expires=Friday, 01-Jan-2037 00:00:00 GMT; domain=example.com; path=/;
+Set-Cookie: test5value=test5; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
+Set-Cookie: test6value=test6; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
+Set-Cookie: test7value=test7; expires=Friday, 01-Jan-2037 00:00:00 GMT; domain=example.com; path=/;
+Set-Cookie: test8value=test8; expires=Monday, 13-Jun-1988 03:04:55 GMT; domain=example.com; path=/;
+
+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Delete expired cookies
+</name>
+<setenv>
+TZ=GMT
+</setenv>
+<command>
+http://example.com/we/want/1415 -b none -c log/jar1415.txt -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://example.com/we/want/1415 HTTP/1.1

+Host: example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+
+<file name="log/jar1415.txt" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+.example.com	TRUE	/	FALSE	0	test1value	test1
+.example.com	TRUE	/	FALSE	2114380800	test2value	test2
+.example.com	TRUE	/	FALSE	2114380800	test4value	test4
+.example.com	TRUE	/	FALSE	2114380800	test7value	test7
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1416 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1416
new file mode 100644
index 0000000..546575e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1416
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 funky chunky!
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+12345678123456789

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+30

+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

+21;heresatest=moooo

+cccccccccccccccccccccccccccccccc
+

+0

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with chunked Transfer-Encoding overflowed chunked size
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1416
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1416 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+# 56 = CURLE_RECV_ERROR
+<errorcode>
+56
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1417 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1417
new file mode 100644
index 0000000..13ba6b1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1417
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Trailer: chunky-trailer

+Connection: mooo

+

+40
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+30
+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+21;heresatest=moooo
+cccccccccccccccccccccccccccccccc
+
+0
+chunky-trailer: header data
+
+</data>
+<datacheck>
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Trailer: chunky-trailer

+Connection: mooo

+

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with chunked encoding and chunked trailer without CRs
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1417 -D log/heads1417
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1417 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/heads1417">
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Trailer: chunky-trailer

+Connection: mooo

+

+chunky-trailer: header data

+</file>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1418 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1418
new file mode 100644
index 0000000..b3a2f23
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1418
@@ -0,0 +1,108 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+connection re-use
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+
+<data>
+HTTP/1.1 401 Authentication please!

+Content-Length: 20

+WWW-Authenticate: Digest realm="loonie", nonce="314156592"

+WWW-Authenticate: Basic

+

+Please auth with me
+</data>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1000>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

+Content-Length: 4

+

+moo
+</data1000>
+
+<data1003>
+HTTP/1.1 200 OK

+Server: Another one/1.0

+Content-Length: 4

+

+boo
+</data1003>
+
+# This is the first reply after the redirection
+<data1011>
+HTTP/1.1 200 OK

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+

+This is not the real page either!
+</data1011>
+
+<datacheck>
+HTTP/1.1 401 Authentication please!

+Content-Length: 20

+WWW-Authenticate: Digest realm="loonie", nonce="314156592"

+WWW-Authenticate: Basic

+

+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

+Content-Length: 4

+

+moo
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with --anyauth and connection re-use
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1418 -u testuser:testpass --anyauth http://%HOSTIP:%HTTPPORT/14180003
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1418 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1418 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/1418", response="986238b7e0077754944c966f56d9bc77"

+Accept: */*

+

+GET /14180003 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/14180003", response="1c6390a67bac3283a9b023402f3b3540"

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1419 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1419
new file mode 100644
index 0000000..f29ce44
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1419
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+connection re-use
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+
+<data>
+HTTP/1.1 200 fine!

+Content-Length: 20

+

+Feel free to get it
+</data>
+
+<data3>
+HTTP/1.1 200 OK

+Server: Another one/1.0

+Content-Length: 4

+

+boo
+</data3>
+
+<datacheck>
+HTTP/1.1 200 fine!

+Content-Length: 20

+

+Feel free to get it
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with --anyauth (but no auth!) and connection re-use
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1419 --anyauth http://%HOSTIP:%HTTPPORT/14190003
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1419 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /14190003 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test142 b/ap/lib/libcurl/curl-7.54.1/tests/data/test142
new file mode 100644
index 0000000..e26aa19
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test142
@@ -0,0 +1,190 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+many parts there are
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP URL with 150 dir levels
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/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
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD part1

+CWD part2

+CWD part3

+CWD part4

+CWD part5

+CWD part6

+CWD part7

+CWD part8

+CWD part9

+CWD part10

+CWD part11

+CWD part12

+CWD part13

+CWD part14

+CWD part15

+CWD part16

+CWD part17

+CWD part18

+CWD part19

+CWD part20

+CWD part21

+CWD part22

+CWD part23

+CWD part24

+CWD part25

+CWD part26

+CWD part27

+CWD part28

+CWD part29

+CWD part30

+CWD part31

+CWD part32

+CWD part33

+CWD part34

+CWD part35

+CWD part36

+CWD part37

+CWD part38

+CWD part39

+CWD part40

+CWD part41

+CWD part42

+CWD part43

+CWD part44

+CWD part45

+CWD part46

+CWD part47

+CWD part48

+CWD part49

+CWD part50

+CWD part51

+CWD part52

+CWD part53

+CWD part54

+CWD part55

+CWD part56

+CWD part57

+CWD part58

+CWD part59

+CWD part60

+CWD part61

+CWD part62

+CWD part63

+CWD part64

+CWD part65

+CWD part66

+CWD part67

+CWD part68

+CWD part69

+CWD part70

+CWD part71

+CWD part72

+CWD part73

+CWD part74

+CWD part75

+CWD part76

+CWD part77

+CWD part78

+CWD part79

+CWD part80

+CWD part81

+CWD part82

+CWD part83

+CWD part84

+CWD part85

+CWD part86

+CWD part87

+CWD part88

+CWD part89

+CWD part90

+CWD part91

+CWD part92

+CWD part93

+CWD part94

+CWD part95

+CWD part96

+CWD part97

+CWD part98

+CWD part99

+CWD part100

+CWD part101

+CWD part102

+CWD part103

+CWD part104

+CWD part105

+CWD part106

+CWD part107

+CWD part108

+CWD part109

+CWD part110

+CWD part111

+CWD part112

+CWD part113

+CWD part114

+CWD part115

+CWD part116

+CWD part117

+CWD part118

+CWD part119

+CWD part120

+CWD part121

+CWD part122

+CWD part123

+CWD part124

+CWD part125

+CWD part126

+CWD part127

+CWD part128

+CWD part129

+CWD part130

+CWD part131

+CWD part132

+CWD part133

+CWD part134

+CWD part135

+CWD part136

+CWD part137

+CWD part138

+CWD part139

+CWD part140

+CWD part141

+CWD part142

+CWD part143

+CWD part144

+CWD part145

+CWD part146

+CWD part147

+CWD part148

+CWD part149

+CWD part150

+EPSV

+TYPE I

+SIZE 142

+RETR 142

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1420 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1420
new file mode 100644
index 0000000..38139e0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1420
@@ -0,0 +1,111 @@
+<testcase>
+# Based on test800
+<info>
+<keywords>
+IMAP
+Clear Text

+FETCH
+--libcurl
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+--libcurl for IMAP FETCH message
+ </name>
+<setenv>
+SSL_CERT_FILE=
+</setenv>
+<command>
+'imap://%HOSTIP:%IMAPPORT/1420/;UID=1' -u user:secret --libcurl log/test1420.c
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 1420

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+<file name="log/test1420.c" mode="text">
+/********* Sample code generated by the curl command line tool **********
+ * All curl_easy_setopt() options are documented at:
+ * https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
+ ************************************************************************/
+#include <curl/curl.h>
+
+int main(int argc, char *argv[])
+{
+  CURLcode ret;
+  CURL *hnd;
+
+  hnd = curl_easy_init();
+  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
+  curl_easy_setopt(hnd, CURLOPT_URL, "imap://%HOSTIP:%IMAPPORT/1420/;UID=1");
+  curl_easy_setopt(hnd, CURLOPT_HEADER, 1L);
+  curl_easy_setopt(hnd, CURLOPT_USERPWD, "user:secret");
+  curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
+
+  /* Here is a list of options the curl code used that cannot get generated
+     as source easily. You may select to either not use them or implement
+     them yourself.
+
+  CURLOPT_WRITEDATA set to a objectpointer
+  CURLOPT_INTERLEAVEDATA set to a objectpointer
+  CURLOPT_WRITEFUNCTION set to a functionpointer
+  CURLOPT_READDATA set to a objectpointer
+  CURLOPT_READFUNCTION set to a functionpointer
+  CURLOPT_SEEKDATA set to a objectpointer
+  CURLOPT_SEEKFUNCTION set to a functionpointer
+  CURLOPT_ERRORBUFFER set to a objectpointer
+  CURLOPT_STDERR set to a objectpointer
+  CURLOPT_DEBUGFUNCTION set to a functionpointer
+  CURLOPT_DEBUGDATA set to a objectpointer
+  CURLOPT_HEADERFUNCTION set to a functionpointer
+  CURLOPT_HEADERDATA set to a objectpointer
+
+  */
+
+  ret = curl_easy_perform(hnd);
+
+  curl_easy_cleanup(hnd);
+  hnd = NULL;
+
+  return (int)ret;
+}
+/**** End of sample code ****/
+</file>
+<stripfile>
+# These options vary with configurations - just ignore them
+$_ = '' if /CURLOPT_USERAGENT/
+$_ = '' if /CURLOPT_MAXREDIRS/
+$_ = '' if /CURLOPT_SSL_VERIFYPEER/
+$_ = '' if /CURLOPT_SSH_KNOWNHOSTS/
+$_ = '' if /CURLOPT_HTTP_VERSION/
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1421 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1421
new file mode 100644
index 0000000..6c59b21
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1421
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Uknown-header: blrub
+Content-Length: 6
+
+-foo-
+</data>
+
+<servercmd>
+connection-monitor
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Re-using HTTP proxy connection for two different host names
+ </name>
+ <command>
+--proxy http://%HOSTIP:%HTTPPORT http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 200 OK
+Uknown-header: blrub
+Content-Length: 6
+
+-foo-
+HTTP/1.1 200 OK
+Uknown-header: blrub
+Content-Length: 6
+
+-foo-
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://test.remote.haxx.se.1421:8990/ HTTP/1.1

+Host: test.remote.haxx.se.1421:8990

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://different.remote.haxx.se.1421:8990/ HTTP/1.1

+Host: different.remote.haxx.se.1421:8990

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1422 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1422
new file mode 100644
index 0000000..9b436cc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1422
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 0

+Connection: close

+Content-Type: text/html

+Content-Disposition: filename=name1422; charset=funny; option=strange

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# this relies on the debug feature to allow us to set directory to store the
+# -O and -J output in, using the CURL_TESTDIR variable
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O -J and Content-Disposition (empty file)
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1422 -J -O file://%PWD/log/name1422
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1422 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/name1422">
+</file1>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1423 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1423
new file mode 100644
index 0000000..908ff8c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1423
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 0

+Connection: close

+Content-Type: text/html

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+file
+</server>
+<name>
+HTTP GET -o fname without Content-Disposition (empty file)
+</name>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1423 -o log/outfile1423 file://%PWD/log/outfile1423
+</command>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/1423
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1423 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<file1 name="log/outfile1423">
+</file1>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1424 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1424
new file mode 100644
index 0000000..17bc46a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1424
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+If-Modified-Since
+-z
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+<datacheck>
+HTTP/1.1 200 OK
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP GET -o fname without Content-Disposition (unmet time condition)
+</name>
+<file name="log/outfile1424">
+original contents
+</file>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1424 -z "dec 12 11:00:00 1999 GMT" -o log/outfile1424
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1424 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT

+

+</protocol>
+
+<file1 name="log/outfile1424">
+original contents
+</file1>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1428 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1428
new file mode 100644
index 0000000..59041ec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1428
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP Basic auth
+proxytunnel
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+

+</connect>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP over proxy-tunnel with --proxy-header and --header
+ </name>
+ <command>
+http://test.1428:%HTTPPORT/we/want/that/page/1428 -p -x %HOSTIP:%PROXYPORT --user 'iam:my:;self' --header "header-type: server" --proxy-header "header-type: proxy"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT test.1428:%HTTPPORT HTTP/1.1

+Host: test.1428:%HTTPPORT

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Proxy-Connection: Keep-Alive

+header-type: proxy

+

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

+Host: test.1428:%HTTPPORT

+Authorization: Basic aWFtOm15OjtzZWxm

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Accept: */*

+header-type: server

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1429 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1429
new file mode 100644
index 0000000..ddf52ec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1429
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data nocheck="yes">
+HTTP/1.1 1234 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+HTTP GET with 4-digit response code
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1429 --write-out '%{response_code}'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout nonewline="yes">
+HTTP/1.1 1234 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+1234
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1429 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test143 b/ap/lib/libcurl/curl-7.54.1/tests/data/test143
new file mode 100644
index 0000000..a4df8cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test143
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+type=
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP URL with type=a
+ </name>
+ <command>
+"ftp://%HOSTIP:%FTPPORT/%2ftmp/moo/143;type=a"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /tmp

+CWD moo

+EPSV

+TYPE A

+SIZE 143

+RETR 143

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1430 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1430
new file mode 100644
index 0000000..e3c9b1d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1430
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 -12 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with negative response code
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1430
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1430 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1431 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1431
new file mode 100644
index 0000000..bec3ebb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1431
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 2 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with single-digit response code
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1431
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1431 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1432 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1432
new file mode 100644
index 0000000..7f41c65
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1432
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data nocheck="yes">
+HTTP/1.1 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+HTTP GET with 100-digit response code and survive
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1432
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1432 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1433 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1433
new file mode 100644
index 0000000..8634db2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1433
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data nocheck="yes">
+HTTP/1.0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+HTTP GET with 100-digit subversion number in response
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1433  --write-out '%{response_code}'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout nonewline="yes">
+HTTP/1.0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+200
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1433 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1434 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1434
new file mode 100644
index 0000000..0b33bb9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1434
@@ -0,0 +1,90 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# Some servers (e.g. Apache 1.2) respond this way to an invalid byte range
+<data>
+HTTP/1.1 200 OK

+Connection: close

+Content-Length: 100

+Content-Type: text/plain

+

+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</data>
+
+# The file data that exists at the start of the test must be included in
+# the verification.
+<datacheck>
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+HTTP/1.1 200 OK

+Connection: close

+Content-Length: 100

+Content-Type: text/plain

+

+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET resume at exactly the existing file size is fine
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1434 -C 100
+</command>
+<file name="log/curl1434.out">
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1434 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=100-

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1435 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1435
new file mode 100644
index 0000000..bd171a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1435
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+unix sockets
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Sun, 16 Nov 2014 23:47:38 GMT
+Content-Length: 17
+
+Based on test300
+</data>
+</reply>
+
+<client>
+<features>
+unix-sockets
+</features>
+<server>
+http-unix
+</server>
+ <name>
+simple HTTP GET over Unix socket
+ </name>
+ <command>
+--unix-socket %HTTPUNIXPATH http://server-interpreted.example.com/1435
+</command>
+</client>
+
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1435 HTTP/1.1

+Host: server-interpreted.example.com

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1436 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1436
new file mode 100644
index 0000000..e40a3bf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1436
@@ -0,0 +1,85 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+unix sockets
+</keywords>
+</info>
+
+<reply>
+<data1>
+HTTP/1.1 200 OK
+Date: Mon, 17 Nov 2014 13:42:47 GMT
+Content-Length: 6
+
+First
+</data1>
+<data2>
+HTTP/1.1 200 OK
+Date: Mon, 17 Nov 2014 13:42:48 GMT
+Content-Length: 7
+
+Second
+</data2>
+<data3>
+HTTP/1.1 200 OK
+Date: Mon, 17 Nov 2014 13:42:49 GMT
+Content-Length: 6
+
+Third
+</data3>
+</reply>
+
+<client>
+<features>
+unix-sockets
+</features>
+<server>
+http-unix
+</server>
+ <name>
+HTTP requests with multiple connections over Unix socket
+ </name>
+ <command>
+--unix-socket %HTTPUNIXPATH http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003
+</command>
+</client>
+
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /14360001 HTTP/1.1

+Host: one.example.com

+Accept: */*

+

+GET /14360002 HTTP/1.1

+Host: two.example.com

+Accept: */*

+

+GET /14360003 HTTP/1.1

+Host: one.example.com

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 200 OK
+Date: Mon, 17 Nov 2014 13:42:47 GMT
+Content-Length: 6
+
+First
+HTTP/1.1 200 OK
+Date: Mon, 17 Nov 2014 13:42:48 GMT
+Content-Length: 7
+
+Second
+HTTP/1.1 200 OK
+Date: Mon, 17 Nov 2014 13:42:49 GMT
+Content-Length: 6
+
+Third
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1437 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1437
new file mode 100644
index 0000000..19ccece
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1437
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2

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

+Content-Length: 26

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with duplicated WWW-Authenticate parameters
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1437 -u testuser:testpass --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1437 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1437 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/1437", response="4376eb639bf8e7343a6e7b56e1b89c4f", algorithm="MD5"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1438 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1438
new file mode 100644
index 0000000..8aaedb7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1438
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+protocol
+--write-out
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Connection: close
+Content-Type: text/plain
+
+testdata
+</data>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+Check if %{scheme} returns HTTP
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1438 --write-out '%{scheme}'
+</command>
+</client>
+
+# Verify data
+<verify>
+<stdout nonewline="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Connection: close
+Content-Type: text/plain
+
+testdata
+HTTP
+</stdout>
+<protocol>
+GET /1438 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<strip>
+^User-Agent:.*
+</strip>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1439 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1439
new file mode 100644
index 0000000..cb906ad
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1439
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+--write-out
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Connection: close
+Content-Type: text/plain
+
+testdata
+</data>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+Check if %{scheme} returns HTTP
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1439 --write-out '%{http_version}'
+</command>
+</client>
+
+# Verify data
+<verify>
+<stdout nonewline="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Connection: close
+Content-Type: text/plain
+
+testdata
+1.1
+</stdout>
+<protocol>
+GET /1439 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<strip>
+^User-Agent:.*
+</strip>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test144 b/ap/lib/libcurl/curl-7.54.1/tests/data/test144
new file mode 100644
index 0000000..4419b09
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test144
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+NLST
+--data-binary
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+REPLY NLST 450 No files found
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP NLST dir list without contents, using PORT
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/ -P - -l
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PORT 127,0,0,1,243,212

+TYPE A

+NLST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1440 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1440
new file mode 100644
index 0000000..e87cafb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1440
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+--write-out
+FILE
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+
+<name>
+Check --write-out with trailing %{
+</name>
+<command>
+file://localhost/%PWD/log/non-existent-file.txt --write-out '%{'
+</command>
+</client>
+
+# Verify data
+<verify>
+<errorcode>
+37
+</errorcode>
+<stdout nonewline="yes">
+%{
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1441 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1441
new file mode 100644
index 0000000..8d841df
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1441
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+--write-out
+FILE
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+
+<name>
+Check --write-out with trailing %
+</name>
+<command>
+file://localhost/%PWD/log/non-existent-file.txt --write-out '%'
+</command>
+</client>
+
+# Verify data
+<verify>
+<errorcode>
+37
+</errorcode>
+<stdout nonewline="yes">
+%
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1442 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1442
new file mode 100644
index 0000000..255a4c9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1442
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+--write-out
+FILE
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+
+<name>
+Check --write-out with trailing \
+</name>
+<command>
+file://localhost/%PWD/log/non-existent-file.txt --write-out '\'
+</command>
+</client>
+
+# Verify data
+<verify>
+<errorcode>
+37
+</errorcode>
+<stdout nonewline="yes">
+\
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1443 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1443
new file mode 100644
index 0000000..6968867
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1443
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-O
+--remote-time
+</keywords>
+</info>
+
+#
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+Content-Length: 6
+Connection: close
+
+12345
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# This relies on the debug feature to allow us to set a directory
+# in which to store the -O output
+<features>
+debug
+</features>
+<server>
+http
+</server>
+<name>
+HTTP GET with -O and --remote-time
+</name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+http://%HOSTIP:%HTTPPORT/1443 -O --remote-time
+</command>
+# Verify the mtime of the file. The mtime is specifically chosen to be an even
+# number so that it can be represented exactly on a FAT filesystem.
+<postcheck>
+perl -e 'exit((stat("log/1443"))[9] != 960898200)'
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1443 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/1443">
+12345
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1444 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1444
new file mode 100644
index 0000000..7eec21b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1444
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+--remote-time
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+file data
+</data>
+<mdtm>
+213 20090213233130
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with --remote-time
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1444 --remote-time
+</command>
+# Verify the mtime of the file. The mtime is specifically chosen to be an even
+# number so that it can be represented exactly on a FAT filesystem.
+<postcheck>
+perl -e 'exit((stat("log/curl1444.out"))[9] != 1234567890)'
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+MDTM 1444

+EPSV

+TYPE I

+SIZE 1444

+RETR 1444

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1445 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1445
new file mode 100644
index 0000000..f60483d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1445
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+FILE
+--remote-time
+</keywords>
+</info>
+
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+<precheck>
+perl %SRCDIR/libtest/test613.pl prepare %PWD/log/test1445.dir
+</precheck>
+ <name>
+file:// with --remote-time
+ </name>
+ <command>
+file://localhost/%PWD/log/test1445.dir/plainfile.txt --remote-time
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test613.pl postprocess %PWD/log/test1445.dir && \
+perl -e 'exit((stat("log/curl1445.out"))[9] != 946728000)'
+</postcheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1446 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1446
new file mode 100644
index 0000000..7d5ec9f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1446
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+--remote-time
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test613.pl prepare %PWD/log/test1446.dir
+</precheck>
+ <name>
+SFTP with --remote-time
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/test1446.dir/rofile.txt --insecure --remote-time
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test613.pl postprocess %PWD/log/test1446.dir && \
+perl -e 'exit((stat("log/curl1446.out"))[9] != 978264000)'
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test145 b/ap/lib/libcurl/curl-7.54.1/tests/data/test145
new file mode 100644
index 0000000..1e80cf8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test145
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+FTP
+NLST
+PORT
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY NLST 550 Have a taste on this!
+</servercmd>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP NLST dir list with weird reply code, using PORT
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/ -P - -l
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+19
+</errorcode>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PORT 127,0,0,1,243,212

+TYPE A

+NLST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test146 b/ap/lib/libcurl/curl-7.54.1/tests/data/test146
new file mode 100644
index 0000000..3cd4bd5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test146
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+persistent connection
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+this is file contents
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+persistent FTP with different paths
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/first/dir/here/146 ftp://%HOSTIP:%FTPPORT/146
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD first

+CWD dir

+CWD here

+EPSV

+TYPE I

+SIZE 146

+RETR 146

+CWD /

+EPSV

+SIZE 146

+RETR 146

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test147 b/ap/lib/libcurl/curl-7.54.1/tests/data/test147
new file mode 100644
index 0000000..6651df0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test147
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+foo
+</data>
+<servercmd>
+REPLY CWD 550 I won't allow this on my server
+COUNT CWD 1
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with --ftp-create-dirs (failing CWD)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/first/dir/here/147 --ftp-create-dirs
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD first

+MKD first

+CWD first

+CWD dir

+CWD here

+EPSV

+TYPE I

+SIZE 147

+RETR 147

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test148 b/ap/lib/libcurl/curl-7.54.1/tests/data/test148
new file mode 100644
index 0000000..540c8fe
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test148
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+REPLY CWD 550 I won't allow this on my server
+REPLY MKD 550 We will have no such thing
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with --ftp-create-dirs (failing MKD)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/attempt/to/get/this/148 --ftp-create-dirs
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<errorcode>
+9
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD attempt

+MKD attempt

+CWD attempt

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test149 b/ap/lib/libcurl/curl-7.54.1/tests/data/test149
new file mode 100644
index 0000000..a5d1499
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test149
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with multiple uploads
+ </name>
+ <command>
+-T log/upload149 ftp://%HOSTIP:%FTPPORT/dir1/149 -T log/upload149 ftp://%HOSTIP:%FTPPORT/dir2/149
+</command>
+<file name="log/upload149">
+send away this contents
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD dir1

+EPSV

+TYPE I

+STOR 149

+CWD /

+CWD dir2

+EPSV

+STOR 149

+QUIT

+</protocol>
+<file name="log/upload149">
+send away this contents
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test15 b/ap/lib/libcurl/curl-7.54.1/tests/data/test15
new file mode 100644
index 0000000..3b1fa43
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test15
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--write-out
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.4 200 OK

+Fake: yes

+Fake: yes

+Fake: yes

+Content-Length: 26

+

+Repeated nonsense-headers
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+--write-out test
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.4 200 OK

+Fake: yes

+Fake: yes

+Fake: yes

+Content-Length: 26

+

+Repeated nonsense-headers
+http://%HOSTIP:%HTTPPORT/want/15 200 26
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/15 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test150 b/ap/lib/libcurl/curl-7.54.1/tests/data/test150
new file mode 100644
index 0000000..e19826e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test150
@@ -0,0 +1,103 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+
+<!-- Server-side -->
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM authorization and --fail
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/150 -u testuser:testpass --ntlm --fail
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /150 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /150 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1500 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1500
new file mode 100644
index 0000000..cd3131e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1500
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 all good!

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

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 12

+Connection: close

+

+Hello World
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib1500
+</tool>
+
+ <name>
+curl_multi_wait
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1500
+</command>
+</client>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1501 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1501
new file mode 100644
index 0000000..8c7e13a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1501
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+multi
+LIST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+DELAY LIST 2
+DELAY TYPE 2
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib1501
+</tool>
+ <name>
+FTP with multi interface and slow LIST response 
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/1501/
+</command>
+</client>
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD 1501

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1502 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1502
new file mode 100644
index 0000000..4c084d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1502
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+CURLOPT_RESOLVE
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1502
+</tool>
+ <name>
+HTTP multi with CURLOPT_RESOLVE, cleanup sequence UA
+ </name>
+ <command>
+http://google.com:%HTTPPORT/1502 %HTTPPORT %HOSTIP
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1502 HTTP/1.1

+Host: google.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1503 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1503
new file mode 100644
index 0000000..8665de6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1503
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+CURLOPT_RESOLVE
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1503
+</tool>
+ <name>
+HTTP multi with CURLOPT_RESOLVE, cleanup sequence PA
+ </name>
+ <command>
+http://google.com:%HTTPPORT/1503 %HTTPPORT %HOSTIP
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1503 HTTP/1.1

+Host: google.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1504 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1504
new file mode 100644
index 0000000..b8463c5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1504
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+CURLOPT_RESOLVE
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1504
+</tool>
+ <name>
+HTTP multi with CURLOPT_RESOLVE, cleanup sequence UB
+ </name>
+ <command>
+http://google.com:%HTTPPORT/1504 %HTTPPORT %HOSTIP
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1504 HTTP/1.1

+Host: google.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1505 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1505
new file mode 100644
index 0000000..c6e5a7c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1505
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+CURLOPT_RESOLVE
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1505
+</tool>
+ <name>
+HTTP multi with CURLOPT_RESOLVE, cleanup sequence PB
+ </name>
+ <command>
+http://google.com:%HTTPPORT/1505 %HTTPPORT %HOSTIP
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1505 HTTP/1.1

+Host: google.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1506 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1506
new file mode 100644
index 0000000..815fef9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1506
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+multi
+verbose logs
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data1>
+<data2>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data2>
+<data3>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data3>
+<data4>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data4>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1506
+</tool>
+ <name>
+HTTP GET connection cache limit (CURLMOPT_MAXCONNECTS)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/1506 %HOSTIP %HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /path/15060001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15060002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15060003 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15060004 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<strip>
+^Host:.*
+</strip>
+<file name="log/stderr1506" mode="text">
+* Connection #0 to host server1.example.com left intact
+* Connection #1 to host server2.example.com left intact
+* Connection #2 to host server3.example.com left intact
+* Closing connection 0
+* Connection #3 to host server4.example.com left intact
+</file>
+<stripfile>
+$_ = '' if (($_ !~ /left intact/) && ($_ !~ /Closing connection/))
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1507 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1507
new file mode 100644
index 0000000..ab7b47e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1507
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+multi
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<tool>
+lib1507
+</tool>
+
+# based on bug report #1184
+ <name>
+SMTP with multi interface and CURLE_ABORTED_BY_CALLBACK
+ </name>
+<stdin>
+From: different
+To: another
+
+body
+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/1507
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 1507

+MAIL FROM:<1507-realuser@example.com>

+RCPT TO:<1507-recipient@example.com>

+DATA

+</protocol>
+<upload>
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1508 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1508
new file mode 100644
index 0000000..b276b8b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1508
@@ -0,0 +1,31 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+multi
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<tool>
+lib1508
+</tool>
+ <name>
+Close a multi handle without using it
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/1508
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/stdout1508">
+We are done
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1509 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1509
new file mode 100644
index 0000000..b4bfc66
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1509
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+Server: the beast that eats naughty clients

+

+</connect>
+
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+

+</data>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+Server: the beast that eats naughty clients

+

+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+

+header length is ........: 245
+header length should be..: 245
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1509
+</tool>
+
+ <name>
+simple multi http:// through proxytunnel with authentication info
+ </name>
+ <command>
+http://the.old.moo.1509:%HTTPPORT/1509 %HOSTIP:%PROXYPORT
+</command>
+<file name="log/test1509.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+CONNECT the.old.moo.1509:%HTTPPORT HTTP/1.1

+Host: the.old.moo.1509:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+</proxy>
+<protocol>
+GET /1509 HTTP/1.1

+Host: the.old.moo.1509:%HTTPPORT

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test151 b/ap/lib/libcurl/curl-7.54.1/tests/data/test151
new file mode 100644
index 0000000..8f20d1d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test151
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 401 BAD BOY
+Server: swsclose
+Content-Type: text/html
+
+This contains a response code >= 400, so curl shouldn't display this.  Even
+though it's a response code that triggers authentication, we're not using
+authentication so we should still fail.
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with an error code that might trick authentication
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/151
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET /151 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1510 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1510
new file mode 100644
index 0000000..2767f60
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1510
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+verbose logs
+flaky
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data1>
+<data2>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data2>
+<data3>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data3>
+<data4>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data4>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1510
+</tool>
+ <name>
+HTTP GET connection cache limit (CURLOPT_MAXCONNECTS)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/1510 %HOSTIP %HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /path/15100001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15100002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15100003 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15100004 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<strip>
+^Host:.*
+</strip>
+<file name="log/stderr1510" mode="text">
+* Connection #0 to host server1.example.com left intact
+* Connection #1 to host server2.example.com left intact
+* Connection #2 to host server3.example.com left intact
+* Closing connection 0
+* Connection #3 to host server4.example.com left intact
+</file>
+<stripfile>
+$_ = '' if (($_ !~ /left intact/) && ($_ !~ /Closing connection/))
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1511 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1511
new file mode 100644
index 0000000..d2b26e5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1511
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fakem

+Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT

+Content-Type: text/html

+Content-Length: 12

+Connection: close

+

+Hello World
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

+Server: test-server/fakem

+Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT

+Content-Type: text/html

+Content-Length: 12

+Connection: close

+

+HTTP/1.1 200 OK

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

+Server: test-server/fakem

+Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT

+Content-Type: text/html

+Content-Length: 12

+Connection: close

+

+Hello World
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+</features>
+<tool>
+lib1511
+</tool>
+<name>
+HTTP GET time conditions in repeated requests
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1511
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+# TEST_ERR_SUCCESS is errorcode 120
+<verify>
+<errorcode>
+120
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1512 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1512
new file mode 100644
index 0000000..a5de5cd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1512
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+GLOBAL DNS CACHE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data1>
+<data2>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data2>
+<data3>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data3>
+<data4>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data4>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1512
+</tool>
+ <name>
+GLOBAL CACHE test over two easy performs
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/1512 %HOSTIP %HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /path/15120001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/15120002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<strip>
+^Host:.*
+</strip>
+<stripfile>
+$_ = '' if (($_ !~ /left intact/) && ($_ !~ /Closing connection/))
+</stripfile>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1513 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1513
new file mode 100644
index 0000000..ba0c18a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1513
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+PROGRESSFUNCTION
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 204 PARTIAL

+X-Comment: partial response to keep the client waiting

+</data>
+<postcmd>
+wait 10
+</postcmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1513
+</tool>
+ <name>
+return failure immediately from progress callback
+ </name>
+
+# this server/host won't be used for real
+ <command>
+http://%HOSTIP:%HTTPPORT/1513
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+</protocol>
+# 42 == CURLE_ABORTED_BY_CALLBACK
+<errorcode>
+42
+</errorcode>
+<stdout>
+PROGRESSFUNCTION called
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1514 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1514
new file mode 100644
index 0000000..38f5da6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1514
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+Content-Length
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 411 Length Required

+Date: Sun, 19 Jan 2014 18:50:58 GMT

+Server: test-server/fake swsclose

+Connection: close

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1514
+</tool>
+<name>
+HTTP POST with read callback and unknown data size
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1514
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Content-Length header is not present
+<protocol>
+POST /1514 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Type: application/x-www-form-urlencoded

+Expect: 100-continue

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1515 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1515
new file mode 100644
index 0000000..7417924
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1515
@@ -0,0 +1,62 @@
+<testcase>
+
+<info>
+<keywords>
+HTTP
+multi
+FAILURE
+resolve
+</keywords>
+</info>
+
+<reply>
+# Close the connection after the first request. Second request will happen after
+# the DNS cache timeout elapses and must succeed exactly like the first one.
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 2014 17:04:00 GMT
+Server: test-server/fake swsclose
+Connection: close
+Content-Type: text/html
+Content-Length: 6
+
+hello
+</data1>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 2014 17:04:02 GMT
+Server: test-server/fake swsclose
+Connection: close
+Content-Type: text/html
+Content-Length: 6
+
+hello
+</data2>
+<datacheck>
+hello
+hello
+</datacheck>
+</reply>
+
+<client>
+<server>
+http
+</server>
+<tool>
+lib1515
+</tool>
+<name>
+caching of manual libcurl DNS entries after DNS cache timeout
+</name>
+<command>
+path/1515 %HOSTIP %HTTPPORT
+</command>
+</client>
+
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1516 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1516
new file mode 100644
index 0000000..bf2cd15
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1516
@@ -0,0 +1,58 @@
+<testcase>
+
+<info>
+<keywords>
+HTTP
+multi
+FAILURE
+resolve
+</keywords>
+</info>
+
+<reply>
+# Close the connection after the first request but don't tell the client to do
+# so! When starting the second request it'll detect a dead connection and must
+# not clean the DNS entries added manually.
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 2014 17:04:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Content-Length: 6
+
+hello
+</data1>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 2014 17:04:02 GMT
+Server: test-server/fake swsclose
+Connection: close
+Content-Type: text/html
+Content-Length: 6
+
+hello
+</data2>
+</reply>
+
+<client>
+<server>
+http
+</server>
+<tool>
+lib1515
+</tool>
+<name>
+caching of manual libcurl DNS entries after dead connection
+</name>
+<command>
+/path/1516 %HOSTIP %HTTPPORT
+</command>
+</client>
+
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1517 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1517
new file mode 100644
index 0000000..d0a4aec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1517
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+POST
+POST callback
+slow callback
+early response
+</keywords>
+</info>
+#
+# This reproduces issue #657, fixed with PR #668 - on Windows
+#
+# Server-side
+<reply>
+# Force server reply right after request headers, not waiting for request body
+<servercmd>
+skip: 45
+</servercmd>
+<data>
+HTTP/1.1 500 Internal Server Error
+Date: Thu, 17 Mar 2016 14:41:00 GMT
+Server: test-server/fake
+Content-Type: text/plain; charset=US-ASCII
+X-Special: swsclose
+Content-Length: 55
+Connection: close
+
+This is a virtual description of server virtual error.
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1517
+</tool>
+
+ <name>
+HTTP POST, server responds before completed send
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1517
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^(this is what we post to the silly web server)(\r)?\n//
+</strippart>
+<protocol>
+POST /1517 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 45

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test152 b/ap/lib/libcurl/curl-7.54.1/tests/data/test152
new file mode 100644
index 0000000..2cc5216
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test152
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--fail
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 401 BAD BOY
+Server: swsclose
+Content-Type: text/html
+
+This contains a response code >= 400, so curl shouldn't display this.  Even
+though it's a response code that triggers authentication, we're not using
+authentication so we should still fail.
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with an error code that might trick authentication and --fail
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/152 --fail
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET /152 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+22
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1520 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1520
new file mode 100644
index 0000000..5f9344d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1520
@@ -0,0 +1,63 @@
+<testcase>
+# Based off test 901 after bug report #1456
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<tool>
+lib1520
+</tool>
+
+ <name>
+SMTP with CRLF-dot-CRLF in data
+ </name>
+<stdin>
+From: different

+To: another

+

+

+.

+.

+

+.

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/1520
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 1520

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+

+..

+..

+

+..

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1521 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1521
new file mode 100644
index 0000000..268c069
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1521
@@ -0,0 +1,30 @@
+<testcase>
+<info>
+<keywords>
+curl_easy_setopt
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<tool>
+lib1521
+</tool>
+
+ <name>
+try ALL curl_easy_setopt options
+ </name>
+ <command>
+unused
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1525 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1525
new file mode 100644
index 0000000..595da5e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1525
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+CURLOPT_PROXYHEADER
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 OK

+

+</connect>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+</data>
+<datacheck>
+HTTP/1.1 200 OK

+

+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+</datacheck>
+
+</reply>
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<tool>
+lib1525
+</tool>
+ <name>
+CURLOPT_PROXYHEADER is ignored CURLHEADER_UNIFIED
+ </name>
+ <command>
+ http://the.old.moo.1525:%HTTPPORT/1525 %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+CONNECT the.old.moo.1525:%HTTPPORT HTTP/1.1

+Host: the.old.moo.1525:%HTTPPORT

+Proxy-Connection: Keep-Alive

+User-Agent: Http Agent

+

+</proxy>
+<protocol>
+PUT /1525 HTTP/1.1

+Host: the.old.moo.1525:%HTTPPORT

+Accept: */*

+User-Agent: Http Agent

+Content-Length: 13

+Expect: 100-continue

+

+Hello Cloud!
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1526 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1526
new file mode 100644
index 0000000..aa111c8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1526
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+CURLOPT_PROXYHEADER
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 OK

+Server: present

+

+</connect>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+</data>
+<datacheck>
+HTTP/1.1 200 OK

+Server: present

+

+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<tool>
+lib1526
+</tool>
+ <name>
+CURLOPT_PROXYHEADER: separate host/proxy headers
+ </name>
+ <command>
+ http://the.old.moo.1526:%HTTPPORT/1526 %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+CONNECT the.old.moo.1526:%HTTPPORT HTTP/1.1

+Host: the.old.moo.1526:%HTTPPORT

+Proxy-Connection: Keep-Alive

+User-Agent: Proxy Agent

+

+</proxy>
+<protocol>
+PUT /1526 HTTP/1.1

+Host: the.old.moo.1526:%HTTPPORT

+Accept: */*

+User-Agent: Http Agent

+Content-Length: 13

+Expect: 100-continue

+

+Hello Cloud!
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1527 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1527
new file mode 100644
index 0000000..e8d5279
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1527
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 OK

+We-are: good

+

+</connect>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+</data>
+<datacheck>
+HTTP/1.1 200 OK

+We-are: good

+

+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+</datacheck>
+
+</reply>
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<tool>
+lib1527
+</tool>
+ <name>
+Check same headers are generated with CURLOPT_HEADEROPT == CURLHEADER_UNIFIED
+ </name>
+ <command>
+ http://the.old.moo.1527:%HTTPPORT/1527 %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+CONNECT the.old.moo.1527:%HTTPPORT HTTP/1.1

+Host: the.old.moo.1527:%HTTPPORT

+Proxy-Connection: Keep-Alive

+User-Agent: Http Agent

+Expect: 100-continue

+

+</proxy>
+<protocol>
+PUT /1527 HTTP/1.1

+Host: the.old.moo.1527:%HTTPPORT

+Accept: */*

+User-Agent: Http Agent

+Expect: 100-continue

+Content-Length: 13

+

+Hello Cloud!
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1528 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1528
new file mode 100644
index 0000000..876806a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1528
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 OK

+We-are: good

+

+</connect>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Content-Length: 5

+
+stop
+</data>
+
+</reply>
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<tool>
+lib1528
+</tool>
+ <name>
+Separately specified proxy/server headers sent in a proxy GET
+ </name>
+ <command>
+ http://the.old.moo:%HTTPPORT/1528 %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+GET http://the.old.moo:%HTTPPORT/1528 HTTP/1.1

+Host: the.old.moo:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+User-Agent: Http Agent

+Proxy-User-Agent: Http Agent2

+

+</proxy>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1529 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1529
new file mode 100644
index 0000000..33df268
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1529
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 OK

+We-are: good

+

+</connect>
+
+</reply>
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+<tool>
+lib1529
+</tool>
+ <name>
+HTTP request-injection in URL sent over proxy
+ </name>
+ <command>
+ "http://the.old.moo:%HTTPPORT/1529" %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+# it should be detected and an error should be reported
+<verify>
+# 3 == CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test153 b/ap/lib/libcurl/curl-7.54.1/tests/data/test153
new file mode 100644
index 0000000..fc1d812
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test153
@@ -0,0 +1,134 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# reply back and ask for Digest auth
+<data1>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Content-Length: 26

+

+This is not the real page
+</data1>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1001>
+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1001>
+
+#
+# This is the second request, and this sends back a response saying that
+# the request contained stale data. We want an update. Set swsbounce to
+# bounce on to data1003 on the second request.
+<data1002>
+HTTP/1.1 401 Authorization re-negotiation please swsbounce

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"

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

+Content-Length: 25

+

+This is not the real page
+</data1002>
+
+# The second request to the 1002 section will bounce this one back instead
+# thanks to the swsbounce keyword up there
+<data1003>
+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 30

+

+This IS the second real page!
+</data1003>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with Digest authorization with stale=true
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1530001 -u testuser:testpass --digest http://%HOSTIP:%HTTPPORT/1530002
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^Authorization.*cnonce
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1530001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /1530001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530001", response="f4f83139396995bac665f24a1f1055c7"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /1530002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530002", response="f84511b014fdd0ba6494f42871079c32"

+User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS

+Accept: */*

+

+GET /1530002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/1530002", cnonce="MTA4MzIy", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm="MD5"

+User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Content-Length: 26

+

+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+HTTP/1.1 401 Authorization re-negotiation please swsbounce

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"

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

+Content-Length: 25

+

+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 30

+

+This IS the second real page!
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1530 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1530
new file mode 100644
index 0000000..8372d29
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1530
@@ -0,0 +1,30 @@
+<testcase>
+<info>
+<keywords>
+CURLOPT_OPENSOCKETFUNCTION
+</keywords>
+</info>
+
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+<tool>
+lib1530
+</tool>
+ <name>
+CURLOPT_OPENSOCKETFUNCTION returns bad socket
+ </name>
+</client>
+
+# it should be detected and an error should be reported
+<verify>
+# 7 == CURLE_COULDNT_CONNECT
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1531 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1531
new file mode 100644
index 0000000..d58deb6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1531
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1532 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1532
new file mode 100644
index 0000000..5b2afc7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1532
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 OK swsclose

+Content-Length: 0

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1532
+</tool>
+<name>
+Test CURLINFO_RESPONSE_CODE
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1532
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /1532 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1533 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1533
new file mode 100644
index 0000000..5651816
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1533
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+CURLOPT_KEEP_SENDING_ON_ERROR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+auth_required
+</servercmd>
+<data nocheck="yes">
+HTTP/1.1 401 Authorization Required

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

+Server: test-server/fake

+Content-Length: 15

+
+Early Response
+</data>
+</reply>
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1533
+</tool>
+<name>
+HTTP with CURLOPT_KEEP_SENDING_ON_ERROR and an early error response
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1533
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+# TEST_ERR_SUCCESS is errorcode 120
+<verify>
+<errorcode>
+120
+</errorcode>
+<protocol nonewline="yes">
+POST /1533 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+POST /1533 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+POST /1533 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+aaaPOST /1533 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 3

+Content-Type: application/x-www-form-urlencoded

+

+aaa
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1534 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1534
new file mode 100644
index 0000000..5ebf57d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1534
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 OK swsclose

+Last-Modified: Thu, 01 Jan 1970 00:00:30 GMT

+Content-Length: 0

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1534
+</tool>
+<name>
+CURLINFO_FILETIME init and reset
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1534
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /1534 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1535 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1535
new file mode 100644
index 0000000..226190d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1535
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 OK swsclose
+Last-Modified: Thu, 01 Jan 1970 00:00:30 GMT
+Content-Length: 0
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1535
+</tool>
+<name>
+Test CURLINFO_RESPONSE_CODE CURLINFO_PROTOCOL
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1535
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /1535 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1536 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1536
new file mode 100644
index 0000000..a6e5a66
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1536
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 OK swsclose
+Last-Modified: Thu, 01 Jan 1970 00:00:30 GMT
+Content-Length: 0
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1536
+</tool>
+<name>
+Test CURLINFO_RESPONSE_CODE CURLINFO_SCHEME
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/1536
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /1536 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1537 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1537
new file mode 100644
index 0000000..33d8ab3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1537
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+URL escape
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<tool>
+lib1537
+</tool>
+
+<name>
+libcurl URL escape/unescape tests
+</name>
+<command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+%2F%3A%3B%3C%3D%3E%3F%91%A2%B3%C4%D5%E6%F7
+%2F%3A%3B%3C%3D%3E%3F%91%A2%B3%C4%D5%E6%F7
+outlen == 14
+unescape == original? YES
+[old] outlen == 14
+[old] unescape == original? YES
+escape -1 length: (nil)
+unescape -1 length: (nil) 2017
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1538 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1538
new file mode 100644
index 0000000..25b39a6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1538
@@ -0,0 +1,149 @@
+<testcase>
+<info>
+<keywords>
+strerror
+verbose logs
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<tool>
+lib1538
+</tool>
+
+<name>
+libcurl strerror API call tests
+</name>
+<command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+e0: No error
+e1: Unsupported protocol
+e2: Failed initialization
+e3: URL using bad/illegal format or missing URL
+e4: A requested feature, protocol or option was not found built-in in this libcurl due to a build-time decision.
+e5: Couldn't resolve proxy name
+e6: Couldn't resolve host name
+e7: Couldn't connect to server
+e8: Weird server reply
+e9: Access denied to remote resource
+e10: FTP: The server failed to connect to data port
+e11: FTP: unknown PASS reply
+e12: FTP: Accepting server connect has timed out
+e13: FTP: unknown PASV reply
+e14: FTP: unknown 227 response format
+e15: FTP: can't figure out the host in the PASV response
+e16: Error in the HTTP2 framing layer
+e17: FTP: couldn't set file type
+e18: Transferred a partial file
+e19: FTP: couldn't retrieve (RETR failed) the specified file
+e20: Unknown error
+e21: Quote command returned error
+e22: HTTP response code said error
+e23: Failed writing received data to disk/application
+e24: Unknown error
+e25: Upload failed (at start/before it took off)
+e26: Failed to open/read local data from file/application
+e27: Out of memory
+e28: Timeout was reached
+e29: Unknown error
+e30: FTP: command PORT failed
+e31: FTP: command REST failed
+e32: Unknown error
+e33: Requested range was not delivered by the server
+e34: Internal problem setting up the POST
+e35: SSL connect error
+e36: Couldn't resume download
+e37: Couldn't read a file:// file
+e38: LDAP: cannot bind
+e39: LDAP: search failed
+e40: Unknown error
+e41: A required function in the library was not found
+e42: Operation was aborted by an application callback
+e43: A libcurl function was given a bad argument
+e44: Unknown error
+e45: Failed binding local connection end
+e46: Unknown error
+e47: Number of redirects hit maximum amount
+e48: An unknown option was passed in to libcurl
+e49: Malformed telnet option
+e50: Unknown error
+e51: SSL peer certificate or SSH remote key was not OK
+e52: Server returned nothing (no headers, no data)
+e53: SSL crypto engine not found
+e54: Can not set SSL crypto engine as default
+e55: Failed sending data to the peer
+e56: Failure when receiving data from the peer
+e57: Unknown error
+e58: Problem with the local SSL certificate
+e59: Couldn't use specified SSL cipher
+e60: Peer certificate cannot be authenticated with given CA certificates
+e61: Unrecognized or bad HTTP Content or Transfer-Encoding
+e62: Invalid LDAP URL
+e63: Maximum file size exceeded
+e64: Requested SSL level failed
+e65: Send failed since rewinding of the data stream failed
+e66: Failed to initialise SSL crypto engine
+e67: Login denied
+e68: TFTP: File Not Found
+e69: TFTP: Access Violation
+e70: Disk full or allocation exceeded
+e71: TFTP: Illegal operation
+e72: TFTP: Unknown transfer ID
+e73: Remote file already exists
+e74: TFTP: No such user
+e75: Conversion failed
+e76: Caller must register CURLOPT_CONV_ callback options
+e77: Problem with the SSL CA cert (path? access rights?)
+e78: Remote file not found
+e79: Error in the SSH layer
+e80: Failed to shut down the SSL connection
+e81: Socket not ready for send/recv
+e82: Failed to load CRL file (path? access rights?, format?)
+e83: Issuer check against peer certificate failed
+e84: FTP: The server did not accept the PRET command.
+e85: RTSP CSeq mismatch or invalid CSeq
+e86: RTSP session error
+e87: Unable to parse FTP file list
+e88: Chunk callback failed
+e89: The max connection limit is reached
+e90: SSL public key does not match pinned public key
+e91: SSL server certificate status verification FAILED
+e92: Stream error in the HTTP/2 framing layer
+e93: Unknown error
+m-1: Please call curl_multi_perform() soon
+m0: No error
+m1: Invalid multi handle
+m2: Invalid easy handle
+m3: Out of memory
+m4: Internal error
+m5: Invalid socket argument
+m6: Unknown option
+m7: The easy handle is already added to a multi handle
+m8: Unknown error
+s0: No error
+s1: Unknown share option
+s2: Share currently in use
+s3: Invalid share handle
+s4: Out of memory
+s5: Feature not enabled in this library
+s6: CURLSHcode unknown
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test154 b/ap/lib/libcurl/curl-7.54.1/tests/data/test154
new file mode 100644
index 0000000..3d693f4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test154
@@ -0,0 +1,109 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Digest auth
+--anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+auth_required
+</servercmd>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

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

+Connection: close

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344"

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+Connection: close

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP PUT with --anyauth authorization (picking Digest)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/154 -T log/put154 -u testuser:testpass --anyauth
+</command>
+<file name="log/put154">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /154 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+PUT /154 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/154", response="b71551e12d1c456e47d8388ecb2edeca"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1540 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1540
new file mode 100644
index 0000000..1c1cf5d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1540
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLPAUSE_RECV
+chunked Transfer-Encoding
+Trailer:
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

+Transfer-Encoding: chunked

+Trailer: MyCoolTrailerHeader

+

+4

+data

+5

+d474
+

+0

+MyCoolTrailerHeader: amazingtrailer

+

+</data>
+<datacheck>
+HTTP/1.1 200 OK swsclose

+Transfer-Encoding: chunked

+Trailer: MyCoolTrailerHeader

+

+Got 4 bytes but pausing!
+datad474
+MyCoolTrailerHeader: amazingtrailer

+</datacheck>
+
+</reply>
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib1540
+</tool>
+ <name>
+chunked with trailers and pausing the receive
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1540
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /1540 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1541 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1541
new file mode 100644
index 0000000..3d04cb4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1541
@@ -0,0 +1,22 @@
+<testcase>
+<info>
+<keywords>
+typecheck
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+ <name>
+verify curl/system.h detection
+ </name>
+<tool>
+lib1541
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test155 b/ap/lib/libcurl/curl-7.54.1/tests/data/test155
new file mode 100644
index 0000000..b6451ec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test155
@@ -0,0 +1,140 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+auth_required
+</servercmd>
+<data>
+HTTP/1.1 401 NTLM Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: NTLM

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

+Connection: close

+

+moo
+</data>
+
+# This is supposed to be returned when the server gets a first
+# Authorization: NTLM line passed-in from the client
+<data1001>
+HTTP/1.1 401 Type-1 received, send back type-2

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Type-3 Recevied and all Things are fine swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 NTLM Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: Basic realm="gimme all yer s3cr3ts"

+WWW-Authenticate: NTLM

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

+Connection: close

+

+HTTP/1.1 401 Type-1 received, send back type-2

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Type-3 Recevied and all Things are fine swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with --anyauth authorization (picking NTLM)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/155 -T log/put155 -u testuser:testpass --anyauth
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+<file name="log/put155">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /155 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+PUT /155 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+Content-Length: 0

+

+PUT /155 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test156 b/ap/lib/libcurl/curl-7.54.1/tests/data/test156
new file mode 100644
index 0000000..098de21
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test156
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+--anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 No Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Connection: close

+

+PUT received fine. Thank you very much
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with --anyauth (when the server requires none)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/156 -T log/put156 -u testuser:testpass --anyauth
+</command>
+<file name="log/put156">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /156 HTTP/1.1

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test157 b/ap/lib/libcurl/curl-7.54.1/tests/data/test157
new file mode 100644
index 0000000..77700f6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test157
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 No Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Connection: close

+

+GET received and served just fine. Thank you very much
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with --anyauth (when the server requires none)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/157 -u testuser:testpass --anyauth
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /157 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test158 b/ap/lib/libcurl/curl-7.54.1/tests/data/test158
new file mode 100644
index 0000000..9c4b22f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test158
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 100 Continue swsclose

+Silly-header: yeeeees

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP multipart formpost with only a 100 reply
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/158 -F name=daniel
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+^Content-Type: multipart/form-data.*
+^-----------------------.*
+</strip>
+<protocol>
+POST /158 HTTP/1.1

+User-Agent: curl/7.11.2-CVS (i686-pc-linux-gnu) libcurl/7.11.2-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 145

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------4f12fcdaa3bc

+

+------------------------------4f12fcdaa3bc

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------4f12fcdaa3bc--

+</protocol>
+<errorcode>
+52
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test159 b/ap/lib/libcurl/curl-7.54.1/tests/data/test159
new file mode 100644
index 0000000..5a06217
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test159
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Connection: close

+

+This is not the real page either!
+</data1001>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Connection: close

+

+This is not the real page either!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM authorization when talking HTTP/1.0 (known to fail)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/159 -u testuser:testpass --ntlm -0
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /159 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test16 b/ap/lib/libcurl/curl-7.54.1/tests/data/test16
new file mode 100644
index 0000000..15f4c7a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test16
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 22

+

+the content goes here
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy authorization
+ </name>
+ <command>
+ -U fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong -x %HOSTIP:%HTTPPORT http://we.want.that.site.com/16
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com/16 HTTP/1.1

+Host: we.want.that.site.com

+Proxy-Authorization: Basic ZmFrZUB1c2VyOmxvb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29uZw==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test160 b/ap/lib/libcurl/curl-7.54.1/tests/data/test160
new file mode 100644
index 0000000..df80aef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test160
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Content-Length: 9

+

+surprise
+</data>
+<data1>
+HTTP/1.1 200 OK swsclose

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

+Connection: close

+

+surprise2
+</data1>
+
+<postcmd>
+wait 1
+</postcmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with delayed close, conn reuse, connection reset and retry
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/160 http://%HOSTIP:%HTTPPORT/wantmore/1600001
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+HTTP/1.1 200 OK swsclose

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

+Content-Length: 9

+

+surprise
+HTTP/1.1 200 OK swsclose

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

+Connection: close

+

+surprise2
+</stdout>
+
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/160 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /wantmore/1600001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1600 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1600
new file mode 100644
index 0000000..8804074
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1600
@@ -0,0 +1,27 @@
+<testcase>
+<info>
+<keywords>
+unittest
+NTLM
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+NTLM
+</features>
+ <name>
+NTLM unit tests
+ </name>
+<tool>
+unit1600
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1601 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1601
new file mode 100644
index 0000000..125493b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1601
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+MD5
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+MD5 unit tests
+ </name>
+<tool>
+unit1601
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1602 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1602
new file mode 100644
index 0000000..4717058
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1602
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+hash
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Internal hash create/add/destroy testing, exercising clean functions
+ </name>
+<tool>
+unit1602
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1603 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1603
new file mode 100644
index 0000000..805c9e3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1603
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+hash
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Internal hash add, retrieval, deletion testing
+ </name>
+<tool>
+unit1603
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1604 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1604
new file mode 100644
index 0000000..cf20775
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1604
@@ -0,0 +1,25 @@
+<testcase>
+<info>
+<keywords>
+unittest
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Test WIN32/MSDOS filename sanitization
+ </name>
+<tool>
+unit1604
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1605 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1605
new file mode 100644
index 0000000..09ef669
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1605
@@ -0,0 +1,25 @@
+<testcase>
+<info>
+<keywords>
+unittest
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+Test negative data lengths as input to libcurl functions
+ </name>
+<tool>
+unit1605
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1606 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1606
new file mode 100644
index 0000000..15488d4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1606
@@ -0,0 +1,26 @@
+<testcase>
+<info>
+<keywords>
+unittest
+speedcheck
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+unittest
+</features>
+ <name>
+verify speedcheck
+ </name>
+<tool>
+unit1606
+</tool>
+</client>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test161 b/ap/lib/libcurl/curl-7.54.1/tests/data/test161
new file mode 100644
index 0000000..91a3388
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test161
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+FTP
+CURLE_PARTIAL_FILE
+RETR
+PASV
+</keywords>
+</info>
+<reply>
+<data>
+1oooooooooooooooooooooooooooooooooooooooooo2
+</data>
+<size>
+10928
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR PASV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/161
+</command>
+</client>
+
+
+# Verify data after the test has been "shot"
+<verify>
+# This doesn't send QUIT because of known bug:
+# "7.8 Premature transfer end but healthy control channel"
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 161

+RETR 161

+</protocol>
+# CURLE_PARTIAL_FILE = 18
+<errorcode>
+18
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test162 b/ap/lib/libcurl/curl-7.54.1/tests/data/test162
new file mode 100644
index 0000000..ee2f40a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test162
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy NTLM auth
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1001 nocheck="yes">
+HTTP/1.0 407 BAD BOY
+Proxy-Authenticate: Basic realm="Squid proxy-caching web server"
+Server: swsclose
+Content-Type: text/html
+
+Even though it's the response code that triggers authentication, we're
+using NTLM and the server isn't, so we should fail.  We know the server
+isn't because there's no Proxy-Authorization: NTLM header
+</data1001>
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET asking for --proxy-ntlm when some other authentication is required
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/162 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-ntlm --fail
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/162 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<errorcode>
+22
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test163 b/ap/lib/libcurl/curl-7.54.1/tests/data/test163
new file mode 100644
index 0000000..22341c0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test163
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 10
+
+blablabla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP multipart formpost with contents from a file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/163 -F "name=<log/field163" -F tool=curl
+</command>
+# We create this file before the command is invoked!
+<file name="log/field163">
+contents
+from
+a
+file
+
+newlinens?
+yes please
+        

+[tab][CR] too
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/163 HTTP/1.1

+User-Agent: curl/7.11.2-CVS (i686-pc-linux-gnu) libcurl/7.11.2-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.0.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 304

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------c2d1767eb6ac

+

+------------------------------c2d1767eb6ac

+Content-Disposition: form-data; name="name"

+

+contents
+from
+a
+file
+
+newlinens?
+yes please
+        

+[tab][CR] too
+

+------------------------------c2d1767eb6ac

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------c2d1767eb6ac--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test164 b/ap/lib/libcurl/curl-7.54.1/tests/data/test164
new file mode 100644
index 0000000..9240611
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test164
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+# This particular response is an exact excerpt from an actual Apache
+# server when asked for a 0-10,12-15 range (except gt/lt changed to {}
+# to avoid XML escaping problems).
+<reply>
+<data>
+HTTP/1.1 206 Partial Content swsclose

+Date: Sat, 24 Apr 2004 09:24:49 GMT

+Server: Apache/1.3.29 (Unix) mod_throttle/3.1.2 PHP/4.3.4 mod_fastcgi/2.4.0

+Last-Modified: Tue, 23 Mar 2004 08:23:14 GMT

+ETag: "53814a-ec5-405ff3f2"

+Accept-Ranges: bytes

+Content-Length: 187

+Content-Type: multipart/byteranges; boundary=408a326132c

+

+--408a326132c

+Content-type: text/html

+Content-range: bytes 0-10/3781

+

+{html}
+{hea
+

+--408a326132c

+Content-type: text/html

+Content-range: bytes 12-15/3781

+

+}
+{t
+

+--408a326132c--

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP range with multiple ranges
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/164 -r 0-10,12-15
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/164 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=0-10,12-15

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test165 b/ap/lib/libcurl/curl-7.54.1/tests/data/test165
new file mode 100644
index 0000000..b9a1ed7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test165
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+IDN
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Content-Type: text/html

+Funny-head: yesyes

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+idn
+</features>
+<setenv>
+LC_ALL=
+LC_CTYPE=en_US.UTF-8
+</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
+ <name>
+HTTP over proxy with IDN host name
+ </name>
+ <command>
+http://www.åäö.se/page/165 -x %HOSTIP:%HTTPPORT http://www.große.de/page/165
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://www.xn--4cab6c.se/page/165 HTTP/1.1

+Host: www.xn--4cab6c.se

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://www.xn--groe-xna.de/page/165 HTTP/1.1

+Host: www.xn--groe-xna.de

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test166 b/ap/lib/libcurl/curl-7.54.1/tests/data/test166
new file mode 100644
index 0000000..2036773
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test166
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 10
+
+blablabla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP formpost a file with spaces in name
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/166 -F "name=@log/fie ld 166"
+</command>
+# We create this file before the command is invoked!
+<file name="log/fie ld 166">
+data inside the file
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/166 HTTP/1.1

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 223

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------b0b3d6d23991

+

+------------------------------b0b3d6d23991

+Content-Disposition: form-data; name="name"; filename="fie ld 166"

+Content-Type: application/octet-stream

+

+data inside the file
+

+------------------------------b0b3d6d23991--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test167 b/ap/lib/libcurl/curl-7.54.1/tests/data/test167
new file mode 100644
index 0000000..0b14996
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test167
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+WWW-Authenticate: Digest realm="weirdorealm", nonce="12345"

+

+</data>
+
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: no
+Content-Length: 15
+

+Nice auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+WWW-Authenticate: Digest realm="weirdorealm", nonce="12345"

+

+HTTP/1.1 200 OK swsclose

+Server: no
+Content-Length: 15
+

+Nice auth sir!
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with proxy-requiring-Basic to site-requiring-Digest
+ </name>
+ <command>
+http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --digest --user digest:alot
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://data.from.server.requiring.digest.hohoho.com/167 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Proxy-Authorization: Basic Zm9vOmJhcg==

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://data.from.server.requiring.digest.hohoho.com/167 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Proxy-Authorization: Basic Zm9vOmJhcg==

+Authorization: Digest username="digest", realm="weirdorealm", nonce="12345", uri="/167", response="13c7c02a252cbe1c46d8669898a3be26"

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test168 b/ap/lib/libcurl/curl-7.54.1/tests/data/test168
new file mode 100644
index 0000000..20e0b6d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test168
@@ -0,0 +1,100 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Digest auth
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<data>
+HTTP/1.1 407 Authorization Required to proxy me my dear swsclose

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+

+And you should ignore this data.
+</data>
+
+# then this is returned since we get no server-auth
+<data1000>
+HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose

+WWW-Authenticate: Digest realm="realmweirdo", nonce="123456"

+

+you should ignore this data too
+</data1000>
+
+<data1001>
+HTTP/1.1 200 OK swsclose

+Server: no
+Content-Length: 15
+

+Nice auth sir!
+</data1001>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear swsclose

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+

+HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose

+WWW-Authenticate: Digest realm="realmweirdo", nonce="123456"

+

+HTTP/1.1 200 OK swsclose

+Server: no
+Content-Length: 15
+

+Nice auth sir!
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with proxy-requiring-Digest to site-requiring-Digest
+ </name>
+ <command>
+http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-digest --digest --user digest:alot
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/168", response="fb8608e00ad9239a3dedb14bc8575976"

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/168", response="fb8608e00ad9239a3dedb14bc8575976"

+Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/168", response="ca87f2d768a231e2d637a55698d5c416"

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test169 b/ap/lib/libcurl/curl-7.54.1/tests/data/test169
new file mode 100644
index 0000000..c1f1b37
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test169
@@ -0,0 +1,129 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy NTLM auth
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<data>
+HTTP/1.1 407 Authorization Required to proxy me my dear swsclose

+Proxy-Authenticate: NTLM

+

+And you should ignore this data.
+</data>
+
+# then this is returned since we get no server-auth
+<data1000>
+HTTP/1.1 200 Authorizated fine

+Content-Length: 27

+

+Welcome to the end station
+</data1000>
+
+<data1001>
+HTTP/1.1 407 NTLM type-1 received sending back type-2

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 401 You now need to authenticate with the host

+Server: Microsoft-IIS/5.0

+WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef"

+Content-Length: 46

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

+

+We have not authenticated with the server yet
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 NTLM type-1 received sending back type-2

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 401 You now need to authenticate with the host

+Server: Microsoft-IIS/5.0

+WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef"

+Content-Length: 46

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

+

+HTTP/1.1 200 Authorizated fine

+Content-Length: 27

+

+Welcome to the end station
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP with proxy-requiring-NTLM to site-requiring-Digest
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://data.from.server.requiring.digest.hohoho.com/169 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://data.from.server.requiring.digest.hohoho.com/169 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://data.from.server.requiring.digest.hohoho.com/169 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://data.from.server.requiring.digest.hohoho.com/169 HTTP/1.1

+Host: data.from.server.requiring.digest.hohoho.com

+Authorization: Digest username="digest", realm="r e a l m", nonce="abcdef", uri="/169", response="95d48591985a03c4b49cb962aa7bd3e6"

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test17 b/ap/lib/libcurl/curl-7.54.1/tests/data/test17
new file mode 100644
index 0000000..de03c1d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test17
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP custom request
+config file
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Funny-head: yesyes
+Content-Length: 27

+
+This is the proof it works
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with config file on stdin
+ </name>
+ <stdin>
+#
+# 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
+ </stdin>
+ <command>
+-K - %HOSTIP:%HTTPPORT/that.site.com/17
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+MOOO /that.site.com/17 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: agent007 license to drill	

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test170 b/ap/lib/libcurl/curl-7.54.1/tests/data/test170
new file mode 100644
index 0000000..8ce7774
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test170
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+HTTP POST with --proxy-ntlm and no SSL with no response
+ </name>
+ <command>
+http://a.galaxy.far.far.away/170 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:bar --proxy-ntlm -F "dummy=value"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+POST http://a.galaxy.far.far.away/170 HTTP/1.1

+Host: a.galaxy.far.far.away

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 libidn/0.4.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+

+</protocol>
+# 52 is CURLE_GOT_NOTHING
+<errorcode>
+52
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1700 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1700
new file mode 100644
index 0000000..9ab46c9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1700
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1701 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1701
new file mode 100644
index 0000000..4943288
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1701
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1702 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1702
new file mode 100644
index 0000000..903a737
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1702
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test171 b/ap/lib/libcurl/curl-7.54.1/tests/data/test171
new file mode 100644
index 0000000..09e48b7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test171
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Date: Tue, 25 Sep 2001 19:37:44 GMT

+Content-Type: text/html

+Set-Cookie: XToken=xt;Domain=.z.x.com;Path=/

+Cache-control: private

+Content-Length: 62

+

+This server reply is for testing a simple cookie test case...
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, get cookie with dot prefixed full domain
+ </name>
+ <command>
+-c log/jar171 -x %HOSTIP:%HTTPPORT http://z.x.com/171
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://z.x.com/171 HTTP/1.1

+Host: z.x.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<file name="log/jar171" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+.z.x.com	TRUE	/	FALSE	0	XToken	xt
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test172 b/ap/lib/libcurl/curl-7.54.1/tests/data/test172
new file mode 100644
index 0000000..ad36284
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test172
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Content-Length: 4

+Connection: close

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with cookies file and custom added cookie
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/172 -b log/jar172.txt -b "tool=curl; name=fool"
+</command>
+<file name="log/jar172.txt">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+.%HOSTIP	TRUE	/silly/	FALSE	0	ismatch	this
+.%HOSTIP	TRUE	/	FALSE	0	partmatch	present
+%HOSTIP	FALSE	/we/want/	FALSE	2139150993	nodomain	value
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/172 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: nodomain=value; partmatch=present; tool=curl; name=fool

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test173 b/ap/lib/libcurl/curl-7.54.1/tests/data/test173
new file mode 100644
index 0000000..bf6af00
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test173
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 11
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-formpost a file from stdin with "faked" filename
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/173 -F field1=contents1 -F "fileupload=@-;filename=/dev/null;type=text/x-null;format=x-curl"
+</command>
+
+<stdin>
+line1
+line2
+line3
+line4
+line5
+line6
+line7
+line8
+</stdin>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/173 HTTP/1.1

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 360

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------5dbea401cd8c

+

+------------------------------5dbea401cd8c

+Content-Disposition: form-data; name="field1"

+

+contents1

+------------------------------5dbea401cd8c

+Content-Disposition: form-data; name="fileupload"; filename="/dev/null"

+Content-Type: text/x-null;format=x-curl

+

+line1
+line2
+line3
+line4
+line5
+line6
+line7
+line8
+

+------------------------------5dbea401cd8c--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test174 b/ap/lib/libcurl/curl-7.54.1/tests/data/test174
new file mode 100644
index 0000000..9767f2f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test174
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 beng swsclose

+Server: Microsoft-IIS/6.0

+Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth

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

+Content-Length: 26

+

+This is not the real page
+</data>
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+ <name>
+HTTP POST --anyauth to server not requiring any auth at all
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/174 -u testuser:testpass --anyauth -d "junkelijunk"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /174 HTTP/1.1

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 11

+Content-Type: application/x-www-form-urlencoded

+

+junkelijunk
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test175 b/ap/lib/libcurl/curl-7.54.1/tests/data/test175
new file mode 100644
index 0000000..9e005f1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test175
@@ -0,0 +1,86 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 beng swsclose swsbounce

+Server: Microsoft-IIS/6.0

+Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth

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

+

+This is not the real page
+</data>
+
+<data1>
+HTTP/1.1 200 moo swsclose

+Server: Microsoft-IIS/6.0

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

+Content-Length: 16

+

+content for you
+</data1>
+
+<datacheck>
+HTTP/1.1 200 beng swsclose swsbounce

+Server: Microsoft-IIS/6.0

+Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth

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

+

+HTTP/1.1 200 moo swsclose

+Server: Microsoft-IIS/6.0

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

+Content-Length: 16

+

+content for you
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+<features>
+crypto
+</features>
+ <name>
+HTTP POST --digest to server not requiring any auth at all
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/175 -u auser:apasswd --digest -d "junkelijunk"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /175 HTTP/1.1

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /175 HTTP/1.1

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 11

+Content-Type: application/x-www-form-urlencoded

+

+junkelijunk
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test176 b/ap/lib/libcurl/curl-7.54.1/tests/data/test176
new file mode 100644
index 0000000..73c53ca
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test176
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# the first request has NTLM type-1 included, and then the 1001 is returned
+<data1001>
+HTTP/1.1 200 beng swsclose swsbounce

+Server: Microsoft-IIS/6.0

+Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth

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

+

+</data1001>
+
+# the second request should be auth-less and then this is returned.
+<data>
+HTTP/1.1 200 moo swsclose

+Server: Microsoft-IIS/6.0

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

+Content-Length: 16

+

+content for you
+</data>
+
+<datacheck>
+HTTP/1.1 200 beng swsclose swsbounce

+Server: Microsoft-IIS/6.0

+Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth

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

+

+HTTP/1.1 200 moo swsclose

+Server: Microsoft-IIS/6.0

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

+Content-Length: 16

+

+content for you
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP POST --ntlm to server not requiring any auth at all
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/176 -u auser:apasswd --ntlm -d "junkelijunk"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /176 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /176 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Accept: */*

+Content-Length: 11

+Content-Type: application/x-www-form-urlencoded

+

+junkelijunk
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test177 b/ap/lib/libcurl/curl-7.54.1/tests/data/test177
new file mode 100644
index 0000000..495dea9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test177
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 *MOVED* swsclose swsbounce

+Server: Microsoft-IIS/6.0

+Location: /mooooo/177

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

+

+</data>
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+<features>
+crypto
+</features>
+ <name>
+HTTP POST --digest to server doing a 302-location response
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/177 -u auser:apasswd --digest -d "junkelijunk"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /177 HTTP/1.1

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test178 b/ap/lib/libcurl/curl-7.54.1/tests/data/test178
new file mode 100644
index 0000000..7481467
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test178
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: -6
+Content-Type: text/html
+Funny-head: yesyes
+
+moooooooooooo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+simple HTTP GET with negative Content-Length
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/178
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /178 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test179 b/ap/lib/libcurl/curl-7.54.1/tests/data/test179
new file mode 100644
index 0000000..f8f7811
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test179
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Server: Microsoft-IIS/4.0
+Date: Tue, 25 Sep 2001 19:37:44 GMT
+Content-Type: text/html
+Connection: close
+Content-Length: 21

+
+This server says moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP using proxy and cookies with path checks
+ </name>
+ <command>
+http://supertrooper.fake/c/179 -b log/injar179 -x %HOSTIP:%HTTPPORT
+</command>
+<file name="log/injar179">
+supertrooper.fake	FALSE	/a	FALSE	2139150993	mooo	indeed
+supertrooper.fake	FALSE	/b	FALSE	0		moo1	indeed
+supertrooper.fake	FALSE	/c	FALSE	2139150993	moo2	indeed
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://supertrooper.fake/c/179 HTTP/1.1

+Host: supertrooper.fake

+Accept: */*

+Proxy-Connection: Keep-Alive

+Cookie: moo2=indeed

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test18 b/ap/lib/libcurl/curl-7.54.1/tests/data/test18
new file mode 100644
index 0000000..e1d7639
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test18
@@ -0,0 +1,91 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+{} list
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 4

+

+moo
+</data>
+<data2>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 4

+

+foo
+</data2>
+<data3>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 4

+

+hoo
+</data3>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+multiple requests using {} in URL
+ </name>
+ <command>
+"%HOSTIP:%HTTPPORT/{18,180002,180003}"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /18 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /180002 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /180003 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+--_curl_--%HOSTIP:%HTTPPORT/18
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 4

+

+moo
+--_curl_--%HOSTIP:%HTTPPORT/180002
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 4

+

+foo
+--_curl_--%HOSTIP:%HTTPPORT/180003
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 4

+

+hoo
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test180 b/ap/lib/libcurl/curl-7.54.1/tests/data/test180
new file mode 100644
index 0000000..0b2ca03
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test180
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP/1.0
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 1.0 PUT
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/180 -T log/test180.txt --http1.0
+</command>
+<file name="log/test180.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /we/want/180 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 78

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1800 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1800
new file mode 100644
index 0000000..0110184
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1800
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP/2
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 Ignored!
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+
+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http/2
+</features>
+ <name>
+HTTP/2 upgrade refused
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1800 --http2
+</command>
+
+</client>
+
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1800 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Connection: Upgrade, HTTP2-Settings

+Upgrade: %H2CVER

+HTTP2-Settings: AAMAAABkAARAAAAAAAIAAAAA

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1801 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1801
new file mode 100644
index 0000000..b827ab5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1801
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP/2
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 101 Switching!
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+Content-Length: 6
+Content-Type: text/html
+
+lies!
+</data>
+
+<datacheck>
+HTTP/1.1 101 Switching!
+</datacheck>
+
+# listen to the upgrade request!
+<servercmd>
+upgrade
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http/2
+</features>
+ <name>
+HTTP/2 upgrade with lying server
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1801 --http2
+</command>
+
+</client>
+
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /1801 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Connection: Upgrade, HTTP2-Settings

+Upgrade: %H2CVER

+HTTP2-Settings: AAMAAABkAARAAAAAAAIAAAAA

+

+</protocol>
+# CURLE_HTTP2: Send failure: Broken pipe
+<errorcode>
+16
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test181 b/ap/lib/libcurl/curl-7.54.1/tests/data/test181
new file mode 100644
index 0000000..b6b55cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test181
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP/1.0
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 1.0 POST
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/181 --data-binary @log/test181.txt --http1.0
+</command>
+<file name="log/test181.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   POST
+      feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /we/want/181 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 79

+Content-Type: application/x-www-form-urlencoded

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   POST
+      feature
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test182 b/ap/lib/libcurl/curl-7.54.1/tests/data/test182
new file mode 100644
index 0000000..f640a0e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test182
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data sendzero="yes">
+</data>
+<size>
+0
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<name>
+FTP download an empty file
+</name>
+<command>
+ftp://%HOSTIP:%FTPPORT/182
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 182

+RETR 182

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test183 b/ap/lib/libcurl/curl-7.54.1/tests/data/test183
new file mode 100644
index 0000000..f34dc0c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test183
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+persistent connection
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Content-Length: 4

+

+moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET two URLs over a single proxy with persistent connection
+ </name>
+ <command>
+http://deathstar.another.galaxy/183 http://a.galaxy.far.far.away/183 --proxy http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://deathstar.another.galaxy/183 HTTP/1.1

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6

+Host: deathstar.another.galaxy

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://a.galaxy.far.far.away/183 HTTP/1.1

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6
+Host: a.galaxy.far.far.away

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test184 b/ap/lib/libcurl/curl-7.54.1/tests/data/test184
new file mode 100644
index 0000000..8b09dde
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test184
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsbounce

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

+Content-Length: 4

+Location: http://yet.another.host/184
+

+moo
+</data>
+<data1>
+HTTP/1.1 200 OK

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

+Content-Length: 4

+

+moo
+</data1>
+<datacheck>
+HTTP/1.1 301 OK swsbounce

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

+Content-Length: 4

+Location: http://yet.another.host/184
+

+HTTP/1.1 200 OK

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

+Content-Length: 4

+

+moo
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP replace Host: when following Location: to new host
+ </name>
+ <command>
+http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://deathstar.another.galaxy/184 HTTP/1.1

+Host: another.visitor.stay.a.while.stay.foreeeeeever

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://yet.another.host/184 HTTP/1.1

+Host: yet.another.host

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test185 b/ap/lib/libcurl/curl-7.54.1/tests/data/test185
new file mode 100644
index 0000000..298dd49
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test185
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsbounce

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

+Content-Length: 4

+Location: go/west/185

+

+moo
+</data>
+<data1>
+HTTP/1.1 200 OK

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

+Content-Length: 4

+

+moo
+</data1>
+<datacheck>
+HTTP/1.1 301 OK swsbounce

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

+Content-Length: 4

+Location: go/west/185

+

+HTTP/1.1 200 OK

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

+Content-Length: 4

+

+moo
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP replace Host: when following Location: on the same host
+ </name>
+ <command>
+http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://deathstar.another.galaxy/185 HTTP/1.1

+Host: another.visitor.stay.a.while.stay.foreeeeeever

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://deathstar.another.galaxy/go/west/185 HTTP/1.1

+Host: another.visitor.stay.a.while.stay.foreeeeeever

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test186 b/ap/lib/libcurl/curl-7.54.1/tests/data/test186
new file mode 100644
index 0000000..b07736c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test186
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 11
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting with types on text fields
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/186 -F "name=daniel;type=moo/foo" -F "html= <body>hello</body>;type=text/html;charset=verymoo"
+</command>
+# We create this file before the command is invoked!
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/186 HTTP/1.1

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.7d zlib/1.2.1.1 c-ares/1.2.0 libidn/0.5.2

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 321

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------212d9006ceb5

+

+------------------------------212d9006ceb5

+Content-Disposition: form-data; name="name"

+Content-Type: moo/foo

+

+daniel

+------------------------------212d9006ceb5

+Content-Disposition: form-data; name="html"

+Content-Type: text/html;charset=verymoo

+

+ <body>hello</body>

+------------------------------212d9006ceb5--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test187 b/ap/lib/libcurl/curl-7.54.1/tests/data/test187
new file mode 100644
index 0000000..b82a6c6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test187
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: /root/1870002.txt?coolsite=yes
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: /root/1870002.txt?coolsite=yes
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect with bad host name separation and slash in parameters
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT?oh=what-weird=test/187 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /?oh=what-weird=test/187 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /root/1870002.txt?coolsite=yes HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test188 b/ap/lib/libcurl/curl-7.54.1/tests/data/test188
new file mode 100644
index 0000000..a23a2a1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test188
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Content-Range
+Resume
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsbounce
+Location: /188
+Content-Length: 2
+
+OK
+</data>
+<data1>
+HTTP/1.1 200 OK 
+Connection: close
+Content-Length: 15
+Content-Range: bytes 50-
+
+Actual content
+</data1>
+
+<datacheck>
+HTTP/1.1 301 OK swsbounce
+Location: /188
+Content-Length: 2
+
+HTTP/1.1 200 OK 
+Connection: close
+Content-Length: 15
+Content-Range: bytes 50-
+
+Actual content
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with resume and redirect
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/188 -C 50 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /188 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=50-

+User-Agent: curl/7.6 (sparc-sun-solaris2.7) libcurl 7.6-pre4 (SSL 0.9.6) (krb4 enabled)

+Accept: */*

+

+GET /188 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=50-

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.7d zlib/1.2.1.2 libidn/0.5.2

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test189 b/ap/lib/libcurl/curl-7.54.1/tests/data/test189
new file mode 100644
index 0000000..f82b4ad
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test189
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK swsbounce
+Location: /189
+Content-Length: 2
+
+OK
+</data>
+<data1>
+HTTP/1.1 200 OK 
+Connection: close
+Content-Length: 15
+
+Actual content
+</data1>
+
+<datacheck>
+HTTP/1.1 301 OK swsbounce
+Location: /189
+Content-Length: 2
+
+HTTP/1.1 200 OK 
+Connection: close
+Content-Length: 15
+
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with resume and redirect (to a page that doesn't resume)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/189 -C 50 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /189 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=50-

+User-Agent: curl/7.6 (sparc-sun-solaris2.7) libcurl 7.6-pre4 (SSL 0.9.6) (krb4 enabled)

+Accept: */*

+

+GET /189 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=50-

+User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.7d zlib/1.2.1.2 libidn/0.5.2

+Accept: */*

+

+</protocol>
+# 33 is CURLE_RANGE_ERROR
+<errorcode>
+33
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test19 b/ap/lib/libcurl/curl-7.54.1/tests/data/test19
new file mode 100644
index 0000000..dd60b8c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test19
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+connect to non-listen
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+attempt connect to non-listening socket
+ </name>
+ <command>
+%HOSTIP:60000
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test190 b/ap/lib/libcurl/curl-7.54.1/tests/data/test190
new file mode 100644
index 0000000..6f5d66a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test190
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+DELAY CWD 60
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<killserver>
+ftp
+</killserver>
+ <name>
+FTP download with strict timeout and slow CWD
+ </name>
+ <command timeout="1">
+ftp://%HOSTIP:%FTPPORT/path/to/file/190 -m %FTPTIME2
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 28 is CURLE_OPERATION_TIMEDOUT
+<errorcode>
+28
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1900 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1900
new file mode 100644
index 0000000..2e3c93a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1900
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+pipelining
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+Adding handle 0
+Handle 0 Completed with status 0
+Adding handle 1
+Adding handle 2
+Adding handle 3
+Adding handle 4
+Adding handle 5
+Adding handle 6
+Handle 4 Completed with status 0
+Handle 5 Completed with status 0
+Handle 6 Completed with status 0
+Handle 1 Completed with status 0
+Handle 2 Completed with status 0
+Handle 3 Completed with status 0
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http-pipe
+</server>
+<features>
+http
+</features>
+<tool>
+lib1900
+</tool>
+ <name>
+HTTP GET using pipelining
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPIPEPORT/ log/urls1900.txt
+</command>
+<file name="log/urls1900.txt">
+0 1k.txt
+1000 100k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1901 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1901
new file mode 100644
index 0000000..83cdf72
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1901
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+pipelining
+multi
+flaky
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+Adding handle 0
+Handle 0 Completed with status 0
+Adding handle 1
+Adding handle 2
+Adding handle 3
+Adding handle 4
+Adding handle 5
+Adding handle 6
+Handle 2 Completed with status 0
+Handle 3 Completed with status 0
+Handle 4 Completed with status 0
+Handle 1 Completed with status 0
+Handle 5 Completed with status 0
+Handle 6 Completed with status 0
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http-pipe
+</server>
+<features>
+http
+</features>
+<tool>
+lib1900
+</tool>
+ <name>
+HTTP GET using pipelining, blacklisted site
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPIPEPORT/ log/urls1901.txt
+</command>
+<file name="log/urls1901.txt">
+blacklist_site 127.0.0.1:%HTTPPIPEPORT
+0 1k.txt
+1000 100k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1902 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1902
new file mode 100644
index 0000000..3c99931
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1902
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+pipelining
+multi
+flaky
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+Adding handle 0
+Handle 0 Completed with status 0
+Adding handle 1
+Adding handle 2
+Adding handle 3
+Adding handle 4
+Adding handle 5
+Adding handle 6
+Handle 1 Completed with status 0
+Handle 4 Completed with status 0
+Handle 5 Completed with status 0
+Handle 6 Completed with status 0
+Handle 2 Completed with status 0
+Handle 3 Completed with status 0
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http-pipe
+</server>
+<features>
+http
+</features>
+<tool>
+lib1900
+</tool>
+ <name>
+HTTP GET using pipelining, broken pipe
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPIPEPORT/ log/urls1902.txt
+</command>
+<file name="log/urls1902.txt">
+0 1k.txt
+1000 connection_close.txt
+1 1k.txt
+2 1k.txt
+3 1k.txt
+4 1k.txt
+5 1k.txt
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test1903 b/ap/lib/libcurl/curl-7.54.1/tests/data/test1903
new file mode 100644
index 0000000..219ffe1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test1903
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+pipelining
+multi
+flaky
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+Adding handle 0
+Handle 0 Completed with status 0
+Adding handle 1
+Adding handle 2
+Adding handle 3
+Adding handle 4
+Adding handle 5
+Adding handle 6
+Handle 2 Completed with status 0
+Handle 3 Completed with status 0
+Handle 4 Completed with status 0
+Handle 5 Completed with status 0
+Handle 6 Completed with status 0
+Handle 1 Completed with status 0
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http-pipe
+</server>
+<features>
+http
+</features>
+<tool>
+lib1900
+</tool>
+ <name>
+HTTP GET using pipelining, penalized on content-length
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPIPEPORT/ log/urls1903.txt
+</command>
+<file name="log/urls1903.txt">
+0 1k.txt
+1000 100k.txt
+550 alphabet.txt
+10 alphabet.txt
+10 alphabet.txt
+10 alphabet.txt
+10 alphabet.txt
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test191 b/ap/lib/libcurl/curl-7.54.1/tests/data/test191
new file mode 100644
index 0000000..86fa29f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test191
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+data in file
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP URL with ?-letters in username and password 
+ </name>
+ <command>
+"ftp://use%3fr:pass%3fword@%HOSTIP:%FTPPORT/191"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER use?r

+PASS pass?word

+PWD

+EPSV

+TYPE I

+SIZE 191

+RETR 191

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test192 b/ap/lib/libcurl/curl-7.54.1/tests/data/test192
new file mode 100644
index 0000000..42cebc0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test192
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 8
+Connection: close
+
+monster
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET -w num_connects with one simple connect
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/192 -w "%{num_connects}\n"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /192 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 8
+Connection: close
+
+monster
+1
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test193 b/ap/lib/libcurl/curl-7.54.1/tests/data/test193
new file mode 100644
index 0000000..c5425bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test193
@@ -0,0 +1,82 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+--write-out
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK swsbounce swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 8
+Connection: close
+Location: ./193
+
+monster
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 8
+Connection: close
+
+monster
+</data1>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET -w num_connects with redirected fetch (2 connects)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/193 -w "%{num_connects}\n" -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /193 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /193 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 302 OK swsbounce swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 8
+Connection: close
+Location: ./193
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 8
+Connection: close
+
+monster
+2
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test194 b/ap/lib/libcurl/curl-7.54.1/tests/data/test194
new file mode 100644
index 0000000..730446f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test194
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Content-Range
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 416 Requested Range Not Satisfiable swsclose

+Date: Fri, 24 Oct 2003 21:33:12 GMT

+Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1

+Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT

+ETag: "ab57a-507-3f9968f3"

+Accept-Ranges: bytes

+Content-Length: 4

+Content-Range: bytes */87

+Content-Type: image/gif

+Connection: close

+

+bad
+</data>
+
+<datacheck>
+HTTP/1.1 416 Requested Range Not Satisfiable swsclose

+Date: Fri, 24 Oct 2003 21:33:12 GMT

+Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1

+Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT

+ETag: "ab57a-507-3f9968f3"

+Accept-Ranges: bytes

+Content-Length: 4

+Content-Range: bytes */87

+Content-Type: image/gif

+Connection: close

+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP resume transfer with the whole file already downloaded and --fail
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/194 -C 87 --fail
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/194 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=87-

+Accept: */*

+

+</protocol>
+# CURLE_HTTP_RETURNED_ERROR
+<errorcode>
+22
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test195 b/ap/lib/libcurl/curl-7.54.1/tests/data/test195
new file mode 100644
index 0000000..3059e8d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test195
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 530 temporarily not available
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP response 530 after PASS, temporarily not allowed access
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/195
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test196 b/ap/lib/libcurl/curl-7.54.1/tests/data/test196
new file mode 100644
index 0000000..ee9d339
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test196
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 430 temporarily not available
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP transient error, retry request once
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/196 --retry 1
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 67 is CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+USER anonymous

+PASS ftp@example.com

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test197 b/ap/lib/libcurl/curl-7.54.1/tests/data/test197
new file mode 100644
index 0000000..c299a22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test197
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 503 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 21
+
+server not available
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Connection: close
+
+ok
+</data1>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET --retry on 503 error with output to stdout
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/197 --retry 1000
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /197 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /197 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 503 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 21
+
+server not available
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Connection: close
+
+ok
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test198 b/ap/lib/libcurl/curl-7.54.1/tests/data/test198
new file mode 100644
index 0000000..dca26b9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test198
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 503 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 21
+
+server not available
+</data>
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Connection: close
+
+ok
+</data1>
+
+<datacheck>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Connection: close
+
+ok
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET --retry on 503 error with output to file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/198 --retry 1000
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /198 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /198 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test199 b/ap/lib/libcurl/curl-7.54.1/tests/data/test199
new file mode 100644
index 0000000..72675b5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test199
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with -d, -G and {}
+ </name>
+ <command>
+-d "foo=moo&moo=poo" "http://%HOSTIP:%HTTPPORT/{199,199}" -G
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /199?foo=moo&moo=poo HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /199?foo=moo&moo=poo HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2
new file mode 100644
index 0000000..9f9c506
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with user and password
+ </name>
+ <command>
+ -u fake:user http://%HOSTIP:%HTTPPORT/2
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic ZmFrZTp1c2Vy

+Accept: */*

+

+</protocol>
+<data>
+[insert full protocol verifiction dump here]
+</data>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test20 b/ap/lib/libcurl/curl-7.54.1/tests/data/test20
new file mode 100644
index 0000000..57fa48d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test20
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+FAILURE
+non-existing host
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+attempt connect to non-existing host name
+ </name>
+ <command>
+non-existing-host.haxx.se.
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+6
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test200 b/ap/lib/libcurl/curl-7.54.1/tests/data/test200
new file mode 100644
index 0000000..8be1de0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test200
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+<reply>
+<data>
+foo
+   bar
+bar
+   foo
+moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+basic file:// file
+ </name>
+ <command>
+file://localhost/%PWD/log/test200.txt
+</command>
+<file name="log/test200.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2000 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2000
new file mode 100644
index 0000000..d3edb16
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2000
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+FILE
+multiprotocol
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+file
+</server>
+ <name>
+FTP RETR followed by FILE
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/2000 file://localhost/%PWD/log/test2000.txt
+</command>
+<file name="log/test2000.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 2000

+RETR 2000

+QUIT

+</protocol>
+<stdout>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+foo
+   bar
+bar
+   foo
+moo
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2001 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2001
new file mode 100644
index 0000000..68c0df7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2001
@@ -0,0 +1,109 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+FTP
+PASV
+FILE
+multiprotocol
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data1>
+<data2 nocheck="yes">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data2>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+ftp
+file
+</server>
+ <name>
+HTTP GET followed by FTP RETR followed by FILE
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/20010001 ftp://%HOSTIP:%FTPPORT/20010002 file://localhost/%PWD/log/test2001.txt
+</command>
+<file name="log/test2001.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20010001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 20010002

+RETR 20010002

+QUIT

+</protocol>
+<stdout>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+data
+    to
+      see
+that FTP
+works
+  so does it?
+foo
+   bar
+bar
+   foo
+moo
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2002 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2002
new file mode 100644
index 0000000..db96bfe
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2002
@@ -0,0 +1,128 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+FTP
+PASV
+FILE
+TFTP
+TFTP RRQ
+multiprotocol
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data1>
+<data2 nocheck="yes">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data2>
+<data3 nocheck="yes">
+a chunk of
+data
+returned
+ to TFTP client
+</data3>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+ftp
+file
+tftp
+</server>
+ <name>
+HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/20020001 ftp://%HOSTIP:%FTPPORT/20020002 file://localhost/%PWD/log/test2002.txt tftp://%HOSTIP:%TFTPPORT//20020003
+</command>
+<file name="log/test2002.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20020001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 20020002

+RETR 20020002

+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /20020003
+QUIT

+</protocol>
+<stdout>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+data
+    to
+      see
+that FTP
+works
+  so does it?
+foo
+   bar
+bar
+   foo
+moo
+a chunk of
+data
+returned
+ to TFTP client
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2003 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2003
new file mode 100644
index 0000000..59a743f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2003
@@ -0,0 +1,168 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+FTP
+PASV
+FILE
+TFTP
+TFTP RRQ
+multiprotocol
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data1>
+<data2 nocheck="yes">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data2>
+<data3 nocheck="yes">
+a chunk of
+data
+returned
+ to TFTP client
+</data3>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+ftp
+file
+tftp
+</server>
+ <name>
+HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ then again in reverse order
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/20030001 ftp://%HOSTIP:%FTPPORT/20030002 file://localhost/%PWD/log/test2003.txt tftp://%HOSTIP:%TFTPPORT//20030003 tftp://%HOSTIP:%TFTPPORT//20030003 file://localhost/%PWD/log/test2003.txt ftp://%HOSTIP:%FTPPORT/20030002 http://%HOSTIP:%HTTPPORT/20030001 
+</command>
+<file name="log/test2003.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20030001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 20030002

+RETR 20030002

+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /20030003
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /20030003
+EPSV

+SIZE 20030002

+RETR 20030002

+GET /20030001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+QUIT

+</protocol>
+<stdout>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+data
+    to
+      see
+that FTP
+works
+  so does it?
+foo
+   bar
+bar
+   foo
+moo
+a chunk of
+data
+returned
+ to TFTP client
+a chunk of
+data
+returned
+ to TFTP client
+foo
+   bar
+bar
+   foo
+moo
+data
+    to
+      see
+that FTP
+works
+  so does it?
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2004 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2004
new file mode 100644
index 0000000..8035183
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2004
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+FILE
+SFTP
+SCP
+multiprotocol
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+Test data file
+for tftp test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+sftp
+</server>
+ <name>
+TFTP RRQ followed by SFTP retrieval followed by FILE followed by SCP retrieval then again in reverse order
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: tftp://%HOSTIP:%TFTPPORT//2004 sftp://%HOSTIP:%SSHPORT%PWD/log/test2004.txt file://localhost/%PWD/log/test2004.txt scp://%HOSTIP:%SSHPORT%PWD/log/test2004.txt file://localhost/%PWD/log/test2004.txt sftp://%HOSTIP:%SSHPORT%PWD/log/test2004.txt tftp://%HOSTIP:%TFTPPORT//2004 --insecure
+</command>
+<file name="log/test2004.txt">
+This is test data
+for several protocols
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /2004
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /2004
+</protocol>
+<stdout>
+Test data file
+for tftp test
+This is test data
+for several protocols
+This is test data
+for several protocols
+This is test data
+for several protocols
+This is test data
+for several protocols
+This is test data
+for several protocols
+Test data file
+for tftp test
+</stdout>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2005 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2005
new file mode 100644
index 0000000..061f99b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2005
@@ -0,0 +1,93 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 37
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2005; charset=funny; option=strange
+Funny-head: yesyes
+
+Data delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, HTTP resource
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2005.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2005.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2005">
+   <verification>
+    <hash type="sha256">a430d26389c69b7a245a9ad692cf20b4dc026fb7c2ff8a2c164c49a77130d6d9</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2005</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2005 log/name2005
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2005 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2005">
+Data delivered from an HTTP resource
+</file1>
+<file2 name="log/stdout2005">
+</file2>
+<file3 name="log/stderr2005">
+Metalink: parsing (file://%PWD/log/test2005.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2005.metalink) OK
+Metalink: fetching (log/download2005) from (http://%HOSTIP:%HTTPPORT/2005)...
+Metalink: fetching (log/download2005) from (http://%HOSTIP:%HTTPPORT/2005) OK
+Metalink: validating (log/download2005)...
+Metalink: validating (log/download2005) [sha-256] OK
+</file3>
+<stripfile3>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile3>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2006 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2006
new file mode 100644
index 0000000..e25556f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2006
@@ -0,0 +1,112 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 14:49:01 GMT
+Server: test-server/fake
+Content-Length: 42
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2006; charset=funny; option=strange
+Funny-head: yesyes
+
+Some data delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# This relies on the debug feature to allow us to set directory to store the
+# -O output in, using the CURL_TESTDIR variable. This test might use it upon
+# failure only, successful execution won't actually use it.
+<features>
+debug
+file
+Metalink
+</features>
+<server>
+http
+</server>
+ <name>
+Metalink local XML file, HTTP resource, using -O -D file
+ </name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2006.metalink -O -D log/heads2006
+</command>
+# local metalink file written before test command runs
+<file name="log/test2006.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2006">
+   <verification>
+    <hash type="md5">we-only-check-the-strongest-hash-provided</hash>
+    <hash type="sha256">319cb6be756734b7ff689628ca3265580cdae6a0e38f42d4ac612ff4fba143b0</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2006</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2006 log/name2006
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2006 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2006">
+Some data delivered from an HTTP resource
+</file1>
+<file2 name="log/heads2006">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 14:49:01 GMT
+Server: test-server/fake
+Content-Length: 42
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2006; charset=funny; option=strange
+Funny-head: yesyes
+
+</file2>
+<file3 name="log/stdout2006">
+</file3>
+<file4 name="log/stderr2006">
+Metalink: parsing (file://%PWD/log/test2006.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2006.metalink) OK
+Metalink: fetching (log/download2006) from (http://%HOSTIP:%HTTPPORT/2006)...
+Metalink: fetching (log/download2006) from (http://%HOSTIP:%HTTPPORT/2006) OK
+Metalink: validating (log/download2006)...
+Metalink: validating (log/download2006) [sha-256] OK
+</file4>
+<stripfile4>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile4>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2007 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2007
new file mode 100644
index 0000000..cc4bd8c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2007
@@ -0,0 +1,113 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 14:50:02 GMT
+Server: test-server/fake
+Content-Length: 42
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2007; charset=funny; option=strange
+Funny-head: yesyes
+
+Something delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+# This relies on the debug feature to allow us to set directory to store the
+# -O and -J output in, using the CURL_TESTDIR variable. This test might use
+# it upon failure only, successful execution won't actually use it.
+<features>
+debug
+file
+Metalink
+</features>
+<server>
+http
+</server>
+ <name>
+Metalink local XML file, HTTP resource, using -O -J -D file
+ </name>
+<setenv>
+CURL_TESTDIR=%PWD/log
+</setenv>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2007.metalink -J -O -D log/heads2007
+</command>
+# local metalink file written before test command runs
+<file name="log/test2007.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2007">
+   <verification>
+    <hash type="md5">we-only-check-the-strongest-hash-provided</hash>
+    <hash type="sha256">52899e30f80e3490632d505653204e1fb5b02bda141048704ce9a0ed00b8a3f5</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2007</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2007 log/name2007
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2007 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2007">
+Something delivered from an HTTP resource
+</file1>
+<file2 name="log/heads2007">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 14:50:02 GMT
+Server: test-server/fake
+Content-Length: 42
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2007; charset=funny; option=strange
+Funny-head: yesyes
+
+</file2>
+<file3 name="log/stdout2007">
+</file3>
+<file4 name="log/stderr2007">
+Metalink: parsing (file://%PWD/log/test2007.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2007.metalink) OK
+Metalink: fetching (log/download2007) from (http://%HOSTIP:%HTTPPORT/2007)...
+Metalink: fetching (log/download2007) from (http://%HOSTIP:%HTTPPORT/2007) OK
+Metalink: validating (log/download2007)...
+Metalink: validating (log/download2007) [sha-256] OK
+</file4>
+<stripfile4>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile4>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2008 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2008
new file mode 100644
index 0000000..5843792
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2008
@@ -0,0 +1,105 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 15:23:48 GMT
+Server: test-server/fake
+Content-Length: 43
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2008; charset=funny; option=strange
+Funny-head: yesyes
+
+Some stuff delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+file
+Metalink
+</features>
+<server>
+http
+</server>
+ <name>
+Metalink local XML file, HTTP resource, using -o fname -D file
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2008.metalink -o log/outfile2008 -D log/heads2008
+</command>
+# local metalink file written before test command runs
+<file name="log/test2008.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2008">
+   <verification>
+    <hash type="md5">we-only-check-the-strongest-hash-provided</hash>
+    <hash type="sha256">711b1b566b536c5baae9b36f2f5c1830a7c8ff126d1afa2febc5b59f8d0aab54</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2008</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2008 log/name2008 log/outfile2008
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2008 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2008">
+Some stuff delivered from an HTTP resource
+</file1>
+<file2 name="log/heads2008">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 15:23:48 GMT
+Server: test-server/fake
+Content-Length: 43
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2008; charset=funny; option=strange
+Funny-head: yesyes
+
+</file2>
+<file3 name="log/stdout2008">
+</file3>
+<file4 name="log/stderr2008">
+Metalink: parsing (file://%PWD/log/test2008.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2008.metalink) OK
+Metalink: fetching (log/download2008) from (http://%HOSTIP:%HTTPPORT/2008)...
+Metalink: fetching (log/download2008) from (http://%HOSTIP:%HTTPPORT/2008) OK
+Metalink: validating (log/download2008)...
+Metalink: validating (log/download2008) [sha-256] OK
+</file4>
+<stripfile4>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile4>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2009 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2009
new file mode 100644
index 0000000..84482ce
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2009
@@ -0,0 +1,106 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+-J
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 16:27:17 GMT
+Server: test-server/fake
+Content-Length: 46
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2009; charset=funny; option=strange
+Funny-head: yesyes
+
+Some contents delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+file
+Metalink
+</features>
+<server>
+http
+</server>
+ <name>
+Metalink local XML file, HTTP resource, using -o fname -J -D file
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2009.metalink -J -o log/outfile2009 -D log/heads2009
+</command>
+# local metalink file written before test command runs
+<file name="log/test2009.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2009">
+   <verification>
+    <hash type="md5">we-only-check-the-strongest-hash-provided</hash>
+    <hash type="sha256">e4c5b83384ba7d5f8e201d61747a14f29baacd7dfadce0fbd56661db4bba72b2</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2009</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2009 log/name2009 log/outfile2009
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2009 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2009">
+Some contents delivered from an HTTP resource
+</file1>
+<file2 name="log/heads2009">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 16:27:17 GMT
+Server: test-server/fake
+Content-Length: 46
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2009; charset=funny; option=strange
+Funny-head: yesyes
+
+</file2>
+<file3 name="log/stdout2009">
+</file3>
+<file4 name="log/stderr2009">
+Metalink: parsing (file://%PWD/log/test2009.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2009.metalink) OK
+Metalink: fetching (log/download2009) from (http://%HOSTIP:%HTTPPORT/2009)...
+Metalink: fetching (log/download2009) from (http://%HOSTIP:%HTTPPORT/2009) OK
+Metalink: validating (log/download2009)...
+Metalink: validating (log/download2009) [sha-256] OK
+</file4>
+<stripfile4>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile4>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test201 b/ap/lib/libcurl/curl-7.54.1/tests/data/test201
new file mode 100644
index 0000000..254e241
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test201
@@ -0,0 +1,34 @@
+<testcase>
+<info>
+<keywords>
+FILE
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+missing file:// file
+ </name>
+ <command>
+file://localhost/%PWD/log/non-existant-file.txt
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+37
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2010 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2010
new file mode 100644
index 0000000..b8b3ddc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2010
@@ -0,0 +1,105 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 17:37:27 GMT
+Server: test-server/fake
+Content-Length: 41
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2010; charset=funny; option=strange
+Funny-head: yesyes
+
+Contents delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+file
+Metalink
+</features>
+<server>
+http
+</server>
+ <name>
+Metalink local XML file, HTTP resource, using -o fname -i -D file
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2010.metalink -i -o log/outfile2010 -D log/heads2010
+</command>
+# local metalink file written before test command runs
+<file name="log/test2010.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2010">
+   <verification>
+    <hash type="md5">we-only-check-the-strongest-hash-provided</hash>
+    <hash type="sha256">19dcb4e2a99b9cd02c30b1ed6c55869b7ef8cda9f985648909c48a6dbb54356c</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2010</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2010 log/name2010 log/outfile2010
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2010 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2010">
+Contents delivered from an HTTP resource
+</file1>
+<file2 name="log/heads2010">
+HTTP/1.1 200 OK
+Date: Thu, 21 Jun 2012 17:37:27 GMT
+Server: test-server/fake
+Content-Length: 41
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2010; charset=funny; option=strange
+Funny-head: yesyes
+
+</file2>
+<file3 name="log/stdout2010">
+</file3>
+<file4 name="log/stderr2010">
+Metalink: parsing (file://%PWD/log/test2010.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2010.metalink) OK
+Metalink: fetching (log/download2010) from (http://%HOSTIP:%HTTPPORT/2010)...
+Metalink: fetching (log/download2010) from (http://%HOSTIP:%HTTPPORT/2010) OK
+Metalink: validating (log/download2010)...
+Metalink: validating (log/download2010) [sha-256] OK
+</file4>
+<stripfile4>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile4>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2011 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2011
new file mode 100644
index 0000000..46785cf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2011
@@ -0,0 +1,93 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 37
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2011; charset=funny; option=strange
+Funny-head: yesyes
+
+Data delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, HTTP resource, hash mismatch
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2011.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2011.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2011">
+   <verification>
+    <hash type="sha256">badbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadb</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2011</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2011 log/name2011
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2011 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2011">
+Data delivered from an HTTP resource
+</file1>
+<file2 name="log/stdout2011">
+</file2>
+<file3 name="log/stderr2011">
+Metalink: parsing (file://%PWD/log/test2011.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2011.metalink) OK
+Metalink: fetching (log/download2011) from (http://%HOSTIP:%HTTPPORT/2011)...
+Metalink: fetching (log/download2011) from (http://%HOSTIP:%HTTPPORT/2011) OK
+Metalink: validating (log/download2011)...
+Metalink: validating (log/download2011) [sha-256] FAILED (digest mismatch)
+</file3>
+<stripfile3>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile3>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2012 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2012
new file mode 100644
index 0000000..59c042d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2012
@@ -0,0 +1,92 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 46
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2012; charset=funny; option=strange
+Funny-head: yesyes
+
+Some contents delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, HTTP resource, without hash
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2012.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2012.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2012">
+   <verification>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2012</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2012 log/name2012
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2012 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file1 name="log/download2012">
+Some contents delivered from an HTTP resource
+</file1>
+<file2 name="log/stdout2012">
+</file2>
+<file3 name="log/stderr2012">
+Metalink: parsing (file://%PWD/log/test2012.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2012.metalink) WARNING (digest missing)
+Metalink: fetching (log/download2012) from (http://%HOSTIP:%HTTPPORT/2012)...
+Metalink: fetching (log/download2012) from (http://%HOSTIP:%HTTPPORT/2012) OK
+Metalink: validating (log/download2012)...
+Metalink: validating (log/download2012) FAILED (digest missing)
+</file3>
+<stripfile3>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile3>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2013 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2013
new file mode 100644
index 0000000..0985b32
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2013
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2013; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix absolute path
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2013.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2013.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="/tmp/download2013">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2013</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2013 log/name2013 /tmp/download2013
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2013">
+</file1>
+<file2 name="log/stderr2013">
+Metalink: parsing (file://%PWD/log/test2013.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2013.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2013.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2014 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2014
new file mode 100644
index 0000000..d2dbdc7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2014
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2014; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix path relative to current
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2014.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2014.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="./log/download2014">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2014</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2014 log/name2014 log/download2014
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2014">
+</file1>
+<file2 name="log/stderr2014">
+Metalink: parsing (file://%PWD/log/test2014.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2014.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2014.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2015 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2015
new file mode 100644
index 0000000..a35f311
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2015
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2015; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix path relative to upper
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2015.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2015.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="../tests/log/download2015">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2015</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2015 log/name2015 log/download2015
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2015">
+</file1>
+<file2 name="log/stderr2015">
+Metalink: parsing (file://%PWD/log/test2015.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2015.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2015.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2016 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2016
new file mode 100644
index 0000000..572aa65
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2016
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2016; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix path traversal
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2016.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2016.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/../log/download2016">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2016</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2016 log/name2016 log/download2016
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2016">
+</file1>
+<file2 name="log/stderr2016">
+Metalink: parsing (file://%PWD/log/test2016.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2016.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2016.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2017 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2017
new file mode 100644
index 0000000..15fd934
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2017
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2017; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix home path traversal
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2017.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2017.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="~/download2017">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2017</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2017 log/name2017
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2017">
+</file1>
+<file2 name="log/stderr2017">
+Metalink: parsing (file://%PWD/log/test2017.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2017.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2017.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2018 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2018
new file mode 100644
index 0000000..6d0652d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2018
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2018; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix questionable file name I
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2018.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2018.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/.download2018">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2018</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2018 log/name2018 log/.download2018
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2018">
+</file1>
+<file2 name="log/stderr2018">
+Metalink: parsing (file://%PWD/log/test2018.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2018.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2018.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2019 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2019
new file mode 100644
index 0000000..b17b3f2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2019
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2019; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix questionable file name II
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2019.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2019.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name=".">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2019</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2019 log/name2019
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2019">
+</file1>
+<file2 name="log/stderr2019">
+Metalink: parsing (file://%PWD/log/test2019.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2019.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2019.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test202 b/ap/lib/libcurl/curl-7.54.1/tests/data/test202
new file mode 100644
index 0000000..f863ec5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test202
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+two file:// URLs to stdout
+ </name>
+ <command>
+file://localhost/%PWD/log/test202.txt FILE://localhost/%PWD/log/test202.txt
+</command>
+<file name="log/test202.txt">
+contents in a single file
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+contents in a single file
+contents in a single file
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2020 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2020
new file mode 100644
index 0000000..8bf85a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2020
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2020; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix questionable file name III
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2020.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2020.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="..">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2020</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2020 log/name2020
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2020">
+</file1>
+<file2 name="log/stderr2020">
+Metalink: parsing (file://%PWD/log/test2020.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2020.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2020.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2021 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2021
new file mode 100644
index 0000000..20a9224
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2021
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2021; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix questionable file name IV
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2021.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2021.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2021 >/dev/null">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2021</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2021 log/name2021 log/download2021
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2021">
+</file1>
+<file2 name="log/stderr2021">
+Metalink: parsing (file://%PWD/log/test2021.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2021.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2021.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2022 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2022
new file mode 100644
index 0000000..4f4efd1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2022
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+Metalink
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Wed, 20 Jun 2012 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 56
+Connection: close
+Content-Type: text/html
+Content-Disposition: filename=name2022; charset=funny; option=strange
+Funny-head: yesyes
+
+Data that should not be delivered from an HTTP resource
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+file
+Metalink
+</features>
+ <name>
+Metalink local XML file, attempt Unix questionable file name V
+ </name>
+<command option="no-output,no-include">
+--metalink file://%PWD/log/test2022.metalink
+</command>
+# local metalink file written before test command runs
+<file name="log/test2022.metalink">
+<?xml version="1.0" encoding="utf-8"?>
+<metalink version="3.0" xmlns="http://www.metalinker.org/">
+ <files>
+  <file name="log/download2022 |/dev/null">
+   <verification>
+    <hash type="sha256">c7d03debe90ca29492203ea921d76941fa98640cf3b744f2a16c9b58465eab82</hash>
+   </verification>
+   <resources maxconnections="1">
+    <url type="http" preference="90">http://%HOSTIP:%HTTPPORT/2022</url>
+   </resources>
+  </file>
+ </files>
+</metalink>
+</file>
+<postcheck>
+perl %SRCDIR/libtest/notexists.pl log/2022 log/name2022 log/download2022
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file1 name="log/stdout2022">
+</file1>
+<file2 name="log/stderr2022">
+Metalink: parsing (file://%PWD/log/test2022.metalink) metalink/XML...
+Metalink: parsing (file://%PWD/log/test2022.metalink) WARNING (missing or invalid file name)
+Metalink: parsing (file://%PWD/log/test2022.metalink) FAILED
+</file2>
+<stripfile2>
+$_ = '' if (($_ !~ /^Metalink: /) && ($_ !~ /error/i) && ($_ !~ /warn/i))
+</stripfile2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2023 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2023
new file mode 100644
index 0000000..382b6cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2023
@@ -0,0 +1,162 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- First request has Basic auth, wrong password -->
+<data100>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data100>
+
+<!-- Second request has Basic auth, right password -->
+<data200>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data200>
+
+<!-- Third request has Basic auth, wrong password -->
+<data300>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data300>
+
+<!-- Fourth request has Basic auth, wrong password -->
+<data400>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data400>
+
+<!-- Fifth request has Basic auth, right password -->
+<data500>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data500>
+
+<datacheck>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (Basic)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2023 basic basic
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20230100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20230200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20230300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20230400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20230500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2024 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2024
new file mode 100644
index 0000000..cd06b7c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2024
@@ -0,0 +1,176 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Alternate the order that Basic and Digest headers appear in responses to
+ensure that the order doesn't matter. -->
+
+<!-- First request has Basic auth, wrong password -->
+<data100>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data100>
+
+<!-- Second request has Digest auth, right password -->
+<data1200>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1200>
+
+<!-- Third request has Basic auth, wrong password -->
+<data300>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data300>
+
+<!-- Fourth request has Digest auth, wrong password -->
+<data1400>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data1400>
+
+<!-- Fifth request has Digest auth, right password -->
+<data1500>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1500>
+
+<datacheck>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (Basic switching to Digest)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2024 basic digest
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20240100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20240200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20240200", response="ed646c565f79e2dd9fa37cb5a621213c"

+Accept: */*

+

+GET /20240300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20240400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20240400", response="9741ced8caacc6124770187b36f007c5"

+Accept: */*

+

+GET /20240500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/20240500", response="5bc77ec8c2d443b27a1b55f1fd8fbb13"

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2025 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2025
new file mode 100644
index 0000000..1eae482
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2025
@@ -0,0 +1,272 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Alternate the order that Basic and NTLM headers appear in responses to
+ensure that the order doesn't matter. -->
+
+<!-- First request has Basic auth, wrong password -->
+<data100>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data100>
+
+<!-- Second request has NTLM auth, right password -->
+<data200>
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data200>
+
+<data1201>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1201>
+
+<data1202>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1202>
+
+<!-- Third request has Basic auth, wrong password -->
+<data300>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data300>
+
+<!-- Fourth request has NTLM auth, wrong password -->
+<data400>
+HTTP/1.1 401 Need Basic or NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data400>
+
+<data1401>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1401>
+
+<data1402>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data1402>
+
+<!-- Fifth request has NTLM auth, right password -->
+<data500>
+HTTP/1.1 401 Need Basic or NTLM auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data500>
+
+<data1501>
+HTTP/1.1 401 NTLM intermediate (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1501>
+
+<data1502>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1502>
+
+<datacheck>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (Basic switching to NTLM)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2025 basic ntlm
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20250100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20250200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20250200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20250300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20250400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20250400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20250500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20250500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2026 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2026
new file mode 100644
index 0000000..afbd4f3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2026
@@ -0,0 +1,220 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Alternate the order that Basic and Digest headers appear in responses to
+ensure that the order doesn't matter. -->
+
+<!-- First request has Digest auth, wrong password -->
+<data100>
+HTTP/1.1 401 Need Basic or Digest auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is not the real page!
+</data100>
+
+<data1100>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+

+This is a bad password page!
+</data1100>
+
+<!-- Second request has Basic auth, right password -->
+<data200>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data200>
+
+<!-- Third request has Digest auth, wrong password -->
+<data300>
+HTTP/1.1 401 Need Basic or Digest auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is not the real page!
+</data300>
+
+<data1300>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+

+This is a bad password page!
+</data1300>
+
+<!-- Fourth request has Basic auth, wrong password -->
+<data400>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data400>
+
+<!-- Fifth request has Basic auth, right password -->
+<data500>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data500>
+
+<datacheck>
+HTTP/1.1 401 Need Basic or Digest auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+WWW-Authenticate: Basic realm="testrealm"

+

+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 Need Basic or Digest auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+WWW-Authenticate: Basic realm="testrealm"

+

+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+

+This is a bad password page!
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (Digest switching to Basic)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2026 digest basic
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20260100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /20260100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20260100", response="5f992a2e761ab926256419f7c685f85b"

+Accept: */*

+

+GET /20260200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20260300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /20260300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/20260300", response="132242e602882251929be93228c830ae"

+Accept: */*

+

+GET /20260400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20260500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2027 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2027
new file mode 100644
index 0000000..3302a15
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2027
@@ -0,0 +1,248 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!--
+
+ Explanation for the duplicate 400 requests:
+
+ libcurl doesn't detect that a given Digest password is wrong already on the
+ first 401 response (as the data400 gives). libcurl will instead consider the
+ new response just as a duplicate and it sends another and detects the auth
+ problem on the second 401 response!
+
+-->
+
+<!-- First request has Digest auth, wrong password -->
+<data100>
+HTTP/1.1 401 Need Digest auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+

+This is not the real page!
+</data100>
+
+<data1100>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+

+This is a bad password page!
+</data1100>
+
+<!-- Second request has Digest auth, right password -->
+<data200>
+HTTP/1.1 401 Need Digest auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+

+This is not the real page!
+</data200>
+
+<data1200>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1200>
+
+<!-- Third request has Digest auth, wrong password -->
+<data300>
+HTTP/1.1 401 Need Digest auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+

+This is not the real page!
+</data300>
+
+<data1300>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+

+This is a bad password page!
+</data1300>
+
+<!-- Fourth request has Digest auth, wrong password -->
+<data400>
+HTTP/1.1 401 Need Digest auth (4)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="6"

+

+This is not the real page!
+</data400>
+
+<data1400>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+This is a bad password page!
+</data1400>
+
+<!-- Fifth request has Digest auth, right password -->
+<data1500>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1500>
+
+<datacheck>
+HTTP/1.1 401 Need Digest auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+

+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 Need Digest auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+

+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+

+This is a bad password page!
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (Digest)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2027 digest digest
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20270100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /20270100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20270100", response="f7fd60eefaff5225971bf9b3d80d6ba6"

+Accept: */*

+

+GET /20270200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20270200", response="785ca3ef511999f7e9c178195f5b388c"

+Accept: */*

+

+GET /20270300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /20270300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/20270300", response="4c735d2360fd6848e7cb32a11ae3612b"

+Accept: */*

+

+GET /20270400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20270400", response="f5906785511fb60a2af8b1cd53008ead"

+Accept: */*

+

+GET /20270400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20270400", response="f5906785511fb60a2af8b1cd53008ead"

+Accept: */*

+

+GET /20270500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/20270500", response="8ef4d935fd964a46c3965c0863b52cf1"

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2028 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2028
new file mode 100644
index 0000000..1ae1fae
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2028
@@ -0,0 +1,316 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Alternate the order that Digest and NTLM headers appear in responses to
+ensure that the order doesn't matter. -->
+
+<!-- First request has Digest auth, wrong password -->
+<data100>
+HTTP/1.1 401 Need Digest or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+

+This is not the real page!
+</data100>
+
+<data1100>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1100>
+
+<!-- Second request has NTLM auth, right password -->
+<data200>
+HTTP/1.1 401 Need Digest or NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+

+This is not the real page!
+</data200>
+
+<data1201>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1201>
+
+<data1202>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1202>
+
+<!-- Third request has Digest auth, wrong password -->
+<data300>
+HTTP/1.1 401 Need Digest or NTLM auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data300>
+
+<data1300>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+

+This is a bad password page!
+</data1300>
+
+<!-- Fourth request has NTLM auth, wrong password -->
+<data400>
+HTTP/1.1 401 Need Digest or NTLM auth (4)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="6"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data400>
+
+<data1401>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1401>
+
+<data1402>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+This is a bad password page!
+</data1402>
+
+<!-- Fifth request has NTLM auth, right password -->
+<data500>
+HTTP/1.1 401 Need Digest or NTLM auth (5)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="8"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data500>
+
+<data1501>
+HTTP/1.1 401 NTLM intermediate (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1501>
+
+<data1502>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1502>
+
+<datacheck>
+HTTP/1.1 401 Need Digest or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+

+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 Need Digest or NTLM auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+WWW-Authenticate: NTLM

+

+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (Digest switching to NTLM)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2028 digest ntlm
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20280100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /20280100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20280100", response="53c80666f5e3a4a55f92a66aaf0078bb"

+Accept: */*

+

+GET /20280200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20280200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20280300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /20280300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/20280300", response="1aa5d90da9803ca12d04b24e0f19476e"

+Accept: */*

+

+GET /20280400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20280400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20280500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20280500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2029 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2029
new file mode 100644
index 0000000..42866a3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2029
@@ -0,0 +1,240 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Alternate the order that Basic and NTLM headers appear in responses to
+ensure that the order doesn't matter. -->
+
+<!-- First request has NTLM auth, wrong password -->
+<data100>
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is not the real page!
+</data100>
+
+<data1101>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1101>
+
+<data1102>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1102>
+
+<!-- Second request has Basic auth, right password -->
+<data200>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data200>
+
+<!-- Third request has NTLM auth, wrong password -->
+<data300>
+HTTP/1.1 401 Need Basic or NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is not the real page!
+</data300>
+
+<data1301>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1301>
+
+<data1302>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1302>
+
+<!-- Fourth request has Basic auth, wrong password -->
+<data400>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data400>
+
+<!-- Fifth request has Basic auth, right password -->
+<data500>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data500>
+
+<datacheck>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Basic realm="testrealm"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (NTLM switching to Basic)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2029 ntlm basic
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20290100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20290100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20290200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20290300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20290300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20290400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz

+Accept: */*

+

+GET /20290500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test203 b/ap/lib/libcurl/curl-7.54.1/tests/data/test203
new file mode 100644
index 0000000..366cc2c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test203
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+foo
+   bar
+bar
+   foo
+moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+file:/path URL with a single slash
+ </name>
+ <command>
+file:%PWD/log/test203.txt
+</command>
+<file name="log/test203.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2030 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2030
new file mode 100644
index 0000000..5c2754c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2030
@@ -0,0 +1,297 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Alternate the order that Digest and NTLM headers appear in responses to
+ensure that the order doesn't matter. -->
+
+<!--
+
+ Explanation for the duplicate 400 requests:
+
+ libcurl doesn't detect that a given Digest password is wrong already on the
+ first 401 response (as the data400 gives). libcurl will instead consider the
+ new response just as a duplicate and it sends another and detects the auth
+ problem on the second 401 response!
+
+-->
+
+
+<!-- First request has NTLM auth, wrong password -->
+<data100>
+HTTP/1.1 401 Need Digest or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="1"

+

+This is not the real page!
+</data100>
+
+<data1101>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1101>
+
+<data1102>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1102>
+
+<!-- Second request has Digest auth, right password -->
+<data200>
+HTTP/1.1 401 Need Digest or NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="3"

+

+This is not the real page!
+</data200>
+
+<data1200>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1200>
+
+<!-- Third request has NTLM auth, wrong password -->
+<data300>
+HTTP/1.1 401 Need Digest or NTLM auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="4"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data300>
+
+<data1301>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1301>
+
+<data1302>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+

+This is a bad password page!
+</data1302>
+
+<!-- Fourth request has Digest auth, wrong password -->
+<data400>
+HTTP/1.1 401 Need Digest or NTLM auth (4)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="6"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data400>
+
+<data1400>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+This is a bad password page!
+</data1400>
+
+<!-- Fifth request has Digest auth, right password -->
+<data500>
+HTTP/1.1 401 Need Digest or NTLM auth (5)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: Digest realm="testrealm", nonce="8"

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data500>
+
+<data1500>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1500>
+
+<datacheck>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: Digest realm="testrealm", nonce="2"

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="5"

+

+This is a bad password page!
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Digest realm="testrealm", nonce="7"

+

+This is a bad password page!
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (NTLM switching to Digest)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2030 ntlm digest
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20300100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20300100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20300200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20300200", response="2f2d784ba53a0a307758a90e98d25c27"

+Accept: */*

+

+GET /20300300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20300300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20300400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20300400", response="d6262e9147db08c62ff2f53b515861e8"

+Accept: */*

+

+GET /20300400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20300400", response="d6262e9147db08c62ff2f53b515861e8"

+Accept: */*

+

+GET /20300500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/20300500", response="198757e61163a779cf24ed4c49c1ad7d"

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2031 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2031
new file mode 100644
index 0000000..23b1a52
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2031
@@ -0,0 +1,321 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- First request has NTLM auth, wrong password -->
+<data100>
+HTTP/1.1 401 Need NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data100>
+
+<data1101>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1101>
+
+<data1102>
+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1102>
+
+<!-- Second request has NTLM auth, right password -->
+<data200>
+HTTP/1.1 401 Need NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data200>
+
+<data1201>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1201>
+
+<data1202>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1202>
+
+<!-- Third request has NTLM auth, wrong password -->
+<data300>
+HTTP/1.1 401 Need NTLM auth (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data300>
+
+<data1301>
+HTTP/1.1 401 NTLM intermediate (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1301>
+
+<data1302>
+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1302>
+
+<!-- Fourth request has NTLM auth, wrong password -->
+<data400>
+HTTP/1.1 401 Need NTLM auth (4)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data400>
+
+<data1401>
+HTTP/1.1 401 NTLM intermediate (4)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1401>
+
+<data1402>
+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+</data1402>
+
+<!-- Fifth request has NTLM auth, right password -->
+<data500>
+HTTP/1.1 401 Need NTLM auth (5)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+

+This is not the real page!
+</data500>
+
+<data1501>
+HTTP/1.1 401 NTLM intermediate (5)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1501>
+
+<data1502>
+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1502>
+
+<datacheck>
+HTTP/1.1 401 NTLM intermediate

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+HTTP/1.1 401 NTLM intermediate (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (4)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 401 Sorry wrong password (3)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (5)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+libauthretry
+</tool>
+
+ <name>
+HTTP authorization retry (NTLM)
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2031 ntlm ntlm
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20310100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20310100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20310200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20310200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20310300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20310300 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20310400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20310400 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+GET /20310500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20310500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2032 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2032
new file mode 100644
index 0000000..cd1395f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2032
@@ -0,0 +1,148 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP NTLM auth
+flaky
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Basic auth -->
+<data100>
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data100>
+
+<!-- NTLM auth -->
+<data200>
+HTTP/1.1 401 Need Basic or NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is not the real page!
+</data200>
+
+<data1201>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1201>
+
+<data1202>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1202>
+
+<datacheck>
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+libntlmconnect
+</tool>
+
+ <name>
+NTLM connection mapping
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2032
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20320100 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20320100 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20320200 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20320200 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2033 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2033
new file mode 100644
index 0000000..e2307d0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2033
@@ -0,0 +1,149 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP NTLM auth
+pipelining
+flaky
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- Basic auth -->
+<data100>
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+</data100>
+
+<!-- NTLM auth -->
+<data200>
+HTTP/1.1 401 Need Basic or NTLM auth (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 27

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is not the real page!
+</data200>
+
+<data1201>
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+This is still not the real page!
+</data1201>
+
+<data1202>
+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1202>
+
+<datacheck>
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 Need Basic or NTLM auth

+Server: Microsoft-IIS/5.0

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

+Content-Length: 29

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="testrealm"

+

+This is a bad password page!
+HTTP/1.1 401 NTLM intermediate (2)

+Server: Microsoft-IIS/5.0

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

+Content-Length: 33

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAAAGggEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg=

+

+HTTP/1.1 200 Things are fine in server land

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+</features>
+<server>
+http
+</server>
+<tool>
+lib2033
+</tool>
+
+ <name>
+NTLM connection mapping, pipelining enabled
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/2032
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20320100 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20320100 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20320200 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Accept: */*

+

+GET /20320200 HTTP/1.1

+Host: 127.0.0.1:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2034 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2034
new file mode 100644
index 0000000..9bf0a81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2034
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET with DER public key pinning
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost-sv.pub.der https://localhost:%HTTPSPORT/2034
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2034 HTTP/1.1

+Host: localhost:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2035 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2035
new file mode 100644
index 0000000..7002a5b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2035
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+HTTPS wrong DER pinnedpubkey but right CN
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost-sv.der https://localhost:%HTTPSPORT/2035
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+90
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2036 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2036
new file mode 100644
index 0000000..0ab8b66
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2036
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+HTTP, -O with no slash at all in the URL
+ </name>
+ <command option="no-output">
+%HOSTIP:%HTTPPORT -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<errorcode>
+23
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2037 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2037
new file mode 100644
index 0000000..d630538
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2037
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET with PEM public key pinning
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost-sv.pub.pem https://localhost:%HTTPSPORT/2037
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2037 HTTP/1.1

+Host: localhost:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2038 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2038
new file mode 100644
index 0000000..63d935a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2038
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+HTTPS wrong PEM pinnedpubkey but right CN
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost-sv.pem https://localhost:%HTTPSPORT/2038
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+90
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2039 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2039
new file mode 100644
index 0000000..1595ded
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2039
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+LIST
+netrc
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP (optional .netrc with 'default' override; no user/pass) dir list PASV
+ </name>
+ <command>
+--netrc-optional --netrc-file log/netrc2039 ftp://%HOSTIP:%FTPPORT/
+</command>
+<file name="log/netrc2039" >
+# the following two lines were created while testing curl
+default login userdef password passwddef
+machine %HOSTIP login user1 password passwd1
+machine %HOSTIP login user2 password passwd2
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER userdef

+PASS passwddef

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test204 b/ap/lib/libcurl/curl-7.54.1/tests/data/test204
new file mode 100644
index 0000000..9cc7b01
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test204
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+# no Server-side
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+"upload" with file://
+ </name>
+ <command>
+file://localhost/%PWD/log/result204.txt -T log/upload204.txt
+</command>
+<file name="log/upload204.txt">
+data
+in
+file
+to
+write
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/result204.txt">
+data
+in
+file
+to
+write
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2040 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2040
new file mode 100644
index 0000000..ac60017
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2040
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- First request has Basic auth, right password -->
+<data100>
+HTTP/1.1 200 Things are fine in server land
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
+</data100>
+
+<!-- Second request with Basic auth disabled -->
+<data200>
+HTTP/1.1 401 Sorry wrong password (2)
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 29
+WWW-Authenticate: Basic realm="testrealm"
+
+This is a bad password page!
+</data200>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP Basic authorization, then without authorization
+</name>
+<command option="no-output,no-include">
+-u testuser:testpass http://%HOSTIP:%HTTPPORT/20400100 --next --no-basic http://%HOSTIP:%HTTPPORT/20400200
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /20400100 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+Accept: */*

+

+GET /20400200 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+Finally, this is the real page!
+This is a bad password page!
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2041 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2041
new file mode 100644
index 0000000..dcad2fd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2041
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET with base64-sha256 public key pinning
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//pyh+fICi9M8MFEZvherIT0cs3MN+cXNGoU9Giwyx1so= https://localhost:%HTTPSPORT/2041
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2041 HTTP/1.1

+Host: localhost:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2042 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2042
new file mode 100644
index 0000000..2181e53
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2042
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+HTTPS wrong base64-sha256 pinnedpubkey but right CN
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//bSIggTf+ikMG0CtmDlpMVBd7yi7H1md4URogRPqerso= https://localhost:%HTTPSPORT/2042
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+90
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2043 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2043
new file mode 100644
index 0000000..7a91f5b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2043
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<features>
+WinSSL
+</features>
+<server>
+none
+</server>
+ <name>
+Disable certificate revocation checks
+ </name>
+ <command>
+--ssl-no-revoke -I https://revoked.grc.com/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2044 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2044
new file mode 100644
index 0000000..33e81a8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2044
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+--proto-default
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<features>
+none
+</features>
+<server>
+none
+</server>
+<name>
+Attempt to set a default protocol that does not exist
+</name>
+<command>
+--proto-default DOESNOTEXIST
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# CURLE_UNSUPPORTED_PROTOCOL is error code 1
+<errorcode>
+1
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2045 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2045
new file mode 100644
index 0000000..15647d3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2045
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+FTP
+--proto-default
+</keywords>
+</info>
+
+
+#
+# Server-side
+<reply>
+<!--
+The purpose of this test is to make sure the --proto-default option works
+properly. We specify a default protocol of FTP and if the option works properly
+curl will use the FTP protocol. If the option is broken however curl will use
+the HTTP protocol.
+In the broken scenario curl would use HTTP to talk to our FTP server. We handle
+that by replying with something that both protocols can understand. Our FTP
+server allows a custom welcome message, so we use that feature to make an HTTP
+reply that contains an FTP reply (think polyglot). In the case of FTP we expect
+curl will return CURLE_WEIRD_SERVER_REPLY so we test for that return code.
+-->
+<servercmd>
+REPLY welcome HTTP/1.1 200 OK\r\nContent-Length: 21\r\n\r\n500 Weird FTP Reply
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+none
+</features>
+<server>
+ftp
+</server>
+<name>
+Set the default protocol to ftp for a schemeless URL
+</name>
+<command>
+-H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp %HOSTIP:%FTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# CURLE_WEIRD_SERVER_REPLY is error code 8
+<errorcode>
+8
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2046 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2046
new file mode 100644
index 0000000..dcd202f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2046
@@ -0,0 +1,98 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+IDN
+followlocation
+--write-out
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Content-Type: text/plain
+Location: ./20460001
+
+redirect
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain; charset=us-ascii
+
+OK
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+idn
+</features>
+<setenv>
+LC_ALL=
+LC_CTYPE=en_US.UTF-8
+</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
+ <name>
+Connection re-use with IDN host name
+ </name>
+
+ <command>
+http://åäö.se:%HTTPPORT/2046 --resolve xn--4cab6c.se:%HTTPPORT:%HOSTIP -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2046 HTTP/1.1

+Host: xn--4cab6c.se:%HTTPPORT

+Accept: */*

+

+GET /20460001 HTTP/1.1

+Host: xn--4cab6c.se:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 302 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Content-Type: text/plain
+Location: ./20460001
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain; charset=us-ascii
+
+OK
+1
+1
+3
+http://åäö.se:%HTTPPORT/20460001
+text/plain; charset=us-ascii
+200
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2047 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2047
new file mode 100644
index 0000000..fc14048
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2047
@@ -0,0 +1,101 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+IDN
+followlocation
+--write-out
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Content-Type: text/plain
+Location: ./20470001
+
+redirect
+</data>
+<data1 nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain; charset=us-ascii
+
+OK
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+idn
+</features>
+<setenv>
+LC_ALL=
+LC_CTYPE=en_US.UTF-8
+</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
+ <name>
+Connection re-use with IDN host name over HTTP proxy
+ </name>
+
+ <command>
+http://åäö.se/2047 -x %HOSTIP:%HTTPPORT -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://xn--4cab6c.se/2047 HTTP/1.1

+Host: xn--4cab6c.se

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://xn--4cab6c.se/20470001 HTTP/1.1

+Host: xn--4cab6c.se

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+
+<stdout>
+HTTP/1.1 302 OK swsbounce
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 9
+Content-Type: text/plain
+Location: ./20470001
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain; charset=us-ascii
+
+OK
+1
+1
+3
+http://xn--4cab6c.se/20470001
+text/plain; charset=us-ascii
+200
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2048 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2048
new file mode 100644
index 0000000..787f584
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2048
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+<name>
+pinnedpubkey no-match must fail even when insecure
+</name>
+<command>
+--insecure --cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost.nn-sv.pub.der https://localhost:%HTTPSPORT/2048
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+90
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2049 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2049
new file mode 100644
index 0000000..efa576e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2049
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Connect to specific host
+ </name>
+
+ <command>
+http://www1.example.com:8081/2049 --connect-to ::%HOSTIP:%HTTPPORT --next http://www2.example.com:8082/2049 --connect-to :8082:%HOSTIP:%HTTPPORT --next http://www3.example.com:8083/2049 --connect-to www3.example.com::%HOSTIP:%HTTPPORT --next http://www4.example.com:8084/2049 --connect-to www4.example.com:8084:%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2049 HTTP/1.1

+Host: www1.example.com:8081

+Accept: */*

+

+GET /2049 HTTP/1.1

+Host: www2.example.com:8082

+Accept: */*

+

+GET /2049 HTTP/1.1

+Host: www3.example.com:8083

+Accept: */*

+

+GET /2049 HTTP/1.1

+Host: www4.example.com:8084

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test205 b/ap/lib/libcurl/curl-7.54.1/tests/data/test205
new file mode 100644
index 0000000..4af93f6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test205
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+FILE
+FAILURE
+</keywords>
+</info>
+
+# no Server-side
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+"upload" with file://
+ </name>
+ <command>
+file://localhost/%PWD/log/nonexisting/result205.txt -T log/upload205.txt
+</command>
+<file name="log/upload205.txt">
+data
+in
+file
+to
+write
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 23 => CURLE_WRITE_ERROR
+<errorcode>
+23
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2050 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2050
new file mode 100644
index 0000000..81ef79f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2050
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Connection established
+
+</connect>
+
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+
+<datacheck>
+HTTP/1.1 200 Connection established
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+Connect to specific host via HTTP proxy (switch to tunnel mode automatically)
+ </name>
+
+ <command>
+http://www.example.com.2050/2050 --connect-to ::connect.example.com.2050:%HTTPPORT -x %HOSTIP:%PROXYPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT connect.example.com.2050:%HTTPPORT HTTP/1.1

+Host: connect.example.com.2050:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+</proxy>
+<protocol>
+GET /2050 HTTP/1.1

+Host: www.example.com.2050

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2051 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2051
new file mode 100644
index 0000000..e8c6bed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2051
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Connect to specific host: Re-use existing connections if possible
+ </name>
+
+ <command>
+http://%HOSTIP:%HTTPPORT/2051 -w "%{num_connects}\n" --next --connect-to ::%HOSTIP:%HTTPPORT http://%HOSTIP:%HTTPPORT/2051 -w "%{num_connects}\n" --next http://%HOSTIP:%HTTPPORT/2051 -w "%{num_connects}\n"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2051 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /2051 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /2051 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+1
+OK
+0
+OK
+0
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2052 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2052
new file mode 100644
index 0000000..082002f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2052
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Connect to specific host: Do not mix connections with and without a "connect to host"
+ </name>
+
+ <command>
+http://www.example.com:%HTTPPORT/2052 --resolve www.example.com:%HTTPPORT:%HOSTIP -w "%{num_connects}\n" --next --resolve -www.example.com:%HTTPPORT --connect-to ::%HOSTIP:%HTTPPORT http://www.example.com:%HTTPPORT/2052 -w "%{num_connects}\n"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2052 HTTP/1.1

+Host: www.example.com:%HTTPPORT

+Accept: */*

+

+GET /2052 HTTP/1.1

+Host: www.example.com:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<stdout>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+1
+OK
+1
+</stdout>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2053 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2053
new file mode 100644
index 0000000..98e7845
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2053
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Connect to specific host with IP addresses
+ </name>
+
+ <command>
+http://10.0.0.1:8081/2053 --connect-to 10.0.0.1:8081:%HOSTIP:%HTTPPORT --next http://[fc00::1]:8082/2053 --connect-to [fc00::1]:8082:%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2053 HTTP/1.1

+Host: 10.0.0.1:8081

+Accept: */*

+

+GET /2053 HTTP/1.1

+Host: [fc00::1]:8082

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2054 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2054
new file mode 100644
index 0000000..2a0b54e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2054
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Connect to specific host: use the first "connect-to" string that matches
+ </name>
+
+ <command>
+http://%HOSTIP:%HTTPPORT/2054 --connect-to foo::bar: --connect-to :123::456 --next http://www.example.com:%HTTPPORT/2054 --connect-to www.example.com::%HOSTIP: --connect-to www.example.com::foo: --next http://%HOSTIP:8083/2054 --connect-to :8083::%HTTPPORT --connect-to :8083::123 --next http://www.example.com:8084/2054 --connect-to www.example.com:8084:%HOSTIP:%HTTPPORT --connect-to www.example.com:8084:foo:123
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /2054 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /2054 HTTP/1.1

+Host: www.example.com:%HTTPPORT

+Accept: */*

+

+GET /2054 HTTP/1.1

+Host: %HOSTIP:8083

+Accept: */*

+

+GET /2054 HTTP/1.1

+Host: www.example.com:8084

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test2055 b/ap/lib/libcurl/curl-7.54.1/tests/data/test2055
new file mode 100755
index 0000000..cca4494
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test2055
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+CURLOPT_CONNECT_TO
+SOCKS5
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Connection established
+
+</connect>
+
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</data>
+
+<datacheck>
+HTTP/1.1 200 Connection established
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 3
+Content-Type: text/plain
+
+OK
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+socks5
+</server>
+ <name>
+Connect to specific host via SOCKS proxy and HTTP proxy (switch to tunnel mode automatically)
+ </name>
+
+ <command>
+http://www.example.com.2055/2055 --connect-to ::connect.example.com.2055:%HTTPPORT -x %HOSTIP:%PROXYPORT --preproxy socks5://%HOSTIP:%SOCKSPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT connect.example.com.2055:%HTTPPORT HTTP/1.1

+Host: connect.example.com.2055:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+</proxy>
+<protocol>
+GET /2055 HTTP/1.1

+Host: www.example.com.2055

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test206 b/ap/lib/libcurl/curl-7.54.1/tests/data/test206
new file mode 100644
index 0000000..5f0c885
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test206
@@ -0,0 +1,108 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+HTTP proxy Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+auth_required
+</servercmd>
+
+
+# this is returned first since we get no proxy-auth
+<connect>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 33

+

+And you should ignore this data.
+</connect>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<connect1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+</connect1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 33

+

+HTTP/1.1 200 OK swsbounce

+Server: no
+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP proxy CONNECT auth Digest
+ </name>
+ <command>
+http://test.remote.haxx.se.206:8990/path/2060002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user silly:person --proxy-digest --proxytunnel
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.haxx.se.206:8990 HTTP/1.1

+Host: test.remote.haxx.se.206:8990

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.haxx.se.206:8990 HTTP/1.1

+Host: test.remote.haxx.se.206:8990

+Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.206:8990", response="003e36decb4dbf6366b3ecb9b87c24ec"

+Proxy-Connection: Keep-Alive

+

+GET /path/2060002 HTTP/1.1

+User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4

+Host: test.remote.haxx.se.206:8990

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test207 b/ap/lib/libcurl/curl-7.54.1/tests/data/test207
new file mode 100644
index 0000000..caff810
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test207
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLE_PARTIAL_FILE
+FAILURE
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 funky chunky! swsclose
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+41

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+

+</data>
+<datacheck>
+HTTP/1.1 200 funky chunky! swsclose
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with chunked Transfer-Encoding closed prematurely
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/207
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /207 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+# curl: (18) transfer closed with outstanding read data remaining
+# 18 == CURLE_PARTIAL_FILE
+<errorcode>
+18
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test208 b/ap/lib/libcurl/curl-7.54.1/tests/data/test208
new file mode 100644
index 0000000..afb2566
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test208
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP
+HTTP PUT
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+ <name>
+HTTP PUT to a FTP URL with username+password - over HTTP proxy
+ </name>
+ <command>
+-x http://%HOSTIP:%HTTPPORT ftp://daniel:mysecret@host.com/we/want/208 -T log/test208.txt
+</command>
+<file name="log/test208.txt">
+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT ftp://daniel:mysecret@host.com/we/want/208 HTTP/1.1

+Host: host.com:21

+Authorization: Basic ZGFuaWVsOm15c2VjcmV0

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 78

+Expect: 100-continue

+

+Weird
+     file
+         to
+   upload
+for
+   testing
+the
+   PUT
+      feature
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test209 b/ap/lib/libcurl/curl-7.54.1/tests/data/test209
new file mode 100644
index 0000000..37c9ad2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test209
@@ -0,0 +1,123 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<connect1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 33

+

+And you should ignore this data.
+</connect1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<connect1002>
+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+</connect1002>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<data1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+Nice proxy auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 33

+

+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy CONNECT auth NTLM
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com.209:%HTTPPORT/path/2090002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --proxytunnel
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.example.com.209:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.209:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.example.com.209:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.209:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+Proxy-Connection: Keep-Alive

+

+GET /path/2090002 HTTP/1.1

+User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4

+Host: test.remote.example.com.209:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test21 b/ap/lib/libcurl/curl-7.54.1/tests/data/test21
new file mode 100644
index 0000000..8e4e847
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test21
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+FAILURE
+multiple HTTP requests
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+use curl with multiple request methods
+ </name>
+ <command>
+-I -d FOOO -F moo=moo localhost
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+2
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test210 b/ap/lib/libcurl/curl-7.54.1/tests/data/test210
new file mode 100644
index 0000000..e904567
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test210
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+data blobb
+</data>
+
+# data is sent to stdout
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+Get two FTP files from the same remote dir: no second CWD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/210 ftp://%HOSTIP:%FTPPORT/a/path/210
+</command>
+<stdout>
+data blobb
+data blobb
+</stdout>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+EPSV

+TYPE I

+SIZE 210

+RETR 210

+EPSV

+SIZE 210

+RETR 210

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test211 b/ap/lib/libcurl/curl-7.54.1/tests/data/test211
new file mode 100644
index 0000000..96d0573
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test211
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+data blobb
+</data>
+<servercmd>
+REPLY EPSV 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+Get two FTP files with no remote EPSV support
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/211 ftp://%HOSTIP:%FTPPORT/a/path/211
+</command>
+<stdout>
+data blobb
+data blobb
+</stdout>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+EPSV

+PASV

+TYPE I

+SIZE 211

+RETR 211

+PASV

+SIZE 211

+RETR 211

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test212 b/ap/lib/libcurl/curl-7.54.1/tests/data/test212
new file mode 100644
index 0000000..444525f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test212
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPRT
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+data blobb
+</data>
+<servercmd>
+REPLY EPRT 500 no such command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# EPRT is only sent when IPv6 is enabled
+<features>
+ipv6
+</features>
+ <name>
+Get two FTP files with no remote EPRT support
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/212 ftp://%HOSTIP:%FTPPORT/a/path/212 -P -
+</command>
+<stdout>
+data blobb
+data blobb
+</stdout>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip the addresses and port number but leave the rest
+<strippart>
+s/^(EPRT \|1\|)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|/$1/
+s/^(PORT )\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+EPRT |1|

+PORT 

+TYPE I

+SIZE 212

+RETR 212

+PORT 

+SIZE 212

+RETR 212

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test213 b/ap/lib/libcurl/curl-7.54.1/tests/data/test213
new file mode 100644
index 0000000..93aaf64
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test213
@@ -0,0 +1,126 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP CONNECT
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<connect1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 33

+

+And you should ignore this data.
+</connect1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<connect1002>
+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+</connect1002>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<data1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+Nice proxy auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 33

+

+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP 1.0 proxy CONNECT auth NTLM and then POST
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com.213:%HTTPPORT/path/2130002 --proxy1.0 http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit"
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol nonewline="yes">
+CONNECT test.remote.example.com.213:%HTTPPORT HTTP/1.0

+Host: test.remote.example.com.213:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.example.com.213:%HTTPPORT HTTP/1.0

+Host: test.remote.example.com.213:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+Proxy-Connection: Keep-Alive

+

+POST /path/2130002 HTTP/1.1

+User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4

+Host: test.remote.example.com.213:%HTTPPORT

+Accept: */*

+Content-Length: 6

+Content-Type: application/x-www-form-urlencoded

+

+postit
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test214 b/ap/lib/libcurl/curl-7.54.1/tests/data/test214
new file mode 100644
index 0000000..a9b8fcd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test214
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP URL with escaped { and }
+ </name>
+<command>
+"http://%HOSTIP:%HTTPPORT/\{\}\/214"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /{}\/214 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test215 b/ap/lib/libcurl/curl-7.54.1/tests/data/test215
new file mode 100644
index 0000000..987fd99
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test215
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+Get two FTP dir listings from the same remote dir: no second CWD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/a/path/215/ ftp://%HOSTIP:%FTPPORT/a/path/215/
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+CWD 215

+EPSV

+TYPE A

+LIST

+EPSV

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test216 b/ap/lib/libcurl/curl-7.54.1/tests/data/test216
new file mode 100644
index 0000000..404e9c9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test216
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP upload two files to the same dir
+ </name>
+ <command>
+-T log/upload.216 ftp://%HOSTIP:%FTPPORT/a/path/216/ -T log/upload.216 ftp://%HOSTIP:%FTPPORT/a/path/216/%2e%2eanotherup.216
+</command>
+<file name="log/upload.216">
+upload this file twice
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD a

+CWD path

+CWD 216

+EPSV

+TYPE I

+STOR upload.216

+EPSV

+STOR ..anotherup.216

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test217 b/ap/lib/libcurl/curl-7.54.1/tests/data/test217
new file mode 100644
index 0000000..f10df56
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test217
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+followlocation
+--write-out
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<connect nocheck="yes">
+HTTP/1.1 405 Method Not Allowed swsclose

+

+And you should ignore this data.
+</connect>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP proxy CONNECT to proxy returning 405
+ </name>
+ <command>
+http://test.remote.example.com.217:%HTTPPORT/path/2170002 --proxy http://%HOSTIP:%HTTPPORT --proxytunnel -w "%{http_code} %{http_connect}\n"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+CONNECT test.remote.example.com.217:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.217:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+</protocol>
+# CURLE_RECV_ERROR
+<errorcode>
+56
+</errorcode>
+<stdout>
+HTTP/1.1 405 Method Not Allowed swsclose

+

+000 405
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test218 b/ap/lib/libcurl/curl-7.54.1/tests/data/test218
new file mode 100644
index 0000000..138c4b7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test218
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 6

+

+blaha
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT from a file but enforce chunked transfer-encoding
+ </name>
+ <command>
+ -T log/file218 -H "Transfer-Encoding: chunked" http://%HOSTIP:%HTTPPORT/218
+</command>
+<file name="log/file218">
+just some tiny teeny contents
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /218 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Expect: 100-continue

+

+1e

+just some tiny teeny contents
+

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test219 b/ap/lib/libcurl/curl-7.54.1/tests/data/test219
new file mode 100644
index 0000000..be3f0f3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test219
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+try using proxy with unsupported scheme
+ </name>
+ <command>
+-x foo://%HOSTIP:%HTTPPORT/219 http://%HOSTIP:%HTTPPORT/219
+</command>
+</client>
+
+#
+# Verify after the test has been "shot"
+<verify>
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test22 b/ap/lib/libcurl/curl-7.54.1/tests/data/test22
new file mode 100644
index 0000000..f45f862
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test22
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+long URL
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 27

+

+This is the proof it works
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+get HTTP with URL > 10000 bytes
+ </name>
+ <command>
+%HOSTIP:%HTTPPORT/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET /aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22 HTTP/1.1

+User-Agent: curl/7.4.2 (sparc-sun-solaris2.7) libcurl 7.4.2 (SSL 0.9.6)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test220 b/ap/lib/libcurl/curl-7.54.1/tests/data/test220
new file mode 100644
index 0000000..2fb0b8a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test220
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpDb250ZW50LUVuY29kaW5nOiBHWklQDQpDb250ZW50LUxlbmd0aDogNDQNCg0K
+H4sICHmeq0EAA2xhbGFsYQDLycxLVTDkUsgB0UZcChCGMRcACgJxYBgAAAA=
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Content-Encoding: GZIP

+Content-Length: 44

+

+line 1
+ line 2
+  line 3
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET gzip compressed content
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/220 --compressed
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /220 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Accept-Encoding: deflate, gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test221 b/ap/lib/libcurl/curl-7.54.1/tests/data/test221
new file mode 100644
index 0000000..95edb49
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test221
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpDb250ZW50LUVuY29kaW5nOiBnemlwDQpDb250ZW50LUxlbmd0aDogNDENCg0K
+CHmeq0EAA2xhbGFsYQDLycxLVTDkUsgB0UZcChCGMRcACgJxYBgAAAA=
+</data>
+
+# I removed the first three bytes of the gzip compressed contents
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Content-Encoding: gzip

+Content-Length: 41

+

+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET gzip compressed content with broken gzip header
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/221 --compressed
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /221 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Accept-Encoding: deflate, gzip

+

+</protocol>
+<errorcode>
+61
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test222 b/ap/lib/libcurl/curl-7.54.1/tests/data/test222
new file mode 100644
index 0000000..a459486
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test222
@@ -0,0 +1,199 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpDb250ZW50LUVuY29kaW5nOiBkZWZsYXRlDQpDb250ZW50LUxlbmd0aDogMTMw
+NQ0KDQp4nNxY227jNhB9N5B/YP3UArZuthM5cLQoctkEzTbB2gW6TwYt0TYbSRRIyrk89Ns7lCiJ
+sRyvd4O+BEhicuacw+EMSZOZfHpKYrQhXFCWnnVdy+kikoYsounqrHszvev7/mjcd7ufgs7kl4u7
+89m3+0uUcfYPCWU/pkICEE2/TWeXX1B3LWV2attLTsQ6IVhaKZH2AocPJI3sZdLXPNF3rKEVyagL
+oltaQQehyqbaTW9Oo8A9dr2JbRhKRIQlmeMoIoAYj/2+4/c9FznDU8c99cYT2/AbhDxTH1HgOc6w
+7zp910eOd+rBz0BTKsSrOFKckLlYMy6DMOdxHY5hb+OXeRwXcITTCMV00aYWEB0eEaGWOmdJUlJS
+giRjtQDH/BktGUdhTEkq+4JGBP319RZJjlOxhIpaMItGyFDeGQyiAuFyBKVaqXBV3yWNiTjq5EJ1
+1BjiOZX4yUI3Eok8y0BfoOvZ7L5X/J320BW0jzpXRfvi5nzWQ7PL2z8v4fP24neAXd3cXvaK4T/f
+3V9ffoU2DPBIYoiplOpnTMiebubQChl7oEQU2ijPYoYjGAKWWp6QqJl1D2VYiEfGI9WEyNI8WRT2
+6fT2qBMSLumShlBXMP1BOPiYKEOBajzBCMW0IBsZeyScREedxXOVpB6Sa/JmxquyWEed2RqoCMPv
+gqZqMwlIbZ1qlWAGmw55zlEnxukqxysiihhIuqGcpQkMIEBHl9BYGxsqcUzl81yEjJNgdOIPrdHJ
+xN6yb4EzwkOQDAaWe2xgK/MWGubzAHttbCALk17XLMtjzJuxjkdjiGEIy3nb0yJUA7oDy3dfEV6H
+YjjKYJzRK7QRDsfFueFbI2di647pmYcsB13Prbza8ApTDuIPaowxgMgXIuQ0k3BEimCgTofXphIG
+pU/D9Vzt5eCCLHEey4ltGksY1H9eHWAZlD3YeWhWJ6Wt1os9sVusRmzNEvK2ECxgyksVdXjaJkPr
+1gKNply9HC4HYK2kaI3I4sU7XATAWkTRGpEXmh0uAmAtomiNSLiGPUZitjpcqqZowUaikeVZcrgg
+gLWUojUiEVkcLgJgLaJojQgTT4eLAFiLKJpRLxGp8/IHalYSqrppurHMcw5pEyTQ67fqGoXZiB8o
+yUZUxdgIQ0TdHA5XUWgtUxAbnYRyzvjhSiVea2myWdeEBVWtoFl6YgqHHKTgy83M/hudw+kBKaN5
+gm5Lx8SuEBqvvqfknJOY1Jlrmef6/hacWK5nwQXpDfcbbHWvOjl2/FGLWF2w2hx1L9p9cdoFLOdi
+75rMBM5RAhNeMzmXa/iqhpy1TCUS5xJuMqIOqexX3dqgT2CcUhKjqSQpfMOvJrbpbFGgSrvr/u8C
+ryKiimwgW3TOYhLcPaaE17jCVEVqm6FWvWoJqy94ThOaYmnOTnK4IRS1gYLWnZbX8473uQd7ufuc
+ru/v5bp7x4WlsT/qvW73eLjPPd5L9sd7vc5etzv6TtzfCWx/ZIPW2OX9brv8sCYyeDLBQwyuo7VO
+bXxG8jkjZ11OQngdKJt6SdWLssGZG9lRQ+1y7CTqewu4T4aqGDtdO5nG46xF3X64vcWVVKoNBXa4
+s6Nf9W3qt51aJbbeaQ3i7byx4t6G4/8vac5PZ2w4eGfG1Pvq4yfK9QYj9x2ZeoGn2MfP0sBzhifv
+yNI1oUmE44+fqOFwNPDekaiwD0998TN5Miz6rK//KxR0/gMAAP//gjMRo2MAAAAA//8DAN04jtE=
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Content-Encoding: deflate

+Content-Length: 1305

+

+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE project-listing SYSTEM "http://freshmeat.net/backend/fm-projects-0.4.dtd">
+<project-listing>
+  <project>
+    <project_id>1612</project_id>
+    <date_added>1998-08-21 04:01:29</date_added>
+    <date_updated>2004-10-18 02:22:23</date_updated>
+    <projectname_short>curl</projectname_short>
+    <projectname_full>curl and libcurl</projectname_full>
+    <desc_short>Command line tool and library for client-side URL transfers.</desc_short>
+    <desc_full>curl and libcurl is a tool for transferring files

+using URL syntax. It supports HTTP, HTTPS, FTP,

+FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as

+well as HTTP-post, HTTP-put, cookies, FTP upload,

+resumed transfers, passwords, portnumbers, SSL

+certificates, Kerberos, and proxies. It is powered

+by libcurl, the client-side URL transfer library.

+There are bindings to libcurl for over 20

+languages and environments.

+</desc_full>
+    <vitality_score>5784.57</vitality_score>
+    <vitality_percent>3.16</vitality_percent>
+    <vitality_rank>169</vitality_rank>
+    <popularity_score>6594.54</popularity_score>
+    <popularity_percent>13.81</popularity_percent>
+    <popularity_rank>105</popularity_rank>
+    <rating>8.50</rating>
+    <rating_count>21</rating_count>
+    <rating_rank>183</rating_rank>
+    <subscriptions>323</subscriptions>
+    <branch_name>Default</branch_name>
+    <url_project_page>http://freshmeat.net/projects/curl/</url_project_page>
+    <url_homepage>http://freshmeat.net/redir/curl/1612/url_homepage/</url_homepage>
+    <url_tgz>http://freshmeat.net/redir/curl/1612/url_tgz/</url_tgz>
+    <url_bz2>http://freshmeat.net/redir/curl/1612/url_bz2/</url_bz2>
+    <url_zip>http://freshmeat.net/redir/curl/1612/url_zip/</url_zip>
+    <url_changelog>http://freshmeat.net/redir/curl/1612/url_changelog/</url_changelog>
+    <url_rpm>http://freshmeat.net/redir/curl/1612/url_rpm/</url_rpm>
+    <url_deb>http://freshmeat.net/redir/curl/1612/url_deb/</url_deb>
+    <url_osx>http://freshmeat.net/redir/curl/1612/url_osx/</url_osx>
+    <url_bsdport>http://freshmeat.net/redir/curl/1612/url_bsdport/</url_bsdport>
+    <url_purchase></url_purchase>
+    <url_cvs>http://freshmeat.net/redir/curl/1612/url_cvs/</url_cvs>
+    <url_list>http://freshmeat.net/redir/curl/1612/url_list/</url_list>
+    <url_mirror>http://freshmeat.net/redir/curl/1612/url_mirror/</url_mirror>
+    <url_demo></url_demo>
+    <license>MIT/X Consortium License</license>
+    <latest_release>
+      <latest_release_version>7.12.2</latest_release_version>
+      <latest_release_id>176085</latest_release_id>
+      <latest_release_date>2004-10-18 02:22:23</latest_release_date>
+    </latest_release>
+    <screenshot_thumb></screenshot_thumb>
+    <authors>
+      <author>
+        <author_name>Daniel Stenberg</author_name>
+        <author_url>http://freshmeat.net/~bagder/</author_url>
+        <author_role>Owner</author_role>
+      </author>
+    </authors>
+    <descriminators>
+      <trove_id>12</trove_id>
+      <trove_id>226</trove_id>
+      <trove_id>3</trove_id>
+      <trove_id>2</trove_id>
+      <trove_id>188</trove_id>
+      <trove_id>216</trove_id>
+      <trove_id>200</trove_id>
+      <trove_id>220</trove_id>
+      <trove_id>164</trove_id>
+      <trove_id>90</trove_id>
+      <trove_id>89</trove_id>
+      <trove_id>809</trove_id>
+      <trove_id>150</trove_id>
+      <trove_id>224</trove_id>
+      <trove_id>900</trove_id>
+      <trove_id>839</trove_id>
+    </descriminators>
+    <dependencies>
+      <dependency type="recommended">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>7464</dependency_branch_id>
+        <dependency_project_id>7464</dependency_project_id>
+        <dependency_project_title>OpenSSL (Default)</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>7443</dependency_project_id>
+        <dependency_project_title>OpenLDAP</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>12351</dependency_project_id>
+        <dependency_project_title>zlib</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>32047</dependency_project_id>
+        <dependency_project_title>Heimdal</dependency_project_title>
+      </dependency>
+      <dependency type="optional">
+        <dependency_release_id>0</dependency_release_id>
+        <dependency_branch_id>0</dependency_branch_id>
+        <dependency_project_id>44532</dependency_project_id>
+        <dependency_project_title>c-ares</dependency_project_title>
+      </dependency>
+    </dependencies>
+  </project>
+</project-listing>
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET deflate compressed content
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/222 --compressed
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /222 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Accept-Encoding: deflate, gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test223 b/ap/lib/libcurl/curl-7.54.1/tests/data/test223
new file mode 100644
index 0000000..196e78c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test223
@@ -0,0 +1,92 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# this deflate chunk has three bytes removed from the beginning
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpDb250ZW50LUVuY29kaW5nOiBkZWZsYXRlDQpDb250ZW50LUxlbmd0aDogMTMw
+NQ0KDQpY227jNhB9N5B/YP3UArZuthM5cLQoctkEzTbB2gW6TwYt0TYbSRRIyrk89Ns7lCiJsRyv
+d4O+BEhicuacw+EMSZOZfHpKYrQhXFCWnnVdy+kikoYsounqrHszvev7/mjcd7ufgs7kl4u789m3
++0uUcfYPCWU/pkICEE2/TWeXX1B3LWV2attLTsQ6IVhaKZH2AocPJI3sZdLXPNF3rKEVyagLolta
+QQehyqbaTW9Oo8A9dr2JbRhKRIQlmeMoIoAYj/2+4/c9FznDU8c99cYT2/AbhDxTH1HgOc6w7zp9
+10eOd+rBz0BTKsSrOFKckLlYMy6DMOdxHY5hb+OXeRwXcITTCMV00aYWEB0eEaGWOmdJUlJSgiRj
+tQDH/BktGUdhTEkq+4JGBP319RZJjlOxhIpaMItGyFDeGQyiAuFyBKVaqXBV3yWNiTjq5EJ11Bji
+OZX4yUI3Eok8y0BfoOvZ7L5X/J320BW0jzpXRfvi5nzWQ7PL2z8v4fP24neAXd3cXvaK4T/f3V9f
+foU2DPBIYoiplOpnTMiebubQChl7oEQU2ijPYoYjGAKWWp6QqJl1D2VYiEfGI9WEyNI8WRT26fT2
+qBMSLumShlBXMP1BOPiYKEOBajzBCMW0IBsZeyScREedxXOVpB6Sa/JmxquyWEed2RqoCMPvgqZq
+MwlIbZ1qlWAGmw55zlEnxukqxysiihhIuqGcpQkMIEBHl9BYGxsqcUzl81yEjJNgdOIPrdHJxN6y
+b4EzwkOQDAaWe2xgK/MWGubzAHttbCALk17XLMtjzJuxjkdjiGEIy3nb0yJUA7oDy3dfEV6HYjjK
+YJzRK7QRDsfFueFbI2di647pmYcsB13Prbza8ApTDuIPaowxgMgXIuQ0k3BEimCgTofXphIGpU/D
+9Vzt5eCCLHEey4ltGksY1H9eHWAZlD3YeWhWJ6Wt1os9sVusRmzNEvK2ECxgyksVdXjaJkPr1gKN
+ply9HC4HYK2kaI3I4sU7XATAWkTRGpEXmh0uAmAtomiNSLiGPUZitjpcqqZowUaikeVZcrgggLWU
+ojUiEVkcLgJgLaJojQgTT4eLAFiLKJpRLxGp8/IHalYSqrppurHMcw5pEyTQ67fqGoXZiB8oyUZU
+xdgIQ0TdHA5XUWgtUxAbnYRyzvjhSiVea2myWdeEBVWtoFl6YgqHHKTgy83M/hudw+kBKaN5gm5L
+x8SuEBqvvqfknJOY1Jlrmef6/hacWK5nwQXpDfcbbHWvOjl2/FGLWF2w2hx1L9p9cdoFLOdi75rM
+BM5RAhNeMzmXa/iqhpy1TCUS5xJuMqIOqexX3dqgT2CcUhKjqSQpfMOvJrbpbFGgSrvr/u8CryKi
+imwgW3TOYhLcPaaE17jCVEVqm6FWvWoJqy94ThOaYmnOTnK4IRS1gYLWnZbX8473uQd7ufucru/v
+5bp7x4WlsT/qvW73eLjPPd5L9sd7vc5etzv6TtzfCWx/ZIPW2OX9brv8sCYyeDLBQwyuo7VObXxG
+8jkjZ11OQngdKJt6SdWLssGZG9lRQ+1y7CTqewu4T4aqGDtdO5nG46xF3X64vcWVVKoNBXa4s6Nf
+9W3qt51aJbbeaQ3i7byx4t6G4/8vac5PZ2w4eGfG1Pvq4yfK9QYj9x2ZeoGn2MfP0sBzhifvyNI1
+oUmE44+fqOFwNPDekaiwD0998TN5Miz6rK//KxR0/gMAAP//gjMRo2MAAAAA//8DAN04jtE=
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Content-Encoding: deflate

+Content-Length: 1305

+

+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET deflate compressed content with broken deflate header
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/223 --compressed
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /223 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Accept-Encoding: deflate, gzip

+

+</protocol>
+<errorcode>
+61
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test224 b/ap/lib/libcurl/curl-7.54.1/tests/data/test224
new file mode 100644
index 0000000..1c8ad23
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test224
@@ -0,0 +1,104 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+compressed
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data base64="yes">
+SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
+dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
+UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
+VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
+U08tODg1OS0xDQpDb250ZW50LUVuY29kaW5nOiBnemlwDQpDb250ZW50LUxlbmd0aDogMjE4Ng0K
+DQofiwgcv7yrQQIDMAB0aGlzIGlzIGFuIGV4dHJhIGZpZWxkIHRoYXQgbXVzdCBiZSByZW1vdmVk
+X19fX19sb25nLWZpbGVuYW1lLXh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4
+eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4AHRoaXMgaXMgYSBj
+b21tZW50IHRoYXQgbXVzdCBiZSBza2lwcGVkACvNS87PLShKLS5OTVFIr8osUEhJLElUKM8syVDI
+yc9Lh4hlpCampBZxAQC4UJ7LLQAAAA==
+</data>
+
+<datacheck>
+HTTP/1.1 200 OK

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

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

+Vary: Accept-Encoding

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

+Content-Encoding: gzip

+Content-Length: 2186

+

+uncompressed gzip data with long gzip header
+</datacheck>
+
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+libz
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET gzip compressed content with huge comment and extra field
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/224 --compressed
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /224 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Accept-Encoding: deflate, gzip

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test225 b/ap/lib/libcurl/curl-7.54.1/tests/data/test225
new file mode 100644
index 0000000..a644712
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test225
@@ -0,0 +1,28 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+</keywords>
+</info>
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP %0a-code in URL's name part
+ </name>
+ <command>
+ftp://bad%0auser:passwd@%HOSTIP:%FTPPORT/225%0a
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 3 == CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test226 b/ap/lib/libcurl/curl-7.54.1/tests/data/test226
new file mode 100644
index 0000000..9fc4bda
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test226
@@ -0,0 +1,29 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP %0d-code in URL's CWD part
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/226%0d
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 3 == CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test227 b/ap/lib/libcurl/curl-7.54.1/tests/data/test227
new file mode 100644
index 0000000..5b6d98c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test227
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+post-quote
+pre-quote
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY EPSV 500 no such command
+REPLY FAIL 500 this might not be a failure!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP with quote ops
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+NOOP 1

+FAIL

+EPSV

+PASV

+TYPE I

+NOOP 2

+FAIL HARD

+SIZE 227

+RETR 227

+NOOP 3

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test228 b/ap/lib/libcurl/curl-7.54.1/tests/data/test228
new file mode 100644
index 0000000..f581583
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test228
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+ACCT
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY PASS 332 please provide account name
+REPLY ACCT 230 thank you
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR with ACCT
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/228 --ftp-account "one count"
+</command>
+</client>
+
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+ACCT one count

+PWD

+EPSV

+TYPE I

+SIZE 228

+RETR 228

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test229 b/ap/lib/libcurl/curl-7.54.1/tests/data/test229
new file mode 100644
index 0000000..d337468
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test229
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+FTP
+ACCT
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 332 please provide account name
+REPLY ACCT 532 bluah!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR with bad ACCT
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/229 --ftp-account "one count"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+ACCT one count

+</protocol>
+<errorcode>
+11
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test23 b/ap/lib/libcurl/curl-7.54.1/tests/data/test23
new file mode 100644
index 0000000..46872e8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test23
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+unsupported protocol
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+unsupported protocol:// URL
+ </name>
+ <command>
+htfp://%HOSTIP:%HTTPPORT/none.htfml
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+1
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test231 b/ap/lib/libcurl/curl-7.54.1/tests/data/test231
new file mode 100644
index 0000000..6994957
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test231
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# 16 bytes to check
+<datacheck>
+B01234567
+C01234567
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+ <name>
+file:// with resume
+ </name>
+ <command>
+file://localhost/%PWD/log/test231.txt -C 10
+</command>
+<file name="log/test231.txt">
+A01234567
+B01234567
+C01234567
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test233 b/ap/lib/libcurl/curl-7.54.1/tests/data/test233
new file mode 100644
index 0000000..b631e52
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test233
@@ -0,0 +1,94 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP proxy
+HTTP Basic auth
+HTTP proxy Basic auth
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Location: http://goto.second.host.now/2330002
+Content-Length: 8
+Connection: close
+
+contents
+</data>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data2>
+
+<datacheck>
+HTTP/1.1 302 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Location: http://goto.second.host.now/2330002
+Content-Length: 8
+Connection: close
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, proxy, site+proxy auth and Location: to new host
+ </name>
+ <command>
+http://first.host.it.is/we/want/that/page/233 -x %HOSTIP:%HTTPPORT --user iam:myself --proxy-user testing:this --location
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://first.host.it.is/we/want/that/page/233 HTTP/1.1

+Host: first.host.it.is

+Proxy-Authorization: Basic dGVzdGluZzp0aGlz

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://goto.second.host.now/2330002 HTTP/1.1

+Host: goto.second.host.now

+Proxy-Authorization: Basic dGVzdGluZzp0aGlz

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test234 b/ap/lib/libcurl/curl-7.54.1/tests/data/test234
new file mode 100644
index 0000000..1d2e05b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test234
@@ -0,0 +1,97 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+followlocation
+--location-trusted
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Location: http://goto.second.host.now/2340002
+Content-Length: 8
+Connection: close
+
+contents
+</data>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data2>
+
+<datacheck>
+HTTP/1.1 302 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Location: http://goto.second.host.now/2340002
+Content-Length: 8
+Connection: close
+
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, proxy, site+proxy auth and Location: to new host using location-trusted
+ </name>
+ <command>
+http://first.host.it.is/we/want/that/page/234 -x %HOSTIP:%HTTPPORT --user iam:myself --proxy-user testing:this --location-trusted
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://first.host.it.is/we/want/that/page/234 HTTP/1.1

+Host: first.host.it.is

+Proxy-Authorization: Basic dGVzdGluZzp0aGlz

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://goto.second.host.now/2340002 HTTP/1.1

+Host: goto.second.host.now

+Proxy-Authorization: Basic dGVzdGluZzp0aGlz

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test235 b/ap/lib/libcurl/curl-7.54.1/tests/data/test235
new file mode 100644
index 0000000..6250232
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test235
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP resumed upload but no file present remotely
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/235 -T log/upload235 -C -
+</command>
+<file name="log/upload235">
+this is the *****crap******** that we're gonna upload
+
+worx?
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 235

+STOR 235

+QUIT

+</protocol>
+<upload>
+this is the *****crap******** that we're gonna upload
+
+worx?
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test236 b/ap/lib/libcurl/curl-7.54.1/tests/data/test236
new file mode 100644
index 0000000..9ba706f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test236
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+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
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP resume upload but denied access to remote file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/236 -T log/file236.txt -C -
+</command>
+<file name="log/file236.txt">
+Test data
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 236

+STOR 236

+QUIT

+</protocol>
+
+#  (25) Failed FTP upload: 550
+<errorcode>
+25
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test237 b/ap/lib/libcurl/curl-7.54.1/tests/data/test237
new file mode 100644
index 0000000..9a40f1f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test237
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+REPLY PASV 227 Entering Passiv Mode (1216,256,2,127,127,127)
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP getting bad host in 227-response to PASV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/237 --disable-epsv
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+# The bogus address used here is chosen specifically so that when processed on
+# certain hosts with buggy resolver code, the resulting address (192.0.2.127)
+# is from an address block that is guaranteed never to be assigned (RFC3330).
+<verify>
+# curl: (15) Can't resolve new host 1216.256.2.127:32639
+# 15 => CURLE_FTP_CANT_GET_HOST
+# some systems just don't fail on the illegal host name/address but instead
+# moves on and attempt to connect to... yes, to what?
+# 7= CURLE_COULDNT_CONNECT
+<errorcode>
+15, 7
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PASV

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test238 b/ap/lib/libcurl/curl-7.54.1/tests/data/test238
new file mode 100644
index 0000000..ea54509
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test238
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+REPLY EPSV 229 Entering Passiv Mode (|||1000000|)
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP getting bad port in response to EPSV
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/238
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 13 = CURLE_FTP_WEIRD_PASV_REPLY
+<errorcode>
+13
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test239 b/ap/lib/libcurl/curl-7.54.1/tests/data/test239
new file mode 100644
index 0000000..e8fcb77
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test239
@@ -0,0 +1,102 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<data1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+Hey you, authenticate or go away!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy-auth NTLM and then POST
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/239 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm -d "postit"
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol nonewline="yes">
+POST http://%HOSTIP:%HTTPPORT/239 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST http://%HOSTIP:%HTTPPORT/239 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 6

+Content-Type: application/x-www-form-urlencoded

+

+postit
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test24 b/ap/lib/libcurl/curl-7.54.1/tests/data/test24
new file mode 100644
index 0000000..a2b28a9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test24
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 404 BAD BOY
+Content-Type: text/html
+
+This silly page doesn't reaaaaaly exist so you should not get it.
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET fail silently on HTTP error return
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/24 --fail --silent --show-error
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET /24 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+22
+</errorcode>
+<file2 name="log/stderr24" mode="text">
+curl: (22) The requested URL returned error: 404 BAD BOY
+</file2>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test240 b/ap/lib/libcurl/curl-7.54.1/tests/data/test240
new file mode 100644
index 0000000..cd8594d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test240
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+IPv6
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP-IPv6 GET
+ </name>
+ <command>
+-g "http://%HOST6IP:%HTTP6PORT/240"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:
+</strip>
+<protocol>
+GET /240 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test241 b/ap/lib/libcurl/curl-7.54.1/tests/data/test241
new file mode 100644
index 0000000..46eae1f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test241
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+IPv6
+IPv6-hostname
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 6
+
+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP-IPv6 GET (using ip6-localhost)
+ </name>
+ <command>
+-g "http://ip6-localhost:%HTTP6PORT/241"
+</command>
+<precheck>
+./server/resolve --ipv6 ip6-localhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:
+</strip>
+<protocol>
+GET /241 HTTP/1.1

+Host: ip6-localhost:%HTTP6PORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test242 b/ap/lib/libcurl/curl-7.54.1/tests/data/test242
new file mode 100644
index 0000000..9457c58
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test242
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+IPv6
+HTTP Basic auth
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Connection: close
+
+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP-IPv6 GET with username+password in URL
+ </name>
+ <command>
+-g "http://foobar:barfoo@%HOST6IP:%HTTP6PORT/242"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:
+</strip>
+<protocol>
+GET /242 HTTP/1.1

+Host: %HOST6IP:%HTTP6PORT

+Authorization: Basic Zm9vYmFyOmJhcmZvbw==

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test243 b/ap/lib/libcurl/curl-7.54.1/tests/data/test243
new file mode 100644
index 0000000..5f85298
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test243
@@ -0,0 +1,131 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy NTLM auth
+--proxy-anyauth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+This is not the real page
+</data>
+
+# this is returned first since we get no proxy-auth
+<data1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+Hey you, authenticate or go away!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP POST with --proxy-anyauth, picking NTLM
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/243 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-anyauth -d "postit"
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol nonewline="yes">
+POST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 6

+Content-Type: application/x-www-form-urlencoded

+

+postitPOST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 6

+Content-Type: application/x-www-form-urlencoded

+

+postit
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test245 b/ap/lib/libcurl/curl-7.54.1/tests/data/test245
new file mode 100644
index 0000000..cbb5ee3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test245
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP POST --digest
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/245 -u auser:apasswd --digest -d "junkelijunk"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /245 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /245 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/245", response="379a439b1737ba257c1d2f103914b18b"

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Content-Length: 11

+Content-Type: application/x-www-form-urlencoded

+

+junkelijunk
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test246 b/ap/lib/libcurl/curl-7.54.1/tests/data/test246
new file mode 100644
index 0000000..acf47da
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test246
@@ -0,0 +1,98 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+
+<datacheck>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+# 
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP POST --digest with server doing a 100 before 401 response
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/246 -u auser:apasswd --digest -d "junkelijunk"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /246 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /246 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/246", response="761e6fc9a760c39d587092e8d840e740"

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Content-Length: 11

+Content-Type: application/x-www-form-urlencoded

+

+junkelijunk
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test247 b/ap/lib/libcurl/curl-7.54.1/tests/data/test247
new file mode 100644
index 0000000..2720144
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test247
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+<reply>
+<mdtm>
+213 20030409102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP upload time condition evaluates TRUE => skip upload
+ </name>
+<file name="log/test247.txt">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</file>
+ <command>
+ftp://%HOSTIP:%FTPPORT/247 -T log/test247.txt -z "apr 1 2005 08:00:00"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+MDTM 247

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test248 b/ap/lib/libcurl/curl-7.54.1/tests/data/test248
new file mode 100644
index 0000000..d254a95
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test248
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+<reply>
+<mdtm>
+213 20050409102659
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP upload time condition evaluates FALSE => upload anyway
+ </name>
+<file name="log/test248.txt">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</file>
+ <command>
+ftp://%HOSTIP:%FTPPORT/248 -T log/test248.txt -z "apr 1 2005 08:00:00"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+MDTM 248

+EPSV

+TYPE I

+STOR 248

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test249 b/ap/lib/libcurl/curl-7.54.1/tests/data/test249
new file mode 100644
index 0000000..4f99c2a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test249
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 304 Not Modified swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1910 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 677777
+Connection: close
+Content-Type: text/html
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP 304 response with "illegal" Content-Length: header
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/249 -z "dec 12 12:00:00 1999 GMT"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /249 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test25 b/ap/lib/libcurl/curl-7.54.1/tests/data/test25
new file mode 100644
index 0000000..15030ae
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test25
@@ -0,0 +1,116 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+--max-redirs
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+Redirect to the same URL again!
+</data>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+HTTP/1.1 301 This is a weirdo text message
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 32
+Connection: close
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+looping HTTP Location: following with --max-redirs
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/25 -L --max-redirs 5
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET /want/25 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data/reply/25 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data/reply/data/reply/25 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data/reply/data/reply/data/reply/25 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data/reply/data/reply/data/reply/data/reply/25 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data/reply/data/reply/data/reply/data/reply/data/reply/25 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<errorcode>
+47
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test250 b/ap/lib/libcurl/curl-7.54.1/tests/data/test250
new file mode 100644
index 0000000..3d0a8f3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test250
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+<servercmd>
+SLOWDOWN
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list PASV with slow response
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test251 b/ap/lib/libcurl/curl-7.54.1/tests/data/test251
new file mode 100644
index 0000000..cc8cbfa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test251
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+<servercmd>
+SLOWDOWN
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP dir list, PORT with specified IP and slow response
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/ -P %CLIENTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PORT 127,0,0,1,243,212

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test252 b/ap/lib/libcurl/curl-7.54.1/tests/data/test252
new file mode 100644
index 0000000..559ece0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test252
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTP-ipv6
+IPv6
+EPSV
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+ftp-ipv6
+</server>
+ <name>
+FTP IPv6 dir list PASV
+ </name>
+ <command>
+-g "ftp://%HOST6IP:%FTP6PORT/"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test253 b/ap/lib/libcurl/curl-7.54.1/tests/data/test253
new file mode 100644
index 0000000..8974a8b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test253
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTP-ipv6
+IPv6
+EPRT
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+ftp-ipv6
+</server>
+ <name>
+FTP IPv6 dir list with EPRT
+ </name>
+ <command>
+-g "ftp://%HOST6IP:%FTP6PORT/" -P -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^(EPRT \|2\|::1\|)(.*)/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |2|::1|
+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test254 b/ap/lib/libcurl/curl-7.54.1/tests/data/test254
new file mode 100644
index 0000000..a9ea0cc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test254
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTP-ipv6
+IPv6
+EPSV
+--disable-epsv
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+ftp-ipv6
+</server>
+ <name>
+FTP IPv6 dir list PASV and --disable-epsv
+ </name>
+ <command>
+-g "ftp://%HOST6IP:%FTP6PORT/" --disable-epsv
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test255 b/ap/lib/libcurl/curl-7.54.1/tests/data/test255
new file mode 100644
index 0000000..79d43af
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test255
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTP-ipv6
+IPv6
+EPRT
+--disable-eprt
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+ftp-ipv6
+</server>
+ <name>
+FTP IPv6 dir list with EPRT and --disable-eprt
+ </name>
+ <command>
+-g "ftp://%HOST6IP:%FTP6PORT/" -P - --disable-eprt
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^(EPRT \|2\|::1\|)(.*)/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |2|::1|
+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test256 b/ap/lib/libcurl/curl-7.54.1/tests/data/test256
new file mode 100644
index 0000000..17ae807
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test256
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+Resume
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 Mooo
+Date: Mon, 13 Nov 2000 13:41:09 GMT
+Server: myown/1.0
+Connection: close
+
+todelooooo lalalala yada yada, we know nothing about ranges ;-)
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP resume request over proxy with auth without server supporting it
+ </name>
+ <command option="no-output">
+-x http://%HOSTIP:%HTTPPORT http://%HOSTIP:%HTTPPORT/want/256 -C - --no-include -o log/fewl256.txt -U daniel:stenberg
+</command>
+<file name="log/fewl256.txt">
+This text is here to simulate a partly downloaded file to resume
+download on.
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+33
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/want/256 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: Basic ZGFuaWVsOnN0ZW5iZXJn

+Range: bytes=78-

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+
+# the download target file must remain untouched
+<file name="log/fewl256.txt">
+This text is here to simulate a partly downloaded file to resume
+download on.
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test257 b/ap/lib/libcurl/curl-7.54.1/tests/data/test257
new file mode 100644
index 0000000..502448d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test257
@@ -0,0 +1,112 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP Basic auth
+followlocation
+netrc
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: http://anotherone.com/2570002
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 302 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: http://athird.com/2570003
+
+If this is received, the location following worked
+
+</data2>
+<data3>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data3>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: http://anotherone.com/2570002
+Connection: close
+
+HTTP/1.1 302 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: http://athird.com/2570003
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with --netrc-optional
+ </name>
+ <command>
+http://supersite.com/want/257 -L -x http://%HOSTIP:%HTTPPORT --netrc-optional --netrc-file log/netrc257
+</command>
+
+# netrc auth for two out of three sites:
+<file name="log/netrc257">
+machine supersite.com login user1 password passwd1
+machine anotherone.com login user2 password passwd2
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://supersite.com/want/257 HTTP/1.1

+Host: supersite.com

+Authorization: Basic dXNlcjE6cGFzc3dkMQ==

+User-Agent: curl/7.14.0-CVS (i686-pc-linux-gnu) libcurl/7.14.0-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://anotherone.com/2570002 HTTP/1.1

+Host: anotherone.com

+Authorization: Basic dXNlcjI6cGFzc3dkMg==

+User-Agent: curl/7.14.0-CVS (i686-pc-linux-gnu) libcurl/7.14.0-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://athird.com/2570003 HTTP/1.1

+Host: athird.com

+User-Agent: curl/7.14.0-CVS (i686-pc-linux-gnu) libcurl/7.14.0-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test258 b/ap/lib/libcurl/curl-7.54.1/tests/data/test258
new file mode 100644
index 0000000..98c3401
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test258
@@ -0,0 +1,135 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP replaced headers
+HTTP proxy
+HTTP proxy Digest auth
+--proxy-anyauth
+</keywords>
+
+</info>
+# Server-side
+<reply>
+# The stupid test server doesn't response anything at all until the full
+# request has been sent, and then of course the full POST has already been
+# sent!
+<data>
+HTTP/1.1 407 no, tell me who you are first swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Proxy-Authenticate: Digest realm="many secrets", nonce="911"
+Proxy-Connection: close
+Content-Length: 0
+
+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+<datacheck>
+HTTP/1.1 407 no, tell me who you are first swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Proxy-Authenticate: Digest realm="many secrets", nonce="911"
+Proxy-Connection: close
+Content-Length: 0
+
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP POST multipart without Expect: header using proxy anyauth (Digest)
+ </name>
+ <command>
+-x http://%HOSTIP:%HTTPPORT http://remotehost:54321/we/want/258 -F name=daniel -F tool=curl -F file=@log/test258.txt -H "Expect:" -U uuuser:pppassword --proxy-anyauth
+</command>
+# We create this file before the command is invoked!
+<file name="log/test258.txt">
+foo-
+This is a moo-
+bar
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------).*
+</strip>
+<protocol>
+POST http://remotehost:54321/we/want/258 HTTP/1.1

+Host: remotehost:54321

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 409

+Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

+

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="file"; filename="test258.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------7c633d5c27ce--

+POST http://remotehost:54321/we/want/258 HTTP/1.1

+Host: remotehost:54321

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/258", response="2501654ca391f0b5c8c12a1da77e34cd"

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 409

+Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

+

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="file"; filename="test258.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------7c633d5c27ce--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test259 b/ap/lib/libcurl/curl-7.54.1/tests/data/test259
new file mode 100644
index 0000000..9532887
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test259
@@ -0,0 +1,133 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP proxy
+HTTP proxy Digest auth
+--proxy-anyauth
+</keywords>
+</info>
+# Server-side
+<reply>
+# The stupid test server doesn't response anything at all until the full
+# request has been sent, and then of course the full POST has already been
+# sent!
+<data>
+HTTP/1.1 407 no, tell me who you are first
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Proxy-Authenticate: Digest realm="many secrets", nonce="911"
+Content-Length: 0
+
+</data>
+<data1000>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1000>
+<datacheck>
+HTTP/1.1 407 no, tell me who you are first
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Proxy-Authenticate: Digest realm="many secrets", nonce="911"
+Content-Length: 0
+
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP POST multipart with Expect: header using proxy anyauth (Digest)
+ </name>
+ <command>
+-x http://%HOSTIP:%HTTPPORT http://remotehost:54321/we/want/259 -F name=daniel -F tool=curl -F file=@log/test259.txt -U uuuser:pppassword --proxy-anyauth
+</command>
+# We create this file before the command is invoked!
+<file name="log/test259.txt">
+foo-
+This is a moo-
+bar
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------).*
+</strip>
+<protocol>
+POST http://remotehost:54321/we/want/259 HTTP/1.1

+Host: remotehost:54321

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 409

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

+

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="file"; filename="test259.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------7c633d5c27ce--

+POST http://remotehost:54321/we/want/259 HTTP/1.1

+Host: remotehost:54321

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/259", response="b479994d13e60f3aa192a67c5892ddc5"

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 409

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

+

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="file"; filename="test259.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------7c633d5c27ce--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test26 b/ap/lib/libcurl/curl-7.54.1/tests/data/test26
new file mode 100644
index 0000000..072dbf7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test26
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 Mooo swsclose
+Server: test-server/fake
+Connection: close
+
+*flopp*
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+specify more -o than URLs
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/26 -o - -o -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl.*
+</strip>
+<protocol>
+GET /want/26 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test260 b/ap/lib/libcurl/curl-7.54.1/tests/data/test260
new file mode 100644
index 0000000..589e86e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test260
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET URL without slash but with questionmark
+ </name>
+ <command>
+"http://%HOSTIP:%HTTPPORT?260"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /?260 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test261 b/ap/lib/libcurl/curl-7.54.1/tests/data/test261
new file mode 100644
index 0000000..e3639bf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test261
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+EPSV
+RETR
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+hepp
+</data>
+<servercmd>
+REPLY TYPE 226 Kind of on the positive side!
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR with 226 response code to TYPE
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/261
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 261

+RETR 261

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test262 b/ap/lib/libcurl/curl-7.54.1/tests/data/test262
new file mode 100644
index 0000000..4c28f22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test262
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test263 b/ap/lib/libcurl/curl-7.54.1/tests/data/test263
new file mode 100644
index 0000000..5088141
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test263
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+IPv6
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 6
+Content-Type: text/html
+
+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+ipv6
+</features>
+<server>
+http-ipv6
+</server>
+ <name>
+HTTP-IPv6 GET with proxy specified using IPv6-numerical address
+ </name>
+ <command>
+-g -x "http://%HOST6IP:%HTTP6PORT" http://veryveryremotesite.com/263
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:
+</strip>
+<protocol>
+GET http://veryveryremotesite.com/263 HTTP/1.1

+Host: veryveryremotesite.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test264 b/ap/lib/libcurl/curl-7.54.1/tests/data/test264
new file mode 100644
index 0000000..f4d171a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test264
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Content-Type: text/html

+Content-Length: 26

+

+the content would go here
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy string including http:// and user+password
+ </name>
+ <command>
+http://we.want.that.site.com/264 -x http://f%61ke:user@%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com/264 HTTP/1.1

+Host: we.want.that.site.com

+Proxy-Authorization: Basic ZmFrZTp1c2Vy

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test265 b/ap/lib/libcurl/curl-7.54.1/tests/data/test265
new file mode 100644
index 0000000..17176dd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test265
@@ -0,0 +1,127 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP CONNECT
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# this is returned first since we get no proxy-auth
+<connect1001>
+HTTP/1.0 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 1033

+

+And you should ignore this data.
+QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ
+</connect1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<connect1002>
+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+</connect1002>
+
+# this is returned when we get a GET!
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</data2>
+
+# then this is returned when we get proxy-auth
+<data1000>
+HTTP/1.1 200 OK swsbounce

+Server: no
+

+Nice proxy auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.0 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 1033

+

+HTTP/1.1 200 Things are fine in proxy land

+Server: Microsoft-IIS/5.0

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

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Content-Length: 7
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+daniel
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy CONNECT auth NTLM and then POST, response-body in the 407
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com.265:%HTTPPORT/path/2650002 --proxy http://%HOSTIP:%HTTPPORT --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit"
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol nonewline="yes">
+CONNECT test.remote.example.com.265:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.265:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+Proxy-Connection: Keep-Alive

+

+CONNECT test.remote.example.com.265:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.265:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+Proxy-Connection: Keep-Alive

+

+POST /path/2650002 HTTP/1.1

+User-Agent: curl/7.12.3-CVS (i686-pc-linux-gnu) libcurl/7.12.3-CVS OpenSSL/0.9.6b zlib/1.1.4

+Host: test.remote.example.com.265:%HTTPPORT

+Accept: */*

+Content-Length: 6

+Content-Type: application/x-www-form-urlencoded

+

+postit
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test266 b/ap/lib/libcurl/curl-7.54.1/tests/data/test266
new file mode 100644
index 0000000..d520be0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test266
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Trailer: chunky-trailer

+Connection: mooo

+

+40

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+30

+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

+21;heresatest=moooo

+cccccccccccccccccccccccccccccccc
+

+0

+chunky-trailer: header data

+

+</data>
+<datacheck>
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Trailer: chunky-trailer

+Connection: mooo

+

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with chunked Transfer-Encoding and chunked trailer
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/266 -D log/heads266
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /266 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/heads266">
+HTTP/1.1 200 funky chunky!

+Server: fakeit/0.9 fakeitbad/1.0

+Transfer-Encoding: chunked

+Trailer: chunky-trailer

+Connection: mooo

+

+chunky-trailer: header data

+</file>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test267 b/ap/lib/libcurl/curl-7.54.1/tests/data/test267
new file mode 100644
index 0000000..7a45d12
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test267
@@ -0,0 +1,111 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP POST with NTLM authorization and added custom headers
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/267 -u testuser:testpass --ntlm -d "data" -H "Header1: yes" -H "Header2: no"
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /267 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Header1: yes

+Header2: no

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST /267 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Header1: yes

+Header2: no

+Content-Length: 4

+Content-Type: application/x-www-form-urlencoded

+

+data
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test268 b/ap/lib/libcurl/curl-7.54.1/tests/data/test268
new file mode 100644
index 0000000..c9c7311
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test268
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 0

+

+this is data even though Content-Length is set to zero
+</data>
+<datacheck>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 0

+

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST a non-existing file
+ </name>
+ <command>
+ -d @nonesuchfile http://%HOSTIP:%HTTPPORT/268
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /268 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test269 b/ap/lib/libcurl/curl-7.54.1/tests/data/test269
new file mode 100644
index 0000000..6b7159b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test269
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Accept-Ranges: bytes
+Content-Length: 677654
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+muahahaha
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP --ignore-content-length
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/269 --ignore-content-length
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /269 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test27 b/ap/lib/libcurl/curl-7.54.1/tests/data/test27
new file mode 100644
index 0000000..6fed3d9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test27
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 Mooo swsclose
+Connection: close
+Set-Cookie: thewinneris=nowayyouwin; path=/;
+Content-Length: 8
+
+*flopp*
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Get same cookie page several times
+ </name>
+ <command>
+"http://%HOSTIP:%HTTPPORT/want/{27,27,27}" -b none
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl.*
+</strip>
+<protocol>
+GET /want/27 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/27 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: thewinneris=nowayyouwin

+

+GET /want/27 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: thewinneris=nowayyouwin

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test270 b/ap/lib/libcurl/curl-7.54.1/tests/data/test270
new file mode 100644
index 0000000..f4eea97
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test270
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+PASVBADIP
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP RETR PASV --ftp-skip-pasv-ip
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/270 --ftp-skip-pasv-ip --disable-epsv
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+PASV

+TYPE I

+SIZE 270

+RETR 270

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test271 b/ap/lib/libcurl/curl-7.54.1/tests/data/test271
new file mode 100644
index 0000000..1557fd0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test271
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+a chunk of
+data
+returned
+ to client
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT//271
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /271
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test272 b/ap/lib/libcurl/curl-7.54.1/tests/data/test272
new file mode 100644
index 0000000..f728a2a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test272
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<mdtm>
+213 20040101121212
+</mdtm>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP timed conditioned get file with identical time stamp 
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/272 -z "2004 jan 1 12:12:12 UTC"
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+MDTM 272

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test273 b/ap/lib/libcurl/curl-7.54.1/tests/data/test273
new file mode 100644
index 0000000..ce0be33
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test273
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with two Digest authorization headers
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/273 -u testuser:testpass --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /273 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /273 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/273", response="576ae57b1db0039f8c0de43ef58e49e3"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test274 b/ap/lib/libcurl/curl-7.54.1/tests/data/test274
new file mode 100644
index 0000000..579341c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test274
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+--max-redirs
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Server: test-server/fake
+Location: data/reply/25
+Content-Length: 0
+Connection: close
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with --max-redirs 0
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/274 -L --max-redirs 0
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET /want/274 HTTP/1.1

+User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+<errorcode>
+47
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test275 b/ap/lib/libcurl/curl-7.54.1/tests/data/test275
new file mode 100644
index 0000000..802c4bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test275
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP Basic auth
+HTTP proxy
+HTTP proxy Basic auth
+proxytunnel
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 OK

+Connected-fine: sure

+

+</connect>
+
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 9
+
+contents
+</data>
+<datacheck>
+HTTP/1.1 200 OK

+Connected-fine: sure

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP CONNECT with proxytunnel getting two URLs from the same host
+ </name>
+ <command>
+http://remotesite.com.275:%HTTPPORT/we/want/that/page/275 -p -x %HOSTIP:%PROXYPORT --user iam:myself --proxy-user youare:yourself http://remotesite.com.275:%HTTPPORT/we/want/that/page/275
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT remotesite.com.275:%HTTPPORT HTTP/1.1

+Host: remotesite.com.275:%HTTPPORT

+Proxy-Authorization: Basic eW91YXJlOnlvdXJzZWxm

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Proxy-Connection: Keep-Alive

+

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

+Host: remotesite.com.275:%HTTPPORT

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+

+GET /we/want/that/page/275 HTTP/1.1

+Host: remotesite.com.275:%HTTPPORT

+Authorization: Basic aWFtOm15c2VsZg==

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test276 b/ap/lib/libcurl/curl-7.54.1/tests/data/test276
new file mode 100644
index 0000000..34e2235
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test276
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/2760002.txt?coolsite=http://anotherurl/?a_second/2760002
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/2760002.txt?coolsite=http://anotherurl/?a_second/2760002
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with multiple question marks in URLs
+ </name>
+ <command>
+"http://%HOSTIP:%HTTPPORT/want?uri=http://anything/276?secondq/276" -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want?uri=http://anything/276?secondq/276 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /data/2760002.txt?coolsite=http://anotherurl/?a_second/2760002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test277 b/ap/lib/libcurl/curl-7.54.1/tests/data/test277
new file mode 100644
index 0000000..a509b40
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test277
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 11
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting with custom Content-Type
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/277 -F name=daniel -H "Content-Type: text/info"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<strippart>
+s/^--------------------------[a-z0-9]*/--------------------------/
+s/boundary=------------------------[a-z0-9]*/boundary=------------------------/
+</strippart>
+<protocol>
+POST /want/277 HTTP/1.1

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 145

+Expect: 100-continue

+Content-Type: text/info; boundary=------------------------

+

+--------------------------

+Content-Disposition: form-data; name="name"

+

+daniel

+----------------------------

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test278 b/ap/lib/libcurl/curl-7.54.1/tests/data/test278
new file mode 100644
index 0000000..3112264
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test278
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Content-Type: text/html

+Content-Length: 27

+

+the content would go here

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy string including http:// and user+empty password
+ </name>
+ <command>
+http://we.want.that.site.com/278 -x http://f%61ke:@%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com/278 HTTP/1.1

+Host: we.want.that.site.com

+Proxy-Authorization: Basic ZmFrZTo=

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test279 b/ap/lib/libcurl/curl-7.54.1/tests/data/test279
new file mode 100644
index 0000000..47f8b68
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test279
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Content-Type: text/html

+Content-Length: 27

+

+the content would go here

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy string including http:// and user only
+ </name>
+ <command>
+http://we.want.that.site.com/279 -x http://f%61ke@%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com/279 HTTP/1.1

+Host: we.want.that.site.com

+Proxy-Authorization: Basic ZmFrZTo=

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test28 b/ap/lib/libcurl/curl-7.54.1/tests/data/test28
new file mode 100644
index 0000000..1f80d5f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test28
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location:  /online/1,1795,Welcome,00.html/280002.txt?logout=TRUE
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location:  /online/1,1795,Welcome,00.html/280002.txt?logout=TRUE
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following with extra spaces in header
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/28 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/28 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /online/1,1795,Welcome,00.html/280002.txt?logout=TRUE HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test280 b/ap/lib/libcurl/curl-7.54.1/tests/data/test280
new file mode 100644
index 0000000..de7534e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test280
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+--ftp-alternative-to-user
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+<servercmd>
+REPLY USER 530 We don't like USER commands
+COUNT USER 1
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP --ftp-alternative-to-user on USER failure
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/280/ --ftp-alternative-to-user "USER replacement"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+USER replacement

+PASS ftp@example.com

+PWD

+CWD 280

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test281 b/ap/lib/libcurl/curl-7.54.1/tests/data/test281
new file mode 100644
index 0000000..d399fc0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test281
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 100 Continue
+
+HTTP/1.1 401 Bad Auth swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+WWW-Authenticate: Basic Realm=authenticate
+Server: test-server/fake
+</data>
+<datacheck>
+HTTP/1.1 100 Continue
+
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT from file with 100 + 401 responses and -f without auth given
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/281 -f -T log/test281.txt
+</command>
+<file name="log/test281.txt">
+Weird
+     file
+         to
+   upload
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+22
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /we/want/281 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 38

+Expect: 100-continue

+

+Weird
+     file
+         to
+   upload
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test282 b/ap/lib/libcurl/curl-7.54.1/tests/data/test282
new file mode 100644
index 0000000..aa8aba5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test282
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with no response body or headers
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/282
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /282 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test283 b/ap/lib/libcurl/curl-7.54.1/tests/data/test283
new file mode 100644
index 0000000..201df9f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test283
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve on invalid file
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT//invalid-file --tftp-blksize 1024
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<errorcode>
+69
+</errorcode>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 1024
+timeout: 6
+filename: /invalid-file
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test284 b/ap/lib/libcurl/curl-7.54.1/tests/data/test284
new file mode 100644
index 0000000..9b946ec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test284
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP RRQ
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+A chunk of data which exactly fits into
+a 512 byte TFTP block, testing a boundary
+condition in the TFTP receive code.
+789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+123456789ABCDEF
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP retrieve of boundary case 512 byte file
+ </name>
+ <command>
+tftp://%HOSTIP:%TFTPPORT//284
+</command>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<protocol>
+opcode: 1
+mode: octet
+tsize: 0
+blksize: 512
+timeout: 6
+filename: /284
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test285 b/ap/lib/libcurl/curl-7.54.1/tests/data/test285
new file mode 100644
index 0000000..09bfe31
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test285
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP WRQ
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP send
+ </name>
+ <command>
+-T log/test285.txt tftp://%HOSTIP:%TFTPPORT//
+</command>
+<file name="log/test285.txt">
+a chunk of
+data
+sent
+ to server
+</file>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<upload>
+a chunk of
+data
+sent
+ to server
+</upload>
+<protocol>
+opcode: 2
+mode: octet
+tsize: 32
+blksize: 512
+timeout: 6
+filename: /test285.txt
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test286 b/ap/lib/libcurl/curl-7.54.1/tests/data/test286
new file mode 100644
index 0000000..505352a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test286
@@ -0,0 +1,95 @@
+<testcase>
+<info>
+<keywords>
+TFTP
+TFTP WRQ
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+tftp
+</server>
+ <name>
+TFTP send of boundary case 512 byte file
+ </name>
+ <command>
+-T log/test286.txt tftp://%HOSTIP:%TFTPPORT//
+</command>
+<file name="log/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
+</file>
+</client>
+
+#
+# Verify pseudo protocol after the test has been "shot"
+<verify>
+<upload>
+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
+</upload>
+<protocol>
+opcode: 2
+mode: octet
+tsize: 512
+blksize: 512
+timeout: 6
+filename: /test286.txt
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test287 b/ap/lib/libcurl/curl-7.54.1/tests/data/test287
new file mode 100644
index 0000000..6772e22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test287
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+<connect nocheck="yes">
+HTTP/1.1 405 Method Not Allowed swsclose

+

+And you should ignore this data.
+</connect>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP proxy CONNECT with custom User-Agent header
+ </name>
+ <command>
+http://test.remote.example.com.287:%HTTPPORT/path/287 -H "User-Agent: looser/2015" --proxy http://%HOSTIP:%HTTPPORT --proxytunnel --proxy-header "User-Agent: looser/2007"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CONNECT test.remote.example.com.287:%HTTPPORT HTTP/1.1

+Host: test.remote.example.com.287:%HTTPPORT

+Proxy-Connection: Keep-Alive

+User-Agent: looser/2007

+

+</protocol>
+# CURLE_RECV_ERROR
+<errorcode>
+56
+</errorcode>
+<stdout>
+HTTP/1.1 405 Method Not Allowed swsclose

+

+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test288 b/ap/lib/libcurl/curl-7.54.1/tests/data/test288
new file mode 100644
index 0000000..ff4db6a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test288
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+foo
+   bar
+bar
+   foo
+moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+file
+</features>
+ <name>
+file:// with (unsupported) proxy, authentication and range
+ </name>
+<setenv>
+all_proxy=http://fake:user@%HOSTIP:%HTTPPORT/
+</setenv>
+ <command>
+file://localhost/%PWD/log/test288.txt
+</command>
+<file name="log/test288.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test289 b/ap/lib/libcurl/curl-7.54.1/tests/data/test289
new file mode 100644
index 0000000..2720e2e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test289
@@ -0,0 +1,30 @@
+<testcase>
+<info>
+<keywords>
+FTP
+STOR
+Resume
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP resume upload but denied access to local file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/289 -T log/illegal-nonexistent-file -C -
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+26
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test29 b/ap/lib/libcurl/curl-7.54.1/tests/data/test29
new file mode 100644
index 0000000..9a7bd9e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test29
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+timeout
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Connection: close

+

+_data_result_data_
+</data>
+<postcmd>
+wait 10
+</postcmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with 2 secs timeout
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/29 -m 2
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/29 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test290 b/ap/lib/libcurl/curl-7.54.1/tests/data/test290
new file mode 100644
index 0000000..6078a2a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test290
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+FTP
+--max-filesize
+</keywords>
+</info>
+# Server-side
+<reply>
+<size>
+85
+</size>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download maximum filesize exceeded
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/290 --max-filesize 30
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+63
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 290

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test291 b/ap/lib/libcurl/curl-7.54.1/tests/data/test291
new file mode 100644
index 0000000..18e039e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test291
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+--max-filesize
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP download maximum filesize not exceeded
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/291 --max-filesize 100
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 291

+RETR 291

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test292 b/ap/lib/libcurl/curl-7.54.1/tests/data/test292
new file mode 100644
index 0000000..800e8d1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test292
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--max-filesize
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with maximum filesize not exceeded
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/292 --max-filesize 1000
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /292 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test293 b/ap/lib/libcurl/curl-7.54.1/tests/data/test293
new file mode 100644
index 0000000..d75fc9a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test293
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--max-filesize
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with maximum filesize exceeded
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/293 --max-filesize 2
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+63
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /293 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test294 b/ap/lib/libcurl/curl-7.54.1/tests/data/test294
new file mode 100644
index 0000000..a9752a2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test294
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+ACCT
+--ftp-account
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+<servercmd>
+REPLY PASS 332 Give me an ACCT now
+REPLY ACCT 230 Thank-you for the ACCT
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP --ftp-account on ACCT request
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/294/ --ftp-account "data for acct"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+ACCT data for acct

+PWD

+CWD 294

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test295 b/ap/lib/libcurl/curl-7.54.1/tests/data/test295
new file mode 100644
index 0000000..5b1ddcf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test295
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+ACCT
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 332 Give me an ACCT now
+REPLY PWD 530 No ACCT, go away
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP ACCT request without --ftp-account
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/295/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test296 b/ap/lib/libcurl/curl-7.54.1/tests/data/test296
new file mode 100644
index 0000000..2008c8b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test296
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CWD
+--ftp-method
+multicwd
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP CWD with --ftp-method multicwd
+ </name>
+ <command>
+--ftp-method multicwd ftp://%HOSTIP:%FTPPORT/first/second/third/296
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD first

+CWD second

+CWD third

+EPSV

+TYPE I

+SIZE 296

+RETR 296

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test297 b/ap/lib/libcurl/curl-7.54.1/tests/data/test297
new file mode 100644
index 0000000..36573f8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test297
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CWD
+--ftp-method
+singlecwd
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP CWD with --ftp-method singlecwd
+ </name>
+ <command>
+--ftp-method singlecwd ftp://%HOSTIP:%FTPPORT/first/second/third/297
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD first/second/third

+EPSV

+TYPE I

+SIZE 297

+RETR 297

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test298 b/ap/lib/libcurl/curl-7.54.1/tests/data/test298
new file mode 100644
index 0000000..80913e8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test298
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CWD
+--ftp-method
+nocwd
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP CWD with --ftp-method nocwd
+ </name>
+ <command>
+--ftp-method nocwd ftp://%HOSTIP:%FTPPORT/first/second/third/298
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE first/second/third/298

+RETR first/second/third/298

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test299 b/ap/lib/libcurl/curl-7.54.1/tests/data/test299
new file mode 100644
index 0000000..4daaea4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test299
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP
+CURLOPT_USERPWD
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+ <name>
+FTP over HTTP proxy with user:pass not in url
+ </name>
+ <command>
+-x http://%HOSTIP:%HTTPPORT -u michal:aybabtu ftp://host.com/we/want/299
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://michal:aybabtu@host.com/we/want/299 HTTP/1.1

+Host: host.com:21

+Authorization: Basic bWljaGFsOmF5YmFidHU=

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test3 b/ap/lib/libcurl/curl-7.54.1/tests/data/test3
new file mode 100644
index 0000000..0fe2764
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test3
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Basic auth
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 0

+

+this is data even though Content-Length is set to zero
+</data>
+<datacheck>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 0

+

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with auth and contents but with content-length set to 0
+ </name>
+ <command>
+ -d "fooo=mooo&pooo=clue&doo=%20%20%20++++" -u "fake:-user" http://%HOSTIP:%HTTPPORT/3
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /3 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic ZmFrZTotdXNlcg==

+Accept: */*

+Content-Length: 37

+Content-Type: application/x-www-form-urlencoded

+

+fooo=mooo&pooo=clue&doo=%20%20%20++++
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test30 b/ap/lib/libcurl/curl-7.54.1/tests/data/test30
new file mode 100644
index 0000000..70b8005
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test30
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with no data in server reply
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/30
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/30 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+52
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test300 b/ap/lib/libcurl/curl-7.54.1/tests/data/test300
new file mode 100644
index 0000000..7b4222d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test300
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+simple HTTPS GET
+ </name>
+ <command>
+-k https://%HOSTIP:%HTTPSPORT/300
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /300 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test301 b/ap/lib/libcurl/curl-7.54.1/tests/data/test301
new file mode 100644
index 0000000..c404695
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test301
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+HTTP Basic auth
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+HTTPS GET with user and password
+ </name>
+ <command>
+-k -u fake:user https://%HOSTIP:%HTTPSPORT/301
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /301 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Authorization: Basic ZmFrZTp1c2Vy

+Accept: */*

+

+</protocol>
+<data>
+[insert full protocol verifiction dump here]
+</data>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test302 b/ap/lib/libcurl/curl-7.54.1/tests/data/test302
new file mode 100644
index 0000000..7bb162b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test302
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+<connect nocheck="yes">
+HTTP/1.1 405 Method Not Allowed swsclose

+

+And you should ignore this data.
+</connect>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+HTTPS GET over HTTP proxy fails
+ </name>
+ <command>
+-k -U fake:user -x %HOSTIP:%HTTPPORT https://bad.fakeurl-to.test:302/slash/302
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+56
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<data>
+</data>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test303 b/ap/lib/libcurl/curl-7.54.1/tests/data/test303
new file mode 100644
index 0000000..01dd9eb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test303
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+timeout
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Connection: close

+

+_data_result_data_
+</data>
+<postcmd>
+wait 20
+</postcmd>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+HTTPS with 8 secs timeout
+ </name>
+ <command>
+-k https://%HOSTIP:%HTTPSPORT/want/303 -m 8
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/303 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+<errorcode>
+28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test304 b/ap/lib/libcurl/curl-7.54.1/tests/data/test304
new file mode 100644
index 0000000..fedf18f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test304
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP POST
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 10

+
+blablabla
+</data>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+HTTPS multipart formpost
+ </name>
+ <command>
+-k https://%HOSTIP:%HTTPSPORT/we/want/304 -F name=daniel -F tool=curl -F file=@log/test304.txt
+</command>
+# We create this file before the command is invoked!
+<file name="log/test304.txt">
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------).*
+</strip>
+<protocol>
+POST /we/want/304 HTTP/1.1

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+Content-Length: 1386

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------c3b2ef7f0bb8

+

+------------------------------c3b2ef7f0bb8

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------c3b2ef7f0bb8

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------c3b2ef7f0bb8

+Content-Disposition: form-data; name="file"; filename="test304.txt"

+Content-Type: text/plain

+

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+

+------------------------------c3b2ef7f0bb8--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test305 b/ap/lib/libcurl/curl-7.54.1/tests/data/test305
new file mode 100644
index 0000000..858a004
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test305
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+insecure HTTPS without permission
+ </name>
+ <command>
+https://%HOSTIP:%HTTPSPORT/want/305 --cacert moooo
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<errorcode>
+77
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test306 b/ap/lib/libcurl/curl-7.54.1/tests/data/test306
new file mode 100644
index 0000000..95d4cef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test306
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+No headers at all, just data swsclose
+
+Let's get
+
+a little
+
+so that
+
+we
+
+have
+
+some
+
+test
+
+data to
+
+verify
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+HTTPS GET, receive no headers only data!
+ </name>
+ <command>
+-k https://%HOSTIP:%HTTPSPORT/306
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /306 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test307 b/ap/lib/libcurl/curl-7.54.1/tests/data/test307
new file mode 100644
index 0000000..03c2b3c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test307
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 16 Jan 2007 18:00:14 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+OpenSSL
+</features>
+<server>
+https
+</server>
+<precheck>
+perl %SRCDIR/libtest/test307.pl %CURL
+</precheck>
+
+ <name>
+simple HTTPS GET with openssl engine
+ </name>
+ <command>
+--engine openssl -k https://%HOSTIP:%HTTPSPORT/307
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /307 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test308 b/ap/lib/libcurl/curl-7.54.1/tests/data/test308
new file mode 100644
index 0000000..d20556a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test308
@@ -0,0 +1,34 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<features>
+OpenSSL
+</features>
+<server>
+https
+</server>
+ <name>
+simple HTTPS GET with invalid crypto engine
+ </name>
+ <command>
+--engine invalid-crypto-engine-xyzzy -k https://%HOSTIP:%HTTPSPORT/308
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+53
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test309 b/ap/lib/libcurl/curl-7.54.1/tests/data/test309
new file mode 100644
index 0000000..dd04312
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test309
@@ -0,0 +1,86 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTPS
+HTTP GET
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose

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

+Server: test-server/fake

+Location: https://127.0.0.1:8991/data/3090002.txt?coolsite=yes

+Connection: close

+

+This server reply is for testing a simple Location: following to HTTPS URL
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose

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

+Server: test-server/fake

+Content-Length: 52

+

+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose

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

+Server: test-server/fake

+Location: https://127.0.0.1:8991/data/3090002.txt?coolsite=yes

+Connection: close

+

+HTTP/1.1 200 Followed here fine swsclose

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

+Server: test-server/fake

+Content-Length: 52

+

+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+http
+https
+</server>
+ <name>
+HTTP Location: redirect to HTTPS URL
+ </name>
+ <command>
+-k http://%HOSTIP:%HTTPPORT/want/309 -L
+</command>
+# The data section doesn't do variable substitution, so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%HTTPSPORT' ne '8991' );"
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/309 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /data/3090002.txt?coolsite=yes HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test31 b/ap/lib/libcurl/curl-7.54.1/tests/data/test31
new file mode 100644
index 0000000..54e360a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test31
@@ -0,0 +1,137 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+cookiejar
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 4

+Content-Type: text/html

+Funny-head: yesyes

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

+Set-Cookie: nodomainnovalue

+Set-Cookie:   nodomain=value; expires=Fri Feb 2 11:56:27 GMT 2035

+Set-Cookie: novalue; domain=reallysilly

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

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

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

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

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

+Set-Cookie: withspaces=  yes  within and around    ;

+Set-Cookie: withspaces2 =before equals;

+Set-Cookie: prespace=  yes before;

+Set-Cookie: securewithspace=after    ; secure =

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with weirdly formatted cookies and cookiejar storage
+ </name>
+# Explicitly set the time zone to a known good one, in case the user is
+# using one of the 'right' zones that take into account leap seconds
+# which causes the cookie expiry times to be different.
+<setenv>
+TZ=GMT
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/31 -b none -c log/jar31.txt
+</command>
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/31 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/jar31.txt" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+127.0.0.1	FALSE	/silly/	FALSE	0	ismatch	this
+127.0.0.1	FALSE	/overwrite	FALSE	0	overwrite	this2
+127.0.0.1	FALSE	/secure1/	TRUE	0	sec1value	secure1
+127.0.0.1	FALSE	/secure2/	TRUE	0	sec2value	secure2
+127.0.0.1	FALSE	/secure3/	TRUE	0	sec3value	secure3
+127.0.0.1	FALSE	/secure4/	TRUE	0	sec4value	secure4
+127.0.0.1	FALSE	/secure5/	TRUE	0	sec5value	secure5
+127.0.0.1	FALSE	/secure6/	TRUE	0	sec6value	secure6
+127.0.0.1	FALSE	/secure7/	TRUE	0	sec7value	secure7
+127.0.0.1	FALSE	/secure8/	TRUE	0	sec8value	secure8
+127.0.0.1	FALSE	/secure9/	TRUE	0	secure	very1
+#HttpOnly_127.0.0.1	FALSE	/p1/	FALSE	0	httpo1	value1
+#HttpOnly_127.0.0.1	FALSE	/p2/	FALSE	0	httpo2	value2
+#HttpOnly_127.0.0.1	FALSE	/p3/	FALSE	0	httpo3	value3
+#HttpOnly_127.0.0.1	FALSE	/p4/	FALSE	0	httpo4	value4
+#HttpOnly_127.0.0.1	FALSE	/p4/	FALSE	0	httponly	myvalue1
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec	myvalue2
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec2	myvalue3
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec3	myvalue4
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec4	myvalue5
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec5	myvalue6
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec6	myvalue7
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec7	myvalue8
+#HttpOnly_127.0.0.1	FALSE	/p4/	TRUE	0	httpandsec8	myvalue9
+127.0.0.1	FALSE	/	FALSE	0	partmatch	present
+127.0.0.1	FALSE	/we/want/	FALSE	2054030187	nodomain	value
+#HttpOnly_127.0.0.1	FALSE	/silly/	FALSE	0	magic	yessir
+127.0.0.1	FALSE	/we/want/	FALSE	0	blexp	yesyes
+127.0.0.1	FALSE	/we/want/	FALSE	0	withspaces	yes  within and around
+127.0.0.1	FALSE	/we/want/	FALSE	0	withspaces2	before equals
+127.0.0.1	FALSE	/we/want/	FALSE	0	prespace	yes before
+127.0.0.1	FALSE	/we/want/	TRUE	0	securewithspace	after
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test310 b/ap/lib/libcurl/curl-7.54.1/tests/data/test310
new file mode 100644
index 0000000..e7a9379
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test310
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt https://localhost:%HTTPSPORT/310
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /310 HTTP/1.1

+Host: localhost:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test311 b/ap/lib/libcurl/curl-7.54.1/tests/data/test311
new file mode 100644
index 0000000..0465ed1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test311
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https Server-localhost0h-sv.pem
+</server>
+ <name>
+HTTPS wrong subjectAltName but right CN
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt https://localhost:%HTTPSPORT/311
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+51
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test312 b/ap/lib/libcurl/curl-7.54.1/tests/data/test312
new file mode 100644
index 0000000..af4422f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test312
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https Server-localhost.nn-sv.pem
+</server>
+ <name>
+HTTPS GET to localhost and null-prefixed CN cert
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt https://localhost:%HTTPSPORT/312
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+51
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test313 b/ap/lib/libcurl/curl-7.54.1/tests/data/test313
new file mode 100644
index 0000000..c54495a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test313
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+CRL
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+CRL test
+ </name>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --crlfile %SRCDIR/certs/Server-localhost-sv.crl https://localhost:%HTTPSPORT/313
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+60
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test32 b/ap/lib/libcurl/curl-7.54.1/tests/data/test32
new file mode 100644
index 0000000..992ffcb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test32
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+-G
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with -d and -G
+ </name>
+ <command>
+-d "foo=moo&moo=poo" http://%HOSTIP:%HTTPPORT/32 -G
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /32?foo=moo&moo=poo HTTP/1.1

+User-Agent: curl/7.9.5 (i686-pc-linux-gnu) libcurl 7.9.5-cvs (OpenSSL 0.9.5) (ipv6 enabled)

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test320 b/ap/lib/libcurl/curl-7.54.1/tests/data/test320
new file mode 100644
index 0000000..4b6f833
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test320
@@ -0,0 +1,96 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+TLS-SRP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 OK

+Content-type: text/html

+

+
+<HTML><BODY>
+<CENTER><H1>This is <a href="http://www.gnu.org/software/gnutls">GnuTLS</a></H1></CENTER>
+
+
+<p>Session ID: <i>003030000100000001000000000000000030330001000000B062410001000000</i></p>
+<h5>If your browser supports session resuming, then you should see the same session ID, when you press the <b>reload</b> button.</h5>
+<p>Connected as user 'jsmith'.</p>
+<P>
+<TABLE border=1><TR><TD>Protocol version:</TD><TD>TLS1.2</TD></TR>
+<TR><TD>Key Exchange:</TD><TD>SRP</TD></TR>
+<TR><TD>Compression</TD><TD>NULL</TD></TR>
+<TR><TD>Cipher</TD><TD>AES-NNN-CBC</TD></TR>
+<TR><TD>MAC</TD><TD>SHA1</TD></TR>
+<TR><TD>Ciphersuite</TD><TD>SRP_SHA_AES_NNN_CBC_SHA1</TD></TR></p></TABLE>
+<hr><P>Your HTTP header was:<PRE>Host: localhost:9011

+User-Agent: curl-test-suite

+Accept: */*

+

+</PRE></P>
+</BODY></HTML>
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+httptls+srp
+</server>
+<features>
+TLS-SRP
+</features>
+ <name>
+simple TLS-SRP HTTPS GET, check user in response
+ </name>
+<command>
+--insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword abc -A curl-test-suite https://%HOSTIP:%HTTPTLSPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+</protocol>
+<file name="log/curl320.out" mode="text">
+HTTP/1.0 200 OK

+Content-type: text/html

+

+
+<HTML><BODY>
+<CENTER><H1>This is <a href="http://www.gnu.org/software/gnutls">GnuTLS</a></H1></CENTER>
+
+
+
+<h5>If your browser supports session resuming, then you should see the same session ID, when you press the <b>reload</b> button.</h5>
+<p>Connected as user 'jsmith'.</p>
+<P>
+<TABLE border=1><TR><TD></TD></TR>
+<TR><TD>Key Exchange:</TD><TD>SRP</TD></TR>
+<TR><TD>Compression</TD><TD>NULL</TD></TR>
+<TR><TD>Cipher</TD><TD>AES-NNN-CBC</TD></TR>
+<TR><TD>MAC</TD><TD>SHA1</TD></TR>
+<TR><TD>Ciphersuite</TD><TD>SRP_SHA_AES_NNN_CBC_SHA1</TD></TR></p></TABLE>
+<hr><P>Your HTTP header was:<PRE>Host: %HOSTIP:%HTTPTLSPORT

+User-Agent: curl-test-suite

+Accept: */*

+

+</PRE></P>
+</BODY></HTML>
+
+</file>
+<stripfile>
+s/^<p>Session ID:.*//
+s/Protocol version:.*[0-9]//
+s/GNUTLS/GnuTLS/
+s/(AES[-_])\d\d\d([-_]CBC)/$1NNN$2/
+</stripfile>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test321 b/ap/lib/libcurl/curl-7.54.1/tests/data/test321
new file mode 100644
index 0000000..c6b208b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test321
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+TLS-SRP
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+httptls+srp
+</server>
+<features>
+TLS-SRP
+</features>
+ <name>
+TLS-SRP with bad username and password
+ </name>
+<command>
+--insecure --tlsauthtype SRP --tlsuser baduser --tlspassword badpass https://%HOSTIP:%HTTPTLSPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+35
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test322 b/ap/lib/libcurl/curl-7.54.1/tests/data/test322
new file mode 100644
index 0000000..f7f8279
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test322
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+TLS-SRP
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+httptls+srp
+</server>
+<features>
+TLS-SRP
+</features>
+ <name>
+TLS-SRP with bad password
+ </name>
+<command>
+--insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword badpass https://%HOSTIP:%HTTPTLSPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+35
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test323 b/ap/lib/libcurl/curl-7.54.1/tests/data/test323
new file mode 100644
index 0000000..6439b4d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test323
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+TLS-SRP
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+https
+</server>
+<features>
+TLS-SRP
+</features>
+ <name>
+TLS-SRP to non-TLS-SRP server
+ </name>
+<command>
+--insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword badpass https://%HOSTIP:%HTTPSPORT/want/323
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+35
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test324 b/ap/lib/libcurl/curl-7.54.1/tests/data/test324
new file mode 100644
index 0000000..b58d940
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test324
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+TLS-SRP
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+httptls+srp
+</server>
+<features>
+TLS-SRP
+</features>
+ <name>
+TLS-SRP with server cert checking
+ </name>
+<command> # no --insecure
+--tlsauthtype SRP --tlsuser jsmith --tlspassword abc https://%HOSTIP:%HTTPTLSPORT/want/323
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+51
+</errorcode>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test325 b/ap/lib/libcurl/curl-7.54.1/tests/data/test325
new file mode 100644
index 0000000..6d5898d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test325
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+--proto-redir
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+Location: http://%HOSTIP:%HTTPPORT/325
+
+MooMoo
+</data>
+<datacheck>
+HTTP/1.1 301 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+Location: http://%HOSTIP:%HTTPPORT/325
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+ <name>
+HTTPS with attempted redirect to denied HTTP
+ </name>
+ <command>
+-k https://%HOSTIP:%HTTPSPORT/325 --proto-redir -http --location
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /325 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+# 1 - Protocol http not supported or disabled in libcurl
+<errorcode>
+1
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test33 b/ap/lib/libcurl/curl-7.54.1/tests/data/test33
new file mode 100644
index 0000000..9f7c31f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test33
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+Resume
+Content-Range
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with resume
+ </name>
+<file name="log/test33.txt">
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+012345678
+</file>
+ <command>
+http://%HOSTIP:%HTTPPORT/33 -Tlog/test33.txt -C 50
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /33 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Content-Range: bytes 50-99/100

+User-Agent: curl/7.6 (sparc-sun-solaris2.7) libcurl 7.6-pre4 (SSL 0.9.6) (krb4 enabled)

+Accept: */*

+Content-Length: 50

+Expect: 100-continue

+

+012345678
+012345678
+012345678
+012345678
+012345678
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test34 b/ap/lib/libcurl/curl-7.54.1/tests/data/test34
new file mode 100644
index 0000000..a332b8c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test34
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 funky chunky!
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+40

+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+30

+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

+21;heresatest=moooo

+cccccccccccccccccccccccccccccccc
+

+0

+

+</data>
+<datacheck>
+HTTP/1.1 200 funky chunky!
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with chunked Transfer-Encoding
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/34
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /34 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test35 b/ap/lib/libcurl/curl-7.54.1/tests/data/test35
new file mode 100644
index 0000000..85733a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test35
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test350 b/ap/lib/libcurl/curl-7.54.1/tests/data/test350
new file mode 100644
index 0000000..6cb53fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test350
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP root dir list multicwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT// --ftp-method multicwd
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test351 b/ap/lib/libcurl/curl-7.54.1/tests/data/test351
new file mode 100644
index 0000000..219677f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test351
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP root dir list nocwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT// --ftp-method nocwd
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST /

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test352 b/ap/lib/libcurl/curl-7.54.1/tests/data/test352
new file mode 100644
index 0000000..5f498a2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test352
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP root dir list singlecwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT// --ftp-method singlecwd
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD /

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test353 b/ap/lib/libcurl/curl-7.54.1/tests/data/test353
new file mode 100644
index 0000000..1adee37
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test353
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP home dir list singlecwd
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/ --ftp-method singlecwd
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test354 b/ap/lib/libcurl/curl-7.54.1/tests/data/test354
new file mode 100644
index 0000000..a694932
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test354
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<servercmd>
+REPLY USER 200 fine, proceed without password
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP without password
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/354
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PWD

+EPSV

+TYPE I

+SIZE 354

+RETR 354

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test36 b/ap/lib/libcurl/curl-7.54.1/tests/data/test36
new file mode 100644
index 0000000..4e3fd8c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test36
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+chunked Transfer-Encoding
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 funky chunky!
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+2

+a
+

+ILLEGAL

+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

+</data>
+<datacheck>
+HTTP/1.1 200 funky chunky!
+Server: fakeit/0.9 fakeitbad/1.0
+Transfer-Encoding: chunked
+Connection: mooo
+
+a
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with bad chunked Transfer-Encoding
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/36
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+56
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /36 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test37 b/ap/lib/libcurl/curl-7.54.1/tests/data/test37
new file mode 100644
index 0000000..7687623
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test37
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with nothing returned from server
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/37
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+52
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /37 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test38 b/ap/lib/libcurl/curl-7.54.1/tests/data/test38
new file mode 100644
index 0000000..db257f2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test38
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Resume
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.0 200 Mooo
+Date: Mon, 13 Nov 2000 13:41:09 GMT
+Server: myown/1.0
+Connection: close
+
+todelooooo lalalala yada yada, we know nothing about ranges ;-)
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP resume request without server supporting it
+ </name>
+ <command option="no-output">
+http://%HOSTIP:%HTTPPORT/want/38 -C - --no-include -o log/fewl38.txt
+</command>
+<file name="log/fewl38.txt">
+This text is here to simulate a partly downloaded file to resume
+download on.
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+33
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/38 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=78-

+Accept: */*

+

+</protocol>
+
+# the download target file must remain untouched
+<file name="log/fewl38.txt">
+This text is here to simulate a partly downloaded file to resume
+download on.
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test39 b/ap/lib/libcurl/curl-7.54.1/tests/data/test39
new file mode 100644
index 0000000..1867b60
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test39
@@ -0,0 +1,109 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 10

+

+blablabla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting with filename= and type=
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/39 -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2=<verbatim;type=xxx/yyy" -F "file=@log/test39.txt;type=moo/foobar;filename=fakerfile" -F file2=@log/test39.txt -F "file3=@\"log/test39.txt\";type=mo/foo;filename=\"f\\\\\\\\ak\\\\\\er,\\\\an\\d;.t\\\"xt\"" -F 'file4=@"log/test39.txt"; filename="A\\AA\"\"\\\"ZZZ"'
+</command>
+# We create this file before the command is invoked!
+<file name="log/test39.txt">
+foo bar
+This is a bar foo
+bar
+foo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|-------).*
+</strip>
+<protocol>
+POST /we/want/39 HTTP/1.1

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 1184

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32

+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="str1"

+

+@literal

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="str2"

+

+<verbatim;type=xxx/yyy

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file"; filename="fakerfile"

+Content-Type: moo/foobar

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file2"; filename="test39.txt"

+Content-Type: text/plain

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file3"; filename="f\\\\ak\\\\er,\\an\\d;.t\"xt"

+Content-Type: mo/foo

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32

+Content-Disposition: form-data; name="file4"; filename="A\\AA\"\"\\\"ZZZ"

+Content-Type: text/plain

+

+foo bar
+This is a bar foo
+bar
+foo
+

+------------------------------24e78000bd32--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test4 b/ap/lib/libcurl/curl-7.54.1/tests/data/test4
new file mode 100644
index 0000000..df69d32
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test4
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP added headers
+HTTP replaced headers
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Replaced internal and added custom HTTP headers
+ </name>
+ <command>
+ -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://%HOSTIP:%HTTPPORT/4
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /4 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+extra-header: here

+Accept: replaced

+X-Custom-Header:

+X-Test: foo; 

+X-Test2: foo;

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test40 b/ap/lib/libcurl/curl-7.54.1/tests/data/test40
new file mode 100644
index 0000000..6be0d16
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test40
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose

+Location: ../moo.html/?name=d a niel&testcase=/400002    

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

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose

+Location: ../moo.html/?name=d a niel&testcase=/400002    

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect with whitespace after ? (and conversion)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/40 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/40 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/are/all/moo.html/?name=d+a+niel&testcase=/400002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test400 b/ap/lib/libcurl/curl-7.54.1/tests/data/test400
new file mode 100644
index 0000000..f2d3263
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test400
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+PASV
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTPS server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS dir list PASV unencrypted data
+ </name>
+ <command>
+-k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test401 b/ap/lib/libcurl/curl-7.54.1/tests/data/test401
new file mode 100644
index 0000000..1bb9fb1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test401
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+EPSV
+STOR
+</keywords>
+</info>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS PASV upload file
+ </name>
+<file name="log/test401.txt">
+data
+    to
+      see
+that FTPS
+works
+  so does it?
+</file>
+ <command>
+-k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/401 -T log/test401.txt
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+data
+    to
+      see
+that FTPS
+works
+  so does it?
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+EPSV

+TYPE I

+STOR 401

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test402 b/ap/lib/libcurl/curl-7.54.1/tests/data/test402
new file mode 100644
index 0000000..3060c99
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test402
@@ -0,0 +1,36 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftp
+</server>
+ <name>
+FTP SSL required on non-SSL server
+ </name>
+ <command>
+-k --ftp-ssl-reqd ftp://%HOSTIP:%FTPPORT/402
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+64
+</errorcode>
+<protocol>
+AUTH SSL

+AUTH TLS

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test403 b/ap/lib/libcurl/curl-7.54.1/tests/data/test403
new file mode 100644
index 0000000..7e4d2bf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test403
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+PASV
+LIST
+CCC
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTPS server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS with CCC not supported by server
+ </name>
+ <command>
+-k --ftp-ssl-control --ftp-ssl-ccc ftps://%HOSTIP:%FTPSPORT/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+CCC

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test404 b/ap/lib/libcurl/curl-7.54.1/tests/data/test404
new file mode 100644
index 0000000..0f73325
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test404
@@ -0,0 +1,32 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS with invalid cacert
+ </name>
+ <command>
+--ftp-ssl-control --cacert moooo ftps://%HOSTIP:%FTPSPORT/
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+77
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test405 b/ap/lib/libcurl/curl-7.54.1/tests/data/test405
new file mode 100644
index 0000000..28d8b57
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test405
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+FAILURE
+</keywords>
+</info>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftp
+</server>
+ <name>
+FTPS operation to FTP port
+ </name>
+ <command>
+-m 5 -k ftps://%HOSTIP:%FTPPORT/path/to/file/405
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# error code 35 is CURLE_SSL_CONNECT_ERROR
+# GnuTLS seems to not fail on its handshake but instead times out which gives
+# error 28
+<errorcode>
+35,28
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test406 b/ap/lib/libcurl/curl-7.54.1/tests/data/test406
new file mode 100644
index 0000000..01d83dc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test406
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+PORT
+LIST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTPS server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS dir list, PORT with specified IP
+ </name>
+ <command>
+-k --ftp-ssl-control -P %CLIENTIP ftps://%HOSTIP:%FTPSPORT/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+PORT 127,0,0,1,243,212

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test407 b/ap/lib/libcurl/curl-7.54.1/tests/data/test407
new file mode 100644
index 0000000..ca06838
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test407
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+PASV
+RETR
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+data blobb
+</data>
+
+# data is sent to stdout
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+Get two FTPS files from the same remote dir: no second CWD
+ </name>
+ <command>
+-k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/a/path/407 ftps://%HOSTIP:%FTPSPORT/a/path/407
+</command>
+<stdout>
+data blobb
+data blobb
+</stdout>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+CWD a

+CWD path

+EPSV

+TYPE I

+SIZE 407

+RETR 407

+EPSV

+SIZE 407

+RETR 407

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test408 b/ap/lib/libcurl/curl-7.54.1/tests/data/test408
new file mode 100644
index 0000000..68b42b2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test408
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+PORT
+STOR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS PORT upload with CWD
+ </name>
+ <command>
+-k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/CWD/STOR/RETR/408 -T log/upload408 -P -
+</command>
+<file name="log/upload408">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+CWD CWD

+CWD STOR

+CWD RETR

+PORT 127,0,0,1,5,109

+TYPE I

+STOR 408

+QUIT

+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test409 b/ap/lib/libcurl/curl-7.54.1/tests/data/test409
new file mode 100644
index 0000000..00100bc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test409
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FTPS
+EPSV
+STOR
+</keywords>
+</info>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftps
+</server>
+ <name>
+FTPS PASV upload file
+ </name>
+<file name="log/test409.txt">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</file>
+ <command>
+-k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/409 -T log/test409.txt
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PBSZ 0

+PROT C

+PWD

+EPSV

+TYPE I

+STOR 409

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test41 b/ap/lib/libcurl/curl-7.54.1/tests/data/test41
new file mode 100644
index 0000000..08eca38
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test41
@@ -0,0 +1,32 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP formpost with missing file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/41 -F moo=@boo
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+26
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test42 b/ap/lib/libcurl/curl-7.54.1/tests/data/test42
new file mode 100644
index 0000000..e303f3a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test42
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose

+Location: ../m o o.html/420002    

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

+Connection: close

+

+</data>
+<data2>
+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose

+Location: ../m o o.html/420002    

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

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Location: this should be ignored

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

+Connection: close

+

+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP redirect with whitespace in path (and conversion)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/42 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/42 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/are/all/m%20o%20o.html/420002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test43 b/ap/lib/libcurl/curl-7.54.1/tests/data/test43
new file mode 100644
index 0000000..e5535bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test43
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+HTTP proxy
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/430002.txt?coolsite=yes
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data/430002.txt?coolsite=yes
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP Location: following over HTTP proxy
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/43 -L -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/want/43 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://%HOSTIP:%HTTPPORT/want/data/430002.txt?coolsite=yes HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test44 b/ap/lib/libcurl/curl-7.54.1/tests/data/test44
new file mode 100644
index 0000000..8220a1a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test44
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP replaced headers
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting without Expect: header
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/44 -F name=daniel -F tool=curl -F file=@log/test44.txt -H "Expect:"
+</command>
+# We create this file before the command is invoked!
+<file name="log/test44.txt">
+foo-
+This is a moo-
+bar
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------).*
+</strip>
+<protocol>
+POST /we/want/44 HTTP/1.1

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 408

+Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

+

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------7c633d5c27ce

+Content-Disposition: form-data; name="file"; filename="test44.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------7c633d5c27ce--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test45 b/ap/lib/libcurl/curl-7.54.1/tests/data/test45
new file mode 100644
index 0000000..3eb9ba9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test45
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data.cgi?moo=http://&/450002
+Connection: close
+
+This server reply is for testing a simple Location: following
+
+</data>
+<data2>
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</data2>
+<datacheck>
+HTTP/1.1 301 This is a weirdo text message swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Location: data.cgi?moo=http://&/450002
+Connection: close
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 52
+
+If this is received, the location following worked
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+simple HTTP Location: without protocol in initial URL
+ </name>
+ <command>
+%HOSTIP:%HTTPPORT/want/45 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/45 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /want/data.cgi?moo=http://&/450002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test46 b/ap/lib/libcurl/curl-7.54.1/tests/data/test46
new file mode 100644
index 0000000..d1045b3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test46
@@ -0,0 +1,89 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+cookiejar
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Server: Microsoft-IIS/4.0

+Date: Tue, 25 Sep 2001 19:37:44 GMT

+Content-Type: text/html

+Set-Cookie: ckyPersistent=permanent; expires=Fri, 02-Feb-2035 11:56:27 GMT; path=/

+Set-Cookie: ckySession=temporary; path=/

+Set-Cookie: ASPSESSIONIDQGGQQSJJ=GKNBDIFAAOFDPDAIEAKDIBKE; path=/

+Set-Cookie: justaname=; path=/;

+Set-Cookie: simplyhuge=zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz

+Cache-control: private

+Content-Length: 41

+

+This server reply is for testing cookies
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, get cookies and store in cookie jar
+ </name>
+# Explicitly set the time zone to a known good one, in case the user is
+# using one of the 'right' zones that take into account leap seconds
+# which causes the cookie expiry times to be different from what we expect.
+<setenv>
+TZ=GMT
+</setenv>
+ <command>
+%HOSTIP:%HTTPPORT/want/46 -c log/jar46 -b log/injar46
+</command>
+<file name="log/injar46">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This is generated by libcurl!  Do not edit.
+
+www.fake.come	FALSE	/	FALSE	2022144953	cookiecliente	si
+www.loser.com	FALSE	/	FALSE	2139150993	UID	99
+%HOSTIP	FALSE	/	FALSE	1739150993	mooo	indeed
+#HttpOnly_%HOSTIP	FALSE	/want	FALSE	1739150993	mooo2	indeed2
+%HOSTIP	FALSE	/want	FALSE	0	empty	
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/46 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: empty=; mooo2=indeed2; mooo=indeed

+

+</protocol>
+<file name="log/jar46" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+www.fake.come	FALSE	/	FALSE	2022144953	cookiecliente	si
+www.loser.com	FALSE	/	FALSE	2139150993	UID	99
+%HOSTIP	FALSE	/	FALSE	1739150993	mooo	indeed
+#HttpOnly_%HOSTIP	FALSE	/want	FALSE	1739150993	mooo2	indeed2
+%HOSTIP	FALSE	/want	FALSE	0	empty	
+%HOSTIP	FALSE	/	FALSE	2054030187	ckyPersistent	permanent
+%HOSTIP	FALSE	/	FALSE	0	ckySession	temporary
+%HOSTIP	FALSE	/	FALSE	0	ASPSESSIONIDQGGQQSJJ	GKNBDIFAAOFDPDAIEAKDIBKE
+%HOSTIP	FALSE	/	FALSE	0	justaname	
+%HOSTIP	FALSE	/want/	FALSE	0	simplyhuge	zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test47 b/ap/lib/libcurl/curl-7.54.1/tests/data/test47
new file mode 100644
index 0000000..bd779d3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test47
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP/1.0
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+-foo- within foo -!foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+simple HTTP 1.0 GET
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/47 -0
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /47 HTTP/1.0

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test48 b/ap/lib/libcurl/curl-7.54.1/tests/data/test48
new file mode 100644
index 0000000..7ee05ad
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test48
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP HEAD
+-G
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with -d and -G and -I
+ </name>
+ <command>
+-d "foo=moo&moo=poo" http://%HOSTIP:%HTTPPORT/48 -G -I http://%HOSTIP:%HTTPPORT/48
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+HEAD /48?foo=moo&moo=poo HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+HEAD /48?foo=moo&moo=poo HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test49 b/ap/lib/libcurl/curl-7.54.1/tests/data/test49
new file mode 100644
index 0000000..4a4175e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test49
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose
+Location: ../moo.html/490002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose
+Location: ../moo.html/490002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP follow redirect with ../
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/49 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/49 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/are/all/moo.html/490002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test5 b/ap/lib/libcurl/curl-7.54.1/tests/data/test5
new file mode 100644
index 0000000..b62f1a1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test5
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP over proxy
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/that/page/5#5 -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/we/want/that/page/5 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test50 b/ap/lib/libcurl/curl-7.54.1/tests/data/test50
new file mode 100644
index 0000000..84b05da
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test50
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose
+Location: ../../moo.html/500002
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose
+Location: ../../moo.html/500002
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP follow redirect with ../../
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/50 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/50 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/are/moo.html/500002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test500 b/ap/lib/libcurl/curl-7.54.1/tests/data/test500
new file mode 100644
index 0000000..56a5c91
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test500
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib500
+</tool>
+
+ <name>
+simple libcurl HTTP GET tool
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/500 log/ip500
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/ip500">
+IP: %HOSTIP
+</file>
+<protocol>
+GET /500 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test501 b/ap/lib/libcurl/curl-7.54.1/tests/data/test501
new file mode 100644
index 0000000..674bc43
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test501
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+missing URL
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib501
+</tool>
+
+ <name>
+simple libcurl attempt operation without URL set
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/501
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test502 b/ap/lib/libcurl/curl-7.54.1/tests/data/test502
new file mode 100644
index 0000000..f8d776b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test502
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+FILE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+foo
+   bar swsclose
+bar
+   foo
+moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+file
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib502
+</tool>
+
+ <name>
+simple multi file:// get
+ </name>
+ <command>
+file://%PWD/log/test502.txt
+</command>
+<file name="log/test502.txt">
+foo
+   bar swsclose
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test503 b/ap/lib/libcurl/curl-7.54.1/tests/data/test503
new file mode 100644
index 0000000..e8dc21e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test503
@@ -0,0 +1,87 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+HTTP proxy Basic auth
+proxytunnel
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+

+</connect>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+
+</data>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+

+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib503
+</tool>
+
+ <name>
+simple multi http:// through proxytunnel with authentication info
+ </name>
+ <command>
+http://machine.503:%HTTPPORT/503 %HOSTIP:%PROXYPORT
+</command>
+<file name="log/test503.txt">
+foo
+   bar
+bar
+   foo
+moo
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+CONNECT machine.503:%HTTPPORT HTTP/1.1

+Host: machine.503:%HTTPPORT

+Proxy-Authorization: Basic dGVzdDppbmc=

+Proxy-Connection: Keep-Alive

+

+</proxy>
+<protocol>
+GET /503 HTTP/1.1

+Host: machine.503:%HTTPPORT

+Authorization: Basic dGVzdDppbmc=

+Accept: */*

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test504 b/ap/lib/libcurl/curl-7.54.1/tests/data/test504
new file mode 100644
index 0000000..2d3a3dd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test504
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+multi
+FAILURE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib504
+</tool>
+
+ <name>
+simple multi through local proxy without listener
+ </name>
+ <command>
+http://%HOSTIP:%HTTPSPORT/504 %HOSTIP:55555
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+# TEST_ERR_SUCCESS is errorcode 120
+<verify>
+<errorcode>
+120
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test505 b/ap/lib/libcurl/curl-7.54.1/tests/data/test505
new file mode 100644
index 0000000..a5e5d31
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test505
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib505
+</tool>
+
+ <name>
+FTP upload with rename after transfer
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/505 log/upload505
+</command>
+<file name="log/upload505">
+Contents
+of
+a file
+to verify
+ftp
+upload
+
+
+works?
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+Contents
+of
+a file
+to verify
+ftp
+upload
+
+
+works?
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+STOR 505

+RNFR 505

+RNTO 505-forreal

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test506 b/ap/lib/libcurl/curl-7.54.1/tests/data/test506
new file mode 100644
index 0000000..96e690b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test506
@@ -0,0 +1,236 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+shared cookies
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Set-Cookie: test1=one; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
+Set-Cookie: test2=two; domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
+Set-Cookie: test3=three; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
+Content-Length: 29
+
+run 1: set cookie 1, 2 and 3
+</data1>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:01 GMT
+Server: test-server/fake
+Content-Type: text/html
+Set-Cookie: test4=four; domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
+Set-Cookie: test5=five; domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
+Content-Length: 26
+
+run 2: set cookie 4 and 5
+</data2>
+<data3>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:02 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes
+Set-Cookie: test4=overwritten4; domain=host.foo.com; expires=Sat May 5 GMT 11:56:27 2035
+Set-Cookie: test1=overwritten1; domain=foo.com; expires=Thu Mar 3 GMT 11:56:27 2033
+Set-Cookie: test6=six; domain=.www.host.foo.com; expires=Thu Mar 3 GMT 11:56:27 2033
+Set-Cookie: test6=six_more; expires=Thu Mar 3 GMT 11:56:27 2033
+Content-Type: text/html
+Content-Length: 73
+
+run 3: overwrite cookie 1 and 4, set cookie 6 with and without tailmatch
+</data3>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP with shared cookie list (and dns cache)
+</name>
+# Explicitly set the time zone to a known good one, in case the user is
+# using one of the 'right' zones that take into account leap seconds
+# which causes the cookie expiry times to be different.
+<setenv>
+TZ=GMT
+</setenv>
+<tool>
+lib506
+</tool>
+<command>
+http://%HOSTIP:%HTTPPORT/506
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+GLOBAL_INIT
+SHARE_INIT
+CURLSHOPT_LOCKFUNC
+CURLSHOPT_UNLOCKFUNC
+CURLSHOPT_USERDATA
+CURL_LOCK_DATA_COOKIE
+CURL_LOCK_DATA_DNS
+CURLOPT_SHARE
+lock:   share  [Pigs in space]: 0
+unlock: share  [Pigs in space]: 1
+CURLOPT_COOKIELIST injected_and_clobbered
+lock:   cookie [Pigs in space]: 2
+unlock: cookie [Pigs in space]: 3
+CURLOPT_COOKIELIST ALL
+lock:   cookie [Pigs in space]: 4
+unlock: cookie [Pigs in space]: 5
+CURLOPT_COOKIELIST session
+lock:   cookie [Pigs in space]: 6
+unlock: cookie [Pigs in space]: 7
+CURLOPT_COOKIELIST injected
+lock:   cookie [Pigs in space]: 8
+unlock: cookie [Pigs in space]: 9
+CURLOPT_COOKIELIST SESS
+lock:   cookie [Pigs in space]: 10
+unlock: cookie [Pigs in space]: 11
+CLEANUP
+lock:   cookie [Pigs in space]: 12
+unlock: cookie [Pigs in space]: 13
+lock:   share  [Pigs in space]: 14
+unlock: share  [Pigs in space]: 15
+*** run 1
+CURLOPT_SHARE
+lock:   share  [Pigs in space]: 16
+unlock: share  [Pigs in space]: 17
+PERFORM
+lock:   dns    [Pigs in space]: 18
+unlock: dns    [Pigs in space]: 19
+lock:   dns    [Pigs in space]: 20
+unlock: dns    [Pigs in space]: 21
+lock:   cookie [Pigs in space]: 22
+unlock: cookie [Pigs in space]: 23
+lock:   cookie [Pigs in space]: 24
+unlock: cookie [Pigs in space]: 25
+lock:   cookie [Pigs in space]: 26
+unlock: cookie [Pigs in space]: 27
+lock:   cookie [Pigs in space]: 28
+unlock: cookie [Pigs in space]: 29
+run 1: set cookie 1, 2 and 3
+lock:   dns    [Pigs in space]: 30
+unlock: dns    [Pigs in space]: 31
+CLEANUP
+lock:   cookie [Pigs in space]: 32
+unlock: cookie [Pigs in space]: 33
+lock:   share  [Pigs in space]: 34
+unlock: share  [Pigs in space]: 35
+*** run 2
+CURLOPT_SHARE
+lock:   share  [Pigs in space]: 36
+unlock: share  [Pigs in space]: 37
+PERFORM
+lock:   dns    [Pigs in space]: 38
+unlock: dns    [Pigs in space]: 39
+lock:   cookie [Pigs in space]: 40
+unlock: cookie [Pigs in space]: 41
+lock:   cookie [Pigs in space]: 42
+unlock: cookie [Pigs in space]: 43
+lock:   cookie [Pigs in space]: 44
+unlock: cookie [Pigs in space]: 45
+run 2: set cookie 4 and 5
+lock:   dns    [Pigs in space]: 46
+unlock: dns    [Pigs in space]: 47
+CLEANUP
+lock:   cookie [Pigs in space]: 48
+unlock: cookie [Pigs in space]: 49
+lock:   share  [Pigs in space]: 50
+unlock: share  [Pigs in space]: 51
+*** run 3
+CURLOPT_SHARE
+lock:   share  [Pigs in space]: 52
+unlock: share  [Pigs in space]: 53
+CURLOPT_COOKIEJAR
+CURLOPT_COOKIELIST FLUSH
+lock:   cookie [Pigs in space]: 54
+unlock: cookie [Pigs in space]: 55
+PERFORM
+lock:   dns    [Pigs in space]: 56
+unlock: dns    [Pigs in space]: 57
+lock:   cookie [Pigs in space]: 58
+unlock: cookie [Pigs in space]: 59
+lock:   cookie [Pigs in space]: 60
+unlock: cookie [Pigs in space]: 61
+lock:   cookie [Pigs in space]: 62
+unlock: cookie [Pigs in space]: 63
+lock:   cookie [Pigs in space]: 64
+unlock: cookie [Pigs in space]: 65
+lock:   cookie [Pigs in space]: 66
+unlock: cookie [Pigs in space]: 67
+run 3: overwrite cookie 1 and 4, set cookie 6 with and without tailmatch
+lock:   dns    [Pigs in space]: 68
+unlock: dns    [Pigs in space]: 69
+CLEANUP
+lock:   cookie [Pigs in space]: 70
+unlock: cookie [Pigs in space]: 71
+lock:   share  [Pigs in space]: 72
+unlock: share  [Pigs in space]: 73
+CURLOPT_SHARE
+lock:   share  [Pigs in space]: 74
+unlock: share  [Pigs in space]: 75
+CURLOPT_COOKIELIST ALL
+lock:   cookie [Pigs in space]: 76
+unlock: cookie [Pigs in space]: 77
+CURLOPT_COOKIEJAR
+CURLOPT_COOKIELIST RELOAD
+lock:   cookie [Pigs in space]: 78
+unlock: cookie [Pigs in space]: 79
+loaded cookies:
+-----------------
+  .host.foo.com	TRUE	/	FALSE	1896263787	injected	yes
+  .foo.com	TRUE	/	FALSE	1993463787	test1	overwritten1
+  .host.foo.com	TRUE	/	FALSE	1896263787	test2	two
+  .foo.com	TRUE	/	FALSE	1896263787	test3	three
+  .host.foo.com	TRUE	/	FALSE	2061978987	test4	overwritten4
+  .host.foo.com	TRUE	/	FALSE	1896263787	test5	five
+  .www.host.foo.com	TRUE	/	FALSE	1993463787	test6	six
+  www.host.foo.com	FALSE	/	FALSE	1993463787	test6	six_more
+-----------------
+try SHARE_CLEANUP...
+lock:   share  [Pigs in space]: 80
+unlock: share  [Pigs in space]: 81
+SHARE_CLEANUP failed, correct
+CLEANUP
+lock:   cookie [Pigs in space]: 82
+unlock: cookie [Pigs in space]: 83
+lock:   share  [Pigs in space]: 84
+unlock: share  [Pigs in space]: 85
+SHARE_CLEANUP
+lock:   share  [Pigs in space]: 86
+unlock: share  [Pigs in space]: 87
+GLOBAL_CLEANUP
+</stdout>
+<stderr>
+http://%HOSTIP:%HTTPPORT/506 
+</stderr>
+<file name="log/jar506" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+.host.foo.com	TRUE	/	FALSE	1896263787	injected	yes
+.foo.com	TRUE	/	FALSE	1993463787	test1	overwritten1
+.host.foo.com	TRUE	/	FALSE	1896263787	test2	two
+.foo.com	TRUE	/	FALSE	1896263787	test3	three
+.host.foo.com	TRUE	/	FALSE	2061978987	test4	overwritten4
+.host.foo.com	TRUE	/	FALSE	1896263787	test5	five
+.www.host.foo.com	TRUE	/	FALSE	1993463787	test6	six
+www.host.foo.com	FALSE	/	FALSE	1993463787	test6	six_more
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test507 b/ap/lib/libcurl/curl-7.54.1/tests/data/test507
new file mode 100644
index 0000000..9549bd9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test507
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+multi
+FAILURE
+non-existing host
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+multi interface get with non-existing host name
+</name>
+<tool>
+lib507
+</tool>
+<command>
+http://non-existing-host.haxx.se/
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+6
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test508 b/ap/lib/libcurl/curl-7.54.1/tests/data/test508
new file mode 100644
index 0000000..2b8a2d5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test508
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+POST
+POST callback
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Connection: close

+Content-Type: text/html

+

+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib508
+</tool>
+
+ <name>
+send HTTP POST using read callback
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/508
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+# remove CR that CURLOPT_TRANSFERTEXT added, when CharConv enabled:
+s/^(this is what we post to the silly web server)\r\n/$1\n/ if($has_charconv)
+</strippart>
+<protocol>
+POST /508 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 45

+Content-Type: application/x-www-form-urlencoded

+

+this is what we post to the silly web server
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test509 b/ap/lib/libcurl/curl-7.54.1/tests/data/test509
new file mode 100644
index 0000000..5de1599
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test509
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+memory callbacks
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib509
+</tool>
+
+<name>
+initialization with memory callbacks and actual usage
+</name>
+<command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+seen custom_calloc()
+seen custom_malloc()
+seen custom_realloc()
+seen custom_free()
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test51 b/ap/lib/libcurl/curl-7.54.1/tests/data/test51
new file mode 100644
index 0000000..b58c357
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test51
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose
+Location: ../../../../../../../510002
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose
+Location: ../../../../../../../510002
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP follow redirect with excessive ../
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/51 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/51 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /510002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test510 b/ap/lib/libcurl/curl-7.54.1/tests/data/test510
new file mode 100644
index 0000000..a7acbe8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test510
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Connection: close

+Content-Type: text/html

+

+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib510
+</tool>
+
+ <name>
+send HTTP POST using read callback, using chunked transfer-encoding
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/510
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+POST /510 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Content-Type: application/x-www-form-urlencoded

+Expect: 100-continue

+

+3

+one

+3

+two

+5

+three

+1d

+and a final longer crap: four

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test511 b/ap/lib/libcurl/curl-7.54.1/tests/data/test511
new file mode 100644
index 0000000..72b7993
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test511
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY MDTM 550 bluah you f00l!
+REPLY SIZE 550 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib511
+</tool>
+
+ <name>
+FTP with FILETIME and NOBODY but missing file
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/511
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# CURLE_FTP_COULDNT_RETR_FILE
+<errorcode>
+19
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+MDTM 511

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test512 b/ap/lib/libcurl/curl-7.54.1/tests/data/test512
new file mode 100644
index 0000000..d259f40
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test512
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: yes

+Connection: close

+

+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib512
+</tool>
+
+ <name>
+simple curl_easy_duplicate() test
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/512
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /512 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test513 b/ap/lib/libcurl/curl-7.54.1/tests/data/test513
new file mode 100644
index 0000000..00e0f77
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test513
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib513
+</tool>
+
+ <name>
+send HTTP POST using read callback that returns CURL_READFUNC_ABORT
+ </name>
+# the 1s post-command delay helps to prevent a spurious failure on s390
+ <command delay="1">
+http://%HOSTIP:%HTTPPORT/513
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+POST /513 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 1

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+# 42 - aborted by callback
+<errorcode>
+42
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test514 b/ap/lib/libcurl/curl-7.54.1/tests/data/test514
new file mode 100644
index 0000000..ca37a5d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test514
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP HEAD
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib514
+</tool>
+ <name>
+First set options to POST and then to make HEAD
+ </name>
+# the 1s post-command delay helps to prevent a spurious failure on s390
+ <command delay="1">
+http://%HOSTIP:%HTTPPORT/514
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+HEAD /514 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test515 b/ap/lib/libcurl/curl-7.54.1/tests/data/test515
new file mode 100644
index 0000000..526f1e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test515
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 3

+

+OK
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib515
+</tool>
+
+ <name>
+make a POSTFIELDS set to NULL with POSTFIELDSIZE set to zero
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/515
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /515 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test516 b/ap/lib/libcurl/curl-7.54.1/tests/data/test516
new file mode 100644
index 0000000..9bc175b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test516
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 3

+

+OK
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib516
+</tool>
+
+ <name>
+make a HTTPPOST set to NULL
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/516
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+POST /516 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test517 b/ap/lib/libcurl/curl-7.54.1/tests/data/test517
new file mode 100644
index 0000000..513634f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test517
@@ -0,0 +1,135 @@
+<testcase>
+<info>
+<keywords>
+getdate
+unittest
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib517
+</tool>
+
+ <name>
+curl_getdate() testing
+ </name>
+ <command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+0: Sun, 06 Nov 1994 08:49:37 GMT => 784111777
+1: Sunday, 06-Nov-94 08:49:37 GMT => 784111777
+2: Sun Nov  6 08:49:37 1994 => 784111777
+3: 06 Nov 1994 08:49:37 GMT => 784111777
+4: 06-Nov-94 08:49:37 GMT => 784111777
+5: Nov  6 08:49:37 1994 => 784111777
+6: 06 Nov 1994 08:49:37 => 784111777
+7: 06-Nov-94 08:49:37 => 784111777
+8: 1994 Nov 6 08:49:37 => 784111777
+9: GMT 08:49:37 06-Nov-94 Sunday => 784111777
+10: 94 6 Nov 08:49:37 => 784111777
+11: 1994 Nov 6 => 784080000
+12: 06-Nov-94 => 784080000
+13: Sun Nov 6 94 => 784080000
+14: 1994.Nov.6 => 784080000
+15: Sun/Nov/6/94/GMT => 784080000
+16: Sun, 06 Nov 1994 08:49:37 CET => 784108177
+17: 06 Nov 1994 08:49:37 EST => 784129777
+18: Sun, 12 Sep 2004 15:05:58 -0700 => 1095026758
+19: Sat, 11 Sep 2004 21:32:11 +0200 => 1094931131
+20: 20040912 15:05:58 -0700 => 1095026758
+21: 20040911 +0200 => 1094853600
+22: Thu, 01-Jan-1970 00:59:59 GMT => 3599
+23: Thu, 01-Jan-1970 01:00:00 GMT => 3600
+24: Sat, 15-Apr-17 21:01:22 GMT => 1492290082
+25: Thu, 19-Apr-2007 16:00:00 GMT => 1176998400
+26: Wed, 25 Apr 2007 21:02:13 GMT => 1177534933
+27: Thu, 19/Apr\2007 16:00:00 GMT => 1176998400
+28: Fri, 1 Jan 2010 01:01:50 GMT => 1262307710
+29: Wednesday, 1-Jan-2003 00:00:00 GMT => 1041379200
+30: , 1-Jan-2003 00:00:00 GMT => 1041379200
+31:  1-Jan-2003 00:00:00 GMT => 1041379200
+32: 1-Jan-2003 00:00:00 GMT => 1041379200
+33: Wed,18-Apr-07 22:50:12 GMT => 1176936612
+34: WillyWonka  , 18-Apr-07 22:50:12 GMT => -1
+35: WillyWonka  , 18-Apr-07 22:50:12 => -1
+36: WillyWonka  ,  18-apr-07   22:50:12 => -1
+37: Mon, 18-Apr-1977 22:50:13 GMT => 230251813
+38: Mon, 18-Apr-77 22:50:13 GMT => 230251813
+39: "Sat, 15-Apr-17\"21:01:22\"GMT" => 1492290082
+40: Partyday, 18- April-07 22:50:12 => -1
+41: Partyday, 18 - Apri-07 22:50:12 => -1
+42: Wednes, 1-Januar-2003 00:00:00 GMT => -1
+43: Sat, 15-Apr-17 21:01:22 => 1492290082
+44: Sat, 15-Apr-17 21:01:22 GMT-2 => 1492290082
+45: Sat, 15-Apr-17 21:01:22 GMT BLAH => 1492290082
+46: Sat, 15-Apr-17 21:01:22 GMT-0400 => 1492290082
+47: Sat, 15-Apr-17 21:01:22 GMT-0400 (EDT) => 1492290082
+48: Sat, 15-Apr-17 21:01:22 DST => -1
+49: Sat, 15-Apr-17 21:01:22 -0400 => 1492304482
+50: Sat, 15-Apr-17 21:01:22 (hello there) => -1
+51: Sat, 15-Apr-17 21:01:22 11:22:33 => -1
+52: Sat, 15-Apr-17 ::00 21:01:22 => -1
+53: Sat, 15-Apr-17 boink:z 21:01:22 => -1
+54: Sat, 15-Apr-17 91:22:33 21:01:22 => -1
+55: Thu Apr 18 22:50:12 2007 GMT => 1176936612
+56: 22:50:12 Thu Apr 18 2007 GMT => 1176936612
+57: Thu 22:50:12 Apr 18 2007 GMT => 1176936612
+58: Thu Apr 22:50:12 18 2007 GMT => 1176936612
+59: Thu Apr 18 22:50:12 2007 GMT => 1176936612
+60: Thu Apr 18 2007 22:50:12 GMT => 1176936612
+61: Thu Apr 18 2007 GMT 22:50:12 => 1176936612
+62: Sat, 15-Apr-17 21:01:22 GMT => 1492290082
+63: 15-Sat, Apr-17 21:01:22 GMT => 1492290082
+64: 15-Sat, Apr 21:01:22 GMT 17 => 1492290082
+65: 15-Sat, Apr 21:01:22 GMT 2017 => 1492290082
+66: 15 Apr 21:01:22 2017 => 1492290082
+67: 15 17 Apr 21:01:22 => 1492290082
+68: Apr 15 17 21:01:22 => 1492290082
+69: Apr 15 21:01:22 17 => 1492290082
+70: 2017 April 15 21:01:22 => -1
+71: 15 April 2017 21:01:22 => -1
+72: 98 April 17 21:01:22 => -1
+73: Thu, 012-Aug-2008 20:49:07 GMT => 1218574147
+74: Thu, 999999999999-Aug-2007 20:49:07 GMT => -1
+75: Thu, 12-Aug-2007 20:61:99999999999 GMT => -1
+76: IAintNoDateFool => -1
+77: Thu Apr 18 22:50 2007 GMT => 1176936600
+78: 20110623 12:34:56 => 1308832496
+79: 20110632 12:34:56 => -1
+80: 20110623 56:34:56 => -1
+81: 20111323 12:34:56 => -1
+82: 20110623 12:34:79 => -1
+83: Wed, 31 Dec 2008 23:59:60 GMT => 1230768000
+84: 20110623 12:3 => 1308830580
+85: 20110623 1:3 => 1308790980
+86: 20110623 1:30 => 1308792600
+87: 20110623 12:12:3 => 1308831123
+88: 20110623 01:12:3 => 1308791523
+89: 20110623 01:99:30 => -1
+</stdout>
+
+# This test case previously tested an overflow case ("2094 Nov 6 =>
+# 2147483647") for 32bit time_t, but since some systems have 64bit time_t and
+# handles this (returning 3939840000), and some 64bit-time_t systems don't
+# handle this and return -1 for this, it turned very tricky to write a fine
+# test case and thus it is now removed until we have a way to write test cases
+# for this kind of things.
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test518 b/ap/lib/libcurl/curl-7.54.1/tests/data/test518
new file mode 100644
index 0000000..0c88147
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test518
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+getrlimit
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib518
+</tool>
+# precheck is a command line to run before the test, to see if we can execute
+# the test or not
+<precheck>
+./libtest/lib518 check
+</precheck>
+
+ <name>
+HTTP GET with more than FD_SETSIZE descriptors open
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/518
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /518 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test519 b/ap/lib/libcurl/curl-7.54.1/tests/data/test519
new file mode 100644
index 0000000..9760560
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test519
@@ -0,0 +1,78 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsbounce

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

+Server: test-server/fake

+Content-Length: 8

+

+content
+</data>
+<data1>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 9

+

+content2
+</data1>
+<datacheck>
+HTTP/1.1 200 OK swsbounce

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

+Server: test-server/fake

+Content-Length: 8

+

+content
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 9

+

+content2
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib519
+</tool>
+
+ <name>
+GET same URL twice with different users
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/519
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /519 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic bW9uc3Rlcjp1bmRlcmJlZA==

+Accept: */*

+

+GET /519 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic YW5vdGhlcm1vbnN0ZXI6aW53YXJkcm9iZQ==

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test52 b/ap/lib/libcurl/curl-7.54.1/tests/data/test52
new file mode 100644
index 0000000..14fa42b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test52
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose
+Location: ./520002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose
+Location: ./520002
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP follow redirect with ./-prefix
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/are/all/twits/52 -L
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/are/all/twits/52 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /we/are/all/twits/520002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test520 b/ap/lib/libcurl/curl-7.54.1/tests/data/test520
new file mode 100644
index 0000000..755caeb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test520
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+contents of file
+</data>
+<servercmd>
+REPLY MDTM 213 20030405060708
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib520
+</tool>
+
+ <name>
+FTP RETR with FILETIME
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/520
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+MDTM 520

+EPSV

+TYPE I

+SIZE 520

+RETR 520

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test521 b/ap/lib/libcurl/curl-7.54.1/tests/data/test521
new file mode 100644
index 0000000..90f51b3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test521
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CURLOPT_PORT
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib521
+</tool>
+ <name>
+FTP dir list PASV with CURLOPT_PORT
+ </name>
+ <command>
+ftp://%HOSTIP/521/ %FTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER xxx

+PASS yyy

+PWD

+CWD 521

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test522 b/ap/lib/libcurl/curl-7.54.1/tests/data/test522
new file mode 100644
index 0000000..89a0dbf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test522
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+CURLOPT_PORT
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib521
+</tool>
+ <name>
+HTTP GET with CURLOPT_PORT
+ </name>
+ <command>
+http://%HOSTIP/522 %HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /522 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic eHh4Onl5eQ==

+Accept: */*

+

+</protocol>
+<stdout>
+hello
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test523 b/ap/lib/libcurl/curl-7.54.1/tests/data/test523
new file mode 100644
index 0000000..9abe0ed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test523
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+CURLOPT_PORT
+CURLOPT_PROXY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib523
+</tool>
+ <name>
+HTTP GET with proxy and CURLOPT_PORT
+ </name>
+# first URL then proxy
+ <command>
+http://www.example.com:999/523 http://%HOSTIP:%HTTPPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET HTTP://www.example.com:19999/523 HTTP/1.1

+Host: www.example.com:19999

+Authorization: Basic eHh4Onl5eQ==

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<stdout>
+hello
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test524 b/ap/lib/libcurl/curl-7.54.1/tests/data/test524
new file mode 100644
index 0000000..c609466
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test524
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+FTP
+UPLOAD
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib524
+</tool>
+ <name>
+FTP upload with target URL ending with slash
+ </name>
+# first URL then proxy
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/to/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+</protocol>
+
+# 3 is CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test525 b/ap/lib/libcurl/curl-7.54.1/tests/data/test525
new file mode 100644
index 0000000..7bd494e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test525
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib525
+</tool>
+ <name>
+FTP PORT upload using multi interface
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/525 log/upload525
+</command>
+<file name="log/upload525">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+PORT 127,0,0,1,5,109

+TYPE I

+STOR 525

+QUIT

+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test526 b/ap/lib/libcurl/curl-7.54.1/tests/data/test526
new file mode 100644
index 0000000..70e6dcd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test526
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+file contents should appear once for each file
+</data>
+<datacheck>
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib526
+</tool>
+ <name>
+FTP RETR same file using different handles but same connection
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/526
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 526

+RETR 526

+EPSV

+SIZE 526

+RETR 526

+EPSV

+SIZE 526

+RETR 526

+EPSV

+SIZE 526

+RETR 526

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test527 b/ap/lib/libcurl/curl-7.54.1/tests/data/test527
new file mode 100644
index 0000000..98892a9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test527
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+file contents should appear once for each file
+</data>
+<datacheck>
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib527
+</tool>
+ <name>
+FTP RETR same file using different handles but same connection
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/527
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 527

+RETR 527

+EPSV

+SIZE 527

+RETR 527

+EPSV

+SIZE 527

+RETR 527

+EPSV

+SIZE 527

+RETR 527

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test528 b/ap/lib/libcurl/curl-7.54.1/tests/data/test528
new file mode 100644
index 0000000..1d2e415
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test528
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data>
+<datacheck>
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib526
+</tool>
+ <name>
+HTTP GET same file using different handles but same connection
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/528
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /path/528 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/528 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/528 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/528 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test529 b/ap/lib/libcurl/curl-7.54.1/tests/data/test529
new file mode 100644
index 0000000..1614720
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test529
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib529
+</tool>
+ <name>
+FTP PORT upload using multi interface (weird cleanup function sequence)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/529 log/upload529
+</command>
+<file name="log/upload529">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+PORT 127,0,0,1,5,109

+TYPE I

+STOR 529

+QUIT

+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test53 b/ap/lib/libcurl/curl-7.54.1/tests/data/test53
new file mode 100644
index 0000000..679a4fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test53
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

+Server: Microsoft-IIS/4.0

+Date: Tue, 25 Sep 2001 19:37:44 GMT

+Content-Type: text/html

+Connection: close

+Content-Length: 21

+

+This server says moo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, junk session cookies
+ </name>
+ <command>
+%HOSTIP:%HTTPPORT/want/53 -b log/injar53 -j
+</command>
+<file name="log/injar53">
+%HOSTIP	FALSE	/	FALSE	2139150993	mooo	indeed
+%HOSTIP	FALSE	/	FALSE	0		moo1	indeed
+%HOSTIP	FALSE	/	FALSE	1		moo2	indeed
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/53 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: mooo=indeed

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test530 b/ap/lib/libcurl/curl-7.54.1/tests/data/test530
new file mode 100644
index 0000000..40182e2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test530
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+pipelining
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data1>
+<data2>
+HTTP/1.1 200 OK

+</data2>
+<data3>
+Date: Thu, 09 Nov 2010 14:49:00 GMT

+</data3>
+<data4>
+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 47

+

+file contents should appear once for each file
+</data4>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib530
+</tool>
+ <name>
+HTTP GET using pipelining
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/530
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /path/5300001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/5300002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/5300003 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/5300004 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test531 b/ap/lib/libcurl/curl-7.54.1/tests/data/test531
new file mode 100644
index 0000000..8a7cee5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test531
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+REPLY STOR 425 Permission Denied. File Exists.
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib525
+</tool>
+ <name>
+FTP PORT upload using multi interface and get 425 response
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/531 log/upload531
+</command>
+<file name="log/upload531">
+Moooooooooooo
+don't upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip all valid kinds of PORT and EPRT that curl can send
+<strip>
+^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}
+^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|
+</strip>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+PORT 127,0,0,1,5,109

+TYPE I

+STOR 531

+QUIT

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test532 b/ap/lib/libcurl/curl-7.54.1/tests/data/test532
new file mode 100644
index 0000000..dc45db1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test532
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+file contents should appear once for each file
+</data>
+<datacheck>
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+file contents should appear once for each file
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib532
+</tool>
+ <name>
+FTP RETR same file using reset handles between each transfer
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/532
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 532

+RETR 532

+EPSV

+SIZE 532

+RETR 532

+EPSV

+SIZE 532

+RETR 532

+EPSV

+SIZE 532

+RETR 532

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test533 b/ap/lib/libcurl/curl-7.54.1/tests/data/test533
new file mode 100644
index 0000000..f4446cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test533
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+
+<servercmd>
+REPLY RETR 550 the file doesn't exist
+REPLY SIZE 550 Can't check for file existence
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib533
+</tool>
+ <name>
+FTP RETR a non-existing file twice using the multi interface
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/533 ftp://%HOSTIP:%FTPPORT/path/533
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 533

+RETR 533

+EPSV

+SIZE 533

+RETR 533

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test534 b/ap/lib/libcurl/curl-7.54.1/tests/data/test534
new file mode 100644
index 0000000..6045dba
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test534
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+non-existing host
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+
+<servercmd>
+REPLY RETR 550 the file doesn't exist
+REPLY SIZE 550 Can't check for file existence
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib533
+</tool>
+ <name>
+FTP RETR twice using multi: non-existing host and non-existing file
+ </name>
+ <command>
+ftp://non-existing-host.haxx.se/path/534 ftp://%HOSTIP:%FTPPORT/path/534
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 534

+RETR 534

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test535 b/ap/lib/libcurl/curl-7.54.1/tests/data/test535
new file mode 100644
index 0000000..6837d2a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test535
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 404 Badness

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

+ETag: "21025-dc7-39462498"

+Content-Length: 6

+Content-Type: text/html

+Funny-head: yesyes

+

+hejsan
+</data>
+<data1>
+HTTP/1.1 200 Fine

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

+Content-Length: 13

+Connection: close

+Content-Type: text/html

+

+fine content
+</data1>
+
+<datacheck>
+fine content
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib533
+</tool>
+
+ <name>
+HTTP GET multi two files with FAILONERROR
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/535 http://%HOSTIP:%HTTPPORT/5350001
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /535 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /5350001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test536 b/ap/lib/libcurl/curl-7.54.1/tests/data/test536
new file mode 100644
index 0000000..51ac971
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test536
@@ -0,0 +1,74 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+pipelining
+multi
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 404 Badness

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

+ETag: "21025-dc7-39462498"

+Content-Length: 6

+Content-Type: text/html

+Funny-head: yesyes

+

+hejsan
+</data>
+<data1>
+HTTP/1.1 200 Fine

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

+Content-Length: 13

+Connection: close

+Content-Type: text/html

+

+fine content
+</data1>
+
+<datacheck>
+fine content
+Finished!
+</datacheck>
+
+<servercmd>
+pipe: 1
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib536
+</tool>
+
+ <name>
+HTTP GET multi two files with FAILONERROR and pipelining
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/536 http://%HOSTIP:%HTTPPORT/5360001
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /536 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /5360001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test537 b/ap/lib/libcurl/curl-7.54.1/tests/data/test537
new file mode 100644
index 0000000..14e285f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test537
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+getrlimit
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib537
+</tool>
+# precheck is a command line to run before the test, to see if we can execute
+# the test or not
+<precheck>
+./libtest/lib537 check
+</precheck>
+
+ <name>
+HTTP GET with a HUGE number of file descriptors open
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/537
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /537 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test538 b/ap/lib/libcurl/curl-7.54.1/tests/data/test538
new file mode 100644
index 0000000..d2fecd3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test538
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+FAILURE
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+REPLY PASS 314 bluah you f00l!
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# NOTE that we use the 504 tool for this case
+<tool>
+lib504
+</tool>
+ <name>
+FTP multi-interface download, failed login: PASS not valid
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/538
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+# TEST_ERR_SUCCESS is errorcode 120
+<verify>
+<errorcode>
+120
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test539 b/ap/lib/libcurl/curl-7.54.1/tests/data/test539
new file mode 100644
index 0000000..e9aadd1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test539
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+file contents
+</data>
+
+<datacheck>
+file contents
+</datacheck>
+<datacheck1 mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck1>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib539
+</tool>
+
+ <name>
+Two FTP fetches using different CURLOPT_FTP_FILEMETHOD
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/to/the/file/539
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path/to/the/file

+EPSV

+TYPE I

+SIZE 539

+RETR 539

+SYST

+CWD /

+EPSV

+TYPE A

+LIST path/to/the/file/539./

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test54 b/ap/lib/libcurl/curl-7.54.1/tests/data/test54
new file mode 100644
index 0000000..66dbe9d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test54
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 This is a weirdo text message swsclose
+Connection: close
+Location:  
+
+This server reply is for testing
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with blank Location:
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/54 -L
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/54 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test540 b/ap/lib/libcurl/curl-7.54.1/tests/data/test540
new file mode 100644
index 0000000..8391cbe
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test540
@@ -0,0 +1,110 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Digest auth
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+connection-monitor
+</servercmd>
+
+# this is returned first since we get no proxy-auth
+<data>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 33

+

+And you should ignore this data.
+</data>
+
+# then this is returned when we get proxy-auth
+<data1000>
+HTTP/1.1 200 OK

+Content-Length: 21

+Server: no

+

+Nice proxy auth sir!
+</data1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 33

+

+HTTP/1.1 200 OK

+Content-Length: 21

+Server: no

+

+Nice proxy auth sir!
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"

+Content-Length: 33

+

+HTTP/1.1 200 OK

+Content-Length: 21

+Server: no

+

+Nice proxy auth sir!
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib540
+</tool>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP proxy auth Digest multi API re-using connection
+ </name>
+ <command>
+http://test.remote.example.com/path/540 http://%HOSTIP:%HTTPPORT silly:person custom.set.host.name
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://test.remote.example.com/path/540 HTTP/1.1

+Host: custom.set.host.name

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.example.com/path/540 HTTP/1.1

+Host: custom.set.host.name

+Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/540", response="ca507dcf189196b6a5374d3233042261"

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.example.com/path/540 HTTP/1.1

+Host: custom.set.host.name

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.example.com/path/540 HTTP/1.1

+Host: custom.set.host.name

+Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/540", response="ca507dcf189196b6a5374d3233042261"

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+[DISCONNECT]
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test541 b/ap/lib/libcurl/curl-7.54.1/tests/data/test541
new file mode 100644
index 0000000..622daa0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test541
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib541
+</tool>
+
+ <name>
+FTP upload and upload same file again without rewind
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/541 log/upload541
+</command>
+<file name="log/upload541">
+Contents
+of
+a file
+to verify
+ftp
+upload
+
+
+works?
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+</upload>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+STOR 541

+EPSV

+STOR 541

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test542 b/ap/lib/libcurl/curl-7.54.1/tests/data/test542
new file mode 100644
index 0000000..5afe124
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test542
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+<datacheck>
+Content-Length: 51

+Accept-ranges: bytes

+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib542
+</tool>
+ <name>
+FTP a file with NOBODY yes and HEADER no
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/542
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+#
+# There's no MTDM in the protocol here since this code doesn't ask for the
+# time/date of the file
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+TYPE I

+SIZE 542

+REST 0

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test543 b/ap/lib/libcurl/curl-7.54.1/tests/data/test543
new file mode 100644
index 0000000..4556330
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test543
@@ -0,0 +1,35 @@
+<testcase>
+<info>
+<keywords>
+curl_easy_escape
+</keywords>
+</info>
+# Server-side
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<tool>
+lib543
+</tool>
+ <name>
+curl_easy_escape
+ </name>
+ <command>
+-
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+#
+# There's no MTDM in the protocol here since this code doesn't ask for the
+# time/date of the file
+<verify>
+<stdout>
+%9C%26K%3DI%04%A1%01%E0%D8%7C%20%B7%EFS%29%FA%1DW%E1
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test544 b/ap/lib/libcurl/curl-7.54.1/tests/data/test544
new file mode 100644
index 0000000..78cb5a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test544
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Content-Length: 3

+

+OK
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib544
+</tool>
+
+ <name>
+HTTP POST text data using CURLOPT_COPYPOSTFIELDS
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/544
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /544 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 4

+Content-Type: application/x-www-form-urlencoded

+

+This
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test545 b/ap/lib/libcurl/curl-7.54.1/tests/data/test545
new file mode 100644
index 0000000..f2a5ddd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test545
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test546 b/ap/lib/libcurl/curl-7.54.1/tests/data/test546
new file mode 100644
index 0000000..12e604a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test546
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+</keywords>
+</info>
+# Server-side
+<reply>
+<data nocheck="yes">
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+
+<servercmd>
+REPLY RETR 550 the file doesn't exist
+COUNT RETR 1
+REPLY SIZE 550 Can't check for file existence
+COUNT SIZE 1
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib533
+</tool>
+ <name>
+FTP RETR a non-existing file then a found one using the multi interface
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/546 ftp://%HOSTIP:%FTPPORT/path/546
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 546

+RETR 546

+EPSV

+SIZE 546

+RETR 546

+QUIT

+</protocol>
+<stdout>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test547 b/ap/lib/libcurl/curl-7.54.1/tests/data/test547
new file mode 100644
index 0000000..841c3ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test547
@@ -0,0 +1,135 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+POST callback
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+This is not the real page
+</data>
+
+# this is returned first since we get no proxy-auth
+<data1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+Hey you, authenticate or go away!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool to use
+<tool>
+lib547
+</tool>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy auth NTLM with POST data from read callback
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com/path/547 http://%HOSTIP:%HTTPPORT testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+POST http://test.remote.example.com/path/547 HTTP/1.1

+Host: test.remote.example.com

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+POST http://test.remote.example.com/path/547 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST http://test.remote.example.com/path/547 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test548 b/ap/lib/libcurl/curl-7.54.1/tests/data/test548
new file mode 100644
index 0000000..9d1f258
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test548
@@ -0,0 +1,135 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+This is not the real page
+</data>
+
+# this is returned first since we get no proxy-auth
+<data1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+Hey you, authenticate or go away!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool to use
+<tool>
+lib548
+</tool>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy auth NTLM with POST data from CURLOPT_POSTFIELDS
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com/path/548 http://%HOSTIP:%HTTPPORT testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+POST http://test.remote.example.com/path/548 HTTP/1.1

+Host: test.remote.example.com

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+POST http://test.remote.example.com/path/548 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST http://test.remote.example.com/path/548 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test549 b/ap/lib/libcurl/curl-7.54.1/tests/data/test549
new file mode 100644
index 0000000..a248edb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test549
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+FTP
+CURLOPT_PROXY_TRANSFER_MODE
+CURLOPT_PROXY
+HTTP proxy
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+<tool>
+lib549
+</tool>
+ <name>
+FTP RETR over proxy with CURLOPT_PROXY_TRANSFER_MODE
+ </name>
+# first URL then proxy
+ <command>
+ftp://www.example.com/moo/549 http://%HOSTIP:%HTTPPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://www.example.com/moo/549;type=i HTTP/1.1

+Host: www.example.com:21

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<stdout>
+hello
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test55 b/ap/lib/libcurl/curl-7.54.1/tests/data/test55
new file mode 100644
index 0000000..6623856
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test55
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+followlocation
+</keywords>
+</info>
+<reply>
+<data>
+HTTP/1.1 302 OK swsclose
+Location: 550002
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+body
+</data2>
+<datacheck>
+HTTP/1.1 302 OK swsclose
+Location: 550002
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:50:00 GMT
+Connection: close
+
+body
+</datacheck>
+</reply>
+
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP follow redirect with single slash in path
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/55 -L
+</command>
+</client>
+
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /55 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /550002 HTTP/1.1

+User-Agent: curl/7.10 (i686-pc-linux-gnu) libcurl/7.10 OpenSSL/0.9.6c ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test550 b/ap/lib/libcurl/curl-7.54.1/tests/data/test550
new file mode 100644
index 0000000..a609aa2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test550
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP proxy
+CURLOPT_PROXY_TRANSFER_MODE
+CURLOPT_PROXY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+<tool>
+lib549
+</tool>
+ <name>
+FTP RETR over proxy with CURLOPT_PROXY_TRANSFER_MODE and ASCII transfer
+ </name>
+# first URL then proxy
+ <command>
+ftp://www.example.com/moo/550 http://%HOSTIP:%HTTPPORT ascii
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://www.example.com/moo/550;type=a HTTP/1.1

+Host: www.example.com:21

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<stdout>
+hello
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test551 b/ap/lib/libcurl/curl-7.54.1/tests/data/test551
new file mode 100644
index 0000000..ed6aee2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test551
@@ -0,0 +1,100 @@
+<testcase>
+<info>
+# this test is meant to be exactly like 547 but using Digest instead of NTLM
+<keywords>
+HTTP
+HTTP POST
+POST callback
+HTTP proxy
+HTTP proxy Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# as a bonus, ww use an excessive nonce length
+<data>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"

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

+Connection: close

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets the Digest
+# Authorization: line passed-in from the client
+<data1000>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1000>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"

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

+Connection: close

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool to use
+<tool>
+lib547
+</tool>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP proxy auth Digest with POST data from read callback
+ </name>
+ <command>
+http://test.remote.example.com/path/551 http://%HOSTIP:%HTTPPORT s1lly:pers0n
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+POST http://test.remote.example.com/path/551 HTTP/1.1

+Host: test.remote.example.com

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+POST http://test.remote.example.com/path/551 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", uri="/path/551", response="3325240726fbdaf1e61f3a0dd40b930c"

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test552 b/ap/lib/libcurl/curl-7.54.1/tests/data/test552
new file mode 100644
index 0000000..5d1478b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test552
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test553 b/ap/lib/libcurl/curl-7.54.1/tests/data/test553
new file mode 100644
index 0000000..bd937f0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test553
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+POST callback
+huge request header
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 200 Fine!

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Content-Length: 6

+

+hello
+</data>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool to use
+<tool>
+lib553
+</tool>
+<features>
+</features>
+ <name>
+HTTP post with huge request headers and post data from callback
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/553
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol nonewline="yes">
+POST /path/553 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Header0: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header1: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header2: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header3: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header4: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header5: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header6: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Header7: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

+Content-Length: 40960

+Content-Type: application/x-www-form-urlencoded

+

+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test554 b/ap/lib/libcurl/curl-7.54.1/tests/data/test554
new file mode 100644
index 0000000..3419e5e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test554
@@ -0,0 +1,132 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Connection: close

+Content-Type: text/html

+

+hello
+</data>
+<datacheck>
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Connection: close

+Content-Type: text/html

+

+hello
+HTTP/1.1 200 OK

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

+Server: test-server/fake swsclose

+Connection: close

+Content-Type: text/html

+

+hello
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib554
+</tool>
+
+ <name>
+HTTP multi-part formpost using read callback for the file part
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/554
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^--------------------------[a-z0-9]*/------------------------------/
+s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+</strippart>
+# Note that the stripping above removes 12 bytes from every occurrence of the
+# boundary string and since 5 of them are in the body contents, we see
+# (5*12) == 60 bytes less
+<protocol>
+POST /554 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 718

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------

+

+------------------------------

+Content-Disposition: form-data; name="sendfile"; filename="postit2.c"

+

+this is what we post to the silly web server
+

+------------------------------

+Content-Disposition: form-data; name="callbackdata"

+

+this is what we post to the silly web server
+

+------------------------------

+Content-Disposition: form-data; name="filename"

+

+postit2.c

+------------------------------

+Content-Disposition: form-data; name="submit"

+

+send

+------------------------------

+Content-Disposition: form-data; name="somename"; filename="somefile.txt"

+Content-Type: text/plain

+

+blah blah

+--------------------------------

+POST /554 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 732

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------

+

+------------------------------

+Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"

+

+this is what we post to the silly web server
+

+------------------------------

+Content-Disposition: form-data; name="callbackdata"

+

+this is what we post to the silly web server
+

+------------------------------

+Content-Disposition: form-data; name="filename"

+

+postit2.c

+------------------------------

+Content-Disposition: form-data; name="submit"

+

+send

+------------------------------

+Content-Disposition: form-data; name="somename"; filename="somefile.txt"

+Content-Type: text/plain

+

+blah blah

+--------------------------------

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test555 b/ap/lib/libcurl/curl-7.54.1/tests/data/test555
new file mode 100644
index 0000000..3aa2ef1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test555
@@ -0,0 +1,144 @@
+<testcase>
+# NOTE: this test case is a duplicate of 547 but the tool is built to use the
+# multi interface instead of easy, but that shouldn't be noticeable at all in
+# this file!
+<info>
+<keywords>
+HTTP
+HTTP POST
+POST callback
+HTTP proxy
+HTTP proxy NTLM auth
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+This is not the real page
+</data>
+
+# this is returned first since we get no proxy-auth
+<data1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+Hey you, authenticate or go away!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts"

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool to use
+<tool>
+lib555
+</tool>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy auth NTLM with POST data from read callback multi-if
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com/path/555 http://%HOSTIP:%HTTPPORT testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<strippart>
+# remove CR that CURLOPT_TRANSFERTEXT added, when CharConv enabled:
+s/^(this is the blurb we want to upload)\r\n/$1\n/ if($has_charconv)
+</strippart>
+<protocol>
+POST http://test.remote.example.com/path/555 HTTP/1.1

+Host: test.remote.example.com

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+POST http://test.remote.example.com/path/555 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 0

+Content-Type: application/x-www-form-urlencoded

+

+POST http://test.remote.example.com/path/555 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+Content-Length: 36

+Content-Type: application/x-www-form-urlencoded

+

+this is the blurb we want to upload
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test556 b/ap/lib/libcurl/curl-7.54.1/tests/data/test556
new file mode 100644
index 0000000..549b9a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test556
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

+Server: test-server/fake

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

+Content-Length: 6

+Connection: close

+

+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib556
+</tool>
+ <name>
+send and recv HTTP
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /556 HTTP/1.2

+Host: ninja

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test557 b/ap/lib/libcurl/curl-7.54.1/tests/data/test557
new file mode 100644
index 0000000..ad9350f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test557
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+printf
+unittest
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib557
+</tool>
+
+<name>
+curl_mprintf() testing
+</name>
+<command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+All curl_mprintf() unsigned short tests OK!
+All curl_mprintf() signed short tests OK!
+All curl_mprintf() unsigned int tests OK!
+All curl_mprintf() signed int tests OK!
+All curl_mprintf() unsigned long tests OK!
+All curl_mprintf() signed long tests OK!
+All curl_mprintf() curl_off_t tests OK!
+All curl_mprintf() strings tests OK!
+All float strings tests OK!
+</stdout>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test558 b/ap/lib/libcurl/curl-7.54.1/tests/data/test558
new file mode 100644
index 0000000..27457ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test558
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+TrackMemory
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+TrackMemory
+ipv6
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib558
+</tool>
+
+<name>
+libtest memory tracking operational
+</name>
+<command>
+nothing
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/memdump">
+FD hostip6.c: socket()
+FD connect.c: sclose()
+MEM lib558.c: malloc()
+MEM lib558.c: free()
+MEM escape.c: malloc()
+MEM strdup.c: realloc()
+MEM strdup.c: realloc()
+MEM escape.c: free()
+</file>
+<stripfile>
+s/ =.*//
+s/\(.*\)/()/
+s/:\d+/:/
+s:^(MEM |FD )(.*/)(.*):$1$3:
+</stripfile>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test559 b/ap/lib/libcurl/curl-7.54.1/tests/data/test559
new file mode 100644
index 0000000..f08a5f8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test559
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+CURLOPT_BUFFERSIZE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 2049
+Connection: close
+Content-Type: text/html
+Silly-header: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
+
+ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib559
+</tool>
+
+<name>
+use tiny CURLOPT_BUFFERSIZE
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/559
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test56 b/ap/lib/libcurl/curl-7.54.1/tests/data/test56
new file mode 100644
index 0000000..f221981
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test56
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+chunked Transfer-Encoding
+config file
+-A
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Funny-head: yesyes
+
+This is the proof it works
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with *HUGE* request and chunked transfer-encoding
+ </name>
+ <stdin>
+#
+data "we post this"
+#
+# enforce chunky post!
+header "Transfer-Encoding: chunked"
+#
+# Set the user-agent using a short-option:
+-A "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+#
+ </stdin>
+ <command>
+-K - %HOSTIP:%HTTPPORT/that.site.com/56
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+POST /that.site.com/56 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

+Accept: */*

+Transfer-Encoding: chunked

+Content-Type: application/x-www-form-urlencoded

+

+c

+we post this

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test560 b/ap/lib/libcurl/curl-7.54.1/tests/data/test560
new file mode 100644
index 0000000..8d00554
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test560
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+multi
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Length: 7

+

+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+https
+</server>
+<tool>
+lib560
+</tool>
+ <name>
+simple HTTPS GET with multi interface
+ </name>
+ <command>
+https://%HOSTIP:%HTTPSPORT/560
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /560 HTTP/1.1

+Host: %HOSTIP:%HTTPSPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test561 b/ap/lib/libcurl/curl-7.54.1/tests/data/test561
new file mode 100644
index 0000000..a6188ea
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test561
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP proxy
+CURLOPT_PROXY_TRANSFER_MODE
+CURLOPT_PROXY
+type=
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+<tool>
+lib549
+</tool>
+ <name>
+FTP RETR with CURLOPT_PROXY_TRANSFER_MODE, ASCII transfer and type=i
+ </name>
+# first URL then proxy
+ <command>
+"ftp://www.example.com/moo/561;type=i" http://%HOSTIP:%HTTPPORT ascii
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://www.example.com/moo/561;type=i HTTP/1.1

+Host: www.example.com:21

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+<stdout>
+hello
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test562 b/ap/lib/libcurl/curl-7.54.1/tests/data/test562
new file mode 100644
index 0000000..070cf7a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test562
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+silly data
+over FTP
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib562
+</tool>
+ <name>
+FTP a type=A URL and CURLOPT_PORT set
+ </name>
+
+# note that we need quotes around the URL below to make sure the shell doesn't
+# treat the semicolon as a separator!
+ <command>
+'ftp://%HOSTIP:23456/562;type=A' %FTPPORT
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+#
+# There's no MTDM in the protocol here since this code doesn't ask for the
+# time/date of the file
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+SIZE 562

+RETR 562

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test563 b/ap/lib/libcurl/curl-7.54.1/tests/data/test563
new file mode 100644
index 0000000..cecbedc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test563
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+FTP
+CURLOPT_PORT
+HTTP proxy
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose

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

+Server: test-server/fake

+Accept-Ranges: bytes

+Content-Length: 6

+

+hello
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+ftp
+</server>
+<tool>
+lib562
+</tool>
+ <name>
+FTP type=A URL and CURLOPT_PORT set and proxy
+ </name>
+
+<setenv>
+ftp_proxy=http://%HOSTIP:%HTTPPORT/
+</setenv>
+# note that we need quotes around the URL below to make sure the shell doesn't
+# treat the semicolon as a separator!
+ <command>
+"ftp://%HOSTIP:23456/563;type=A" %FTPPORT
+</command>
+
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET FTP://%HOSTIP:%FTPPORT/563;type=A HTTP/1.1

+Host: %HOSTIP:%FTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test564 b/ap/lib/libcurl/curl-7.54.1/tests/data/test564
new file mode 100644
index 0000000..72bf129
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test564
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+RETR
+multi
+SOCKS4
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</data>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+socks4
+</server>
+<tool>
+lib564
+</tool>
+ <name>
+FTP RETR a file over a SOCKS proxy using the multi interface
+ </name>
+<command>
+ftp://%HOSTIP:%FTPPORT/path/564 %HOSTIP:%SOCKSPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPSV

+TYPE I

+SIZE 564

+RETR 564

+QUIT

+</protocol>
+<stdout>
+data
+    to
+      see
+that FTP
+works
+  so does it?
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test565 b/ap/lib/libcurl/curl-7.54.1/tests/data/test565
new file mode 100644
index 0000000..ae8518c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test565
@@ -0,0 +1,109 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1>
+<datacheck>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib565
+</tool>
+
+ <name>
+send HTTP POST using read callback, chunked transfer-encoding and Digest
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/565
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+POST /565 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Content-Type: application/x-www-form-urlencoded

+

+0

+

+POST /565 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="foo", realm="testrealm", nonce="1053604144", uri="/565", response="877424f750af047634dbd94f9933217b"

+Accept: */*

+Transfer-Encoding: chunked

+Content-Type: application/x-www-form-urlencoded

+Expect: 100-continue

+

+3

+one

+3

+two

+5

+three

+1d

+and a final longer crap: four

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test566 b/ap/lib/libcurl/curl-7.54.1/tests/data/test566
new file mode 100644
index 0000000..9923d8f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test566
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 0

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib566
+</tool>
+
+ <name>
+HTTP GET with CURLINFO_CONTENT_LENGTH_DOWNLOAD and 0 bytes transfer
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/566 log/ip566
+</command>
+</client> 
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/ip566">
+CL: 0
+</file>
+<protocol>
+GET /566 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test567 b/ap/lib/libcurl/curl-7.54.1/tests/data/test567
new file mode 100644
index 0000000..de0f632
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test567
@@ -0,0 +1,50 @@
+<testcase>
+
+#Informational
+<info>
+<keywords>
+RTSP
+OPTIONS
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+CSeq: 1

+Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE

+Curl-Private: swsclose

+</data>
+</reply>
+
+# Client-Side
+<client>
+<server>
+rtsp
+</server>
+<tool>
+lib567
+</tool>
+
+<name>
+simple RTSP OPTIONS command
+</name>
+<command>
+rtsp://%HOSTIP:%RTSPPORT/567
+</command>
+</client>
+
+<verify>
+<protocol>
+OPTIONS rtsp://%HOSTIP:%RTSPPORT/567 RTSP/1.0

+CSeq: 1

+User-Agent: test567

+Test-Number: 567

+

+</protocol>
+</verify>
+
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test568 b/ap/lib/libcurl/curl-7.54.1/tests/data/test568
new file mode 100644
index 0000000..09fa81c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test568
@@ -0,0 +1,117 @@
+<testcase>
+
+#Informational
+<info>
+<keywords>
+RTSP
+ANNOUNCE
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Cseq: 1

+

+</data1>
+
+<data2>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Cseq: 2

+Content-Length: 70

+Content-Type: application/sdp

+

+v=0
+s=rtspd SDP
+i=A fake SDP reply
+u=http://www.curl.example.com/fakesdp.ps
+</data2>
+<data3>
+RTSP/1.0 200 Okie Dokie

+Server: RTSPD/libcurl-test

+Cseq: 3

+

+</data3>
+<data4>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+CSeq: 4

+Curl-private: swsclose

+Informational: Empty Options Response

+

+</data4>
+</reply>
+
+# Client-Side
+<client>
+<server>
+rtsp
+</server>
+<tool>
+lib568
+</tool>
+
+<name>
+RTSP Announce (PUT and POST style) test
+</name>
+<command>
+rtsp://%HOSTIP:%RTSPPORT/568
+</command>
+# file written before test command runs
+<file name="log/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
+</file>
+</client>
+
+<verify>
+<strip>
+^If-Modified-Since:.*
+</strip>
+<protocol>
+ANNOUNCE rtsp://%HOSTIP:%RTSPPORT/5680001 RTSP/1.0

+CSeq: 1

+Content-Length: 306

+Content-Type: application/sdp

+

+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
+DESCRIBE rtsp://%HOSTIP:%RTSPPORT/5680002 RTSP/1.0

+CSeq: 2

+Accept: application/sdp

+

+ANNOUNCE rtsp://%HOSTIP:%RTSPPORT/5680003 RTSP/1.0

+CSeq: 3

+Content-Type: posty goodness

+Content-Length: 35

+

+postyfield=postystuff&project=curl
+OPTIONS rtsp://%HOSTIP:%RTSPPORT/5680004 RTSP/1.0

+CSeq: 4

+

+</protocol>
+</verify>
+
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test569 b/ap/lib/libcurl/curl-7.54.1/tests/data/test569
new file mode 100644
index 0000000..ea6cd0b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test569
@@ -0,0 +1,111 @@
+<testcase>
+
+#Informational
+<info>
+<keywords>
+RTSP
+SESSION_ID
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+RTSP/1.0 200 OK
+Server: RTSPD/libcurl-test
+CSeq: 1
+Session: 00.+1-am-aSe55ion_id\$yes-i-am\$;timeout=60
+
+</data1>
+<data2>
+RTSP/1.0 200 OK
+Server: RTSPD/libcurl-test
+CSeq: 2
+
+</data2>
+<data3>
+RTSP/1.0 200 OK
+Session:        \$extraspaces ignore-this-part-------;foo=bar
+CSeq: 3
+Server: RTSPD/libcurl-test
+
+</data3>
+<data4>
+RTSP/1.0 200 OK
+CSeq: 4
+Server: RTSPD/libcurl-test
+
+</data4>
+<data5>
+RTSP/1.0 200 OK
+Session: A
+Server: RTSPD/libcurl-test
+CSeq: 5
+Informational: Single Character
+
+</data5>
+<data6>
+RTSP/1.0 200 OK
+Server: RTSPD/libcurl-test
+Curl-Private: swsclose
+CSeq: 6
+
+</data6>
+</reply>
+
+# Client-Side
+<client>
+<server>
+rtsp
+</server>
+<tool>
+lib569
+</tool>
+
+<name>
+RTSP Session ID parsing
+</name>
+<command>
+rtsp://%HOSTIP:%RTSPPORT/569 log/idfile569.txt
+</command>
+</client>
+
+<verify>
+<strip>
+^If-Modified-Since:.*
+</strip>
+<protocol>
+SETUP rtsp://%HOSTIP:%RTSPPORT/5690001 RTSP/1.0

+CSeq: 1

+Transport: Fake/NotReal/JustATest;foo=baz

+

+TEARDOWN rtsp://%HOSTIP:%RTSPPORT/5690002 RTSP/1.0

+CSeq: 2

+Session: 00.+1-am-aSe55ion_id\$yes-i-am\$

+

+SETUP rtsp://%HOSTIP:%RTSPPORT/5690003 RTSP/1.0

+CSeq: 3

+Transport: Fake/NotReal/JustATest;foo=baz

+

+TEARDOWN rtsp://%HOSTIP:%RTSPPORT/5690004 RTSP/1.0

+CSeq: 4

+Session: \$extraspaces

+

+SETUP rtsp://%HOSTIP:%RTSPPORT/5690005 RTSP/1.0

+CSeq: 5

+Transport: Fake/NotReal/JustATest;foo=baz

+

+TEARDOWN rtsp://%HOSTIP:%RTSPPORT/5690006 RTSP/1.0

+CSeq: 6

+Session: A

+

+</protocol>
+<file name="log/idfile569.txt">
+Got Session ID: [00.+1-am-aSe55ion_id\$yes-i-am\$]
+Got Session ID: [\$extraspaces]
+Got Session ID: [A]
+</file>
+</verify>
+
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test57 b/ap/lib/libcurl/curl-7.54.1/tests/data/test57
new file mode 100644
index 0000000..0724eac
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test57
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+--write-out
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK swsclose
+Funny-head: yesyes
+Content-Type: text/html; charset=ISO-8859-4   
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP content-type with spaces in
+ </name>
+ <command>
+-w "%{content_type}\n" http://%HOSTIP:%HTTPPORT/57 -o log/out57
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stdout mode="text">
+text/html; charset=ISO-8859-4
+</stdout>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /57 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test570 b/ap/lib/libcurl/curl-7.54.1/tests/data/test570
new file mode 100644
index 0000000..65f32a5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test570
@@ -0,0 +1,77 @@
+<testcase>
+
+#Informational
+<info>
+<keywords>
+RTSP
+Mismatch checking
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+CSeq: 2

+Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE

+Informational: CSeq Mismatch

+

+</data1>
+<data2>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: asdf

+CSeq: 999

+

+</data2>
+<data3>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: asdfWRONG

+Informational: Session ID mismatch

+Curl-Private: swsclose

+CSeq: 1000

+

+</data3>
+
+</reply>
+
+# Client-Side
+<client>
+<server>
+rtsp
+</server>
+<tool>
+lib570
+</tool>
+
+<name>
+RTSP CSeq and Session Mismatch checks
+</name>
+<command>
+rtsp://%HOSTIP:%RTSPPORT/570
+</command>
+</client>
+
+<verify>
+<strip>
+^If-Modified-Since:.*
+</strip>
+<protocol>
+OPTIONS rtsp://%HOSTIP:%RTSPPORT/5700001 RTSP/1.0

+CSeq: 1

+

+SETUP rtsp://%HOSTIP:%RTSPPORT/5700002 RTSP/1.0

+CSeq: 999

+Transport: RAW/RAW/UDP;unicast;client_port=3056-3057

+

+PLAY rtsp://%HOSTIP:%RTSPPORT/5700003 RTSP/1.0

+CSeq: 1000

+Session: asdf

+

+</protocol>
+</verify>
+
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test571 b/ap/lib/libcurl/curl-7.54.1/tests/data/test571
new file mode 100644
index 0000000..494ac41
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test571
@@ -0,0 +1,108 @@
+<testcase>
+
+# Informational
+# Bang on RTP by
+#   1) giving an evil payload (with $)
+#   2) Giving evil content (SDP starting with $)
+#   3) packing rtp after headers, after content, and at the start
+<info>
+<keywords>
+RTSP
+RTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: asdf

+CSeq: 1

+

+</data1>
+
+<data2>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+CSeq: 2

+Session: asdf

+

+</data2>
+
+<data3>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Cseq: 3

+Content-Length: 4

+Content-Type: fake/evil

+

+$99
+</data3>
+
+<data4>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: asdf

+CSeq: 4

+

+</data4>
+
+<servercmd>
+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 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
+</servercmd>
+</reply>
+
+# Client-Side
+<client>
+<server>
+rtsp
+</server>
+<tool>
+lib571
+</tool>
+
+<name>
+RTSP RTP Interleaving Test
+</name>
+<command>
+rtsp://%HOSTIP:%RTSPPORT/571 log/protofile571.txt
+</command>
+</client>
+
+<verify>
+<stdout>
+RTP: message size 10, channel 1
+RTP: message size 500, channel 0
+RTP: message size 196, channel 0
+RTP: message size 124, channel 0
+RTP: message size 824, channel 0
+RTP: message size 10, channel 1
+RTP: message size 50, channel 0
+RTP: message size 798, channel 0
+RTP: message size 42, channel 0
+RTP: message size 30, channel 1
+RTP: message size 2048, channel 0
+RTP: message size 85, channel 0
+RTP: message size 24, channel 1
+</stdout>
+
+<file name="log/protofile571.txt">
+$99
+</file>
+</verify>
+
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test572 b/ap/lib/libcurl/curl-7.54.1/tests/data/test572
new file mode 100644
index 0000000..903ded9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test572
@@ -0,0 +1,122 @@
+<testcase>
+
+#Informational
+<info>
+<keywords>
+RTSP
+GET_PARAMETER
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data1>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: getparams-test

+CSeq: 1

+

+</data1>
+
+<data2>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: getparams-test

+Content-Type: text/parameters

+Content-Length: 32

+Cseq: 2

+

+scale=enormous
+speed=ludicrous
+
+</data2>
+
+<data3>
+RTSP/1.0 204 OK

+Server: RTSPD/libcurl-test

+Session: getparams-test

+Cseq: 3

+

+</data3>
+
+<data4>
+RTSP/1.0 200 Okie Dokie

+Server: RTSPD/libcurl-test

+Session: getparams-test

+Cseq: 4

+Content-Length: 37

+

+packets_received: 1000
+jitter: 0.314
+</data4>
+<data5>
+RTSP/1.0 200 OK

+Server: RTSPD/libcurl-test

+Session: getparams-test

+CSeq: 5

+Curl-private: swsclose

+Informational: Empty Options Response

+

+</data5>
+</reply>
+
+# Client-Side
+<client>
+<server>
+rtsp
+</server>
+<tool>
+lib572
+</tool>
+
+<name>
+RTSP GET_PARAMETER (Put/Heartbeat/Post)
+</name>
+<command>
+rtsp://%HOSTIP:%RTSPPORT/572
+</command>
+# file written before test command runs
+<file name="log/file572.txt">
+scale
+speed
+</file>
+</client>
+
+<verify>
+<strip>
+^If-Modified-Since:.*
+</strip>
+<protocol>
+SETUP rtsp://%HOSTIP:%RTSPPORT/5720001 RTSP/1.0

+CSeq: 1

+Transport: Planes/Trains/Automobiles

+

+GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/5720002 RTSP/1.0

+CSeq: 2

+Session: getparams-test

+Content-Length: 12

+Content-Type: text/parameters

+

+scale
+speed
+GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/5720003 RTSP/1.0

+CSeq: 3

+Session: getparams-test

+

+GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/5720004 RTSP/1.0

+CSeq: 4

+Session: getparams-test

+Content-Length: 24

+Content-Type: text/parameters

+

+packets_received
+jitter
+OPTIONS rtsp://%HOSTIP:%RTSPPORT/5720005 RTSP/1.0

+CSeq: 5

+Session: getparams-test

+

+</protocol>
+</verify>
+
+</testcase>
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test573 b/ap/lib/libcurl/curl-7.54.1/tests/data/test573
new file mode 100644
index 0000000..e3299b8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test573
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+multi
+flaky
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib573
+</tool>
+
+ <name>
+verify connect time with multi interface
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/573
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /573 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test574 b/ap/lib/libcurl/curl-7.54.1/tests/data/test574
new file mode 100644
index 0000000..cb41f03
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test574
@@ -0,0 +1,98 @@
+<testcase>
+<info>
+<keywords>
+FTP
+LIST
+RETR
+wildcardmatch
+ftplistparser
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data mode="text">
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib574
+</tool>
+<name>
+FTP wildcard download - changed fnmatch, 2x perform (Unix LIST response)
+</name>
+<command>
+ftp://%HOSTIP:%FTPPORT/fully_simulated/UNIX/*.txt
+</command>
+</client>
+
+############################################
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+# THERE SHOULD NOT BE "SIZE"! and one "USER/PASS"
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD fully_simulated

+CWD UNIX

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+CWD /

+CWD fully_simulated

+CWD UNIX

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+QUIT

+</protocol>
+<stdout>
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test575 b/ap/lib/libcurl/curl-7.54.1/tests/data/test575
new file mode 100644
index 0000000..8133834
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test575
@@ -0,0 +1,121 @@
+<testcase>
+<info>
+<keywords>
+FTP
+RETR
+multi
+wildcardmatch
+ftplistparser
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib575
+</tool>
+ <name>
+FTP wildcard download - dup_handle and multi interface
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/fully_simulated/UNIX/*
+</command>
+</client>
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD fully_simulated

+CWD UNIX

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+CWD /

+CWD fully_simulated

+CWD UNIX

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+QUIT

+USER anonymous

+PASS ftp@example.com

+PWD

+CWD fully_simulated

+CWD UNIX

+EPSV

+TYPE A

+LIST

+EPSV

+TYPE I

+RETR chmod1

+EPSV

+RETR chmod2

+EPSV

+RETR chmod3

+EPSV

+RETR empty_file.dat

+EPSV

+RETR file.txt

+EPSV

+RETR someothertext.txt

+QUIT

+</protocol>
+<stdout>
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+This file should have permissions 444
+This file should have permissions 666
+This file should have permissions 777
+This is content of file "file.txt"
+Some junk ;-) This file does not really exist.
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test576 b/ap/lib/libcurl/curl-7.54.1/tests/data/test576
new file mode 100644
index 0000000..74a3aed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test576
@@ -0,0 +1,192 @@
+<testcase>
+<info>
+<keywords>
+FTP
+wildcardmatch
+ftplistparser
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib576
+</tool>
+ <name>
+FTP wildcard download - skip/parser_correctness/CURLOPT_FNMATCH_FUNCTION (Unix)
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/fully_simulated/UNIX/*
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+<stdout>
+=============================================================
+Remains:      14
+Filename:     .
+Permissions:  rwxrwxrwx (parsed => 777)
+Size:         20480B
+User:         ftp-default
+Group:        ftp-default
+Time:         Apr 27  5:12
+Filetype:     directory
+=============================================================
+Remains:      13
+Filename:     ..
+Permissions:  rwxrwxrwx (parsed => 777)
+Size:         20480B
+User:         ftp-default
+Group:        ftp-default
+Time:         Apr 23  3:12
+Filetype:     directory
+=============================================================
+Remains:      12
+Filename:     chmod1
+Permissions:  r--r--r-- (parsed => 444)
+Size:         38B
+User:         ftp-default
+Group:        ftp-default
+Time:         Jan 11 10:00
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This file should have permissions 444
+-------------------------------------------------------------
+=============================================================
+Remains:      11
+Filename:     chmod2
+Permissions:  rw-rw-rw- (parsed => 666)
+Size:         38B
+User:         ftp-default
+Group:        ftp-default
+Time:         Feb  1  8:00
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This file should have permissions 666
+-------------------------------------------------------------
+=============================================================
+Remains:      10
+Filename:     chmod3
+Permissions:  rwxrwxrwx (parsed => 777)
+Size:         38B
+User:         ftp-default
+Group:        ftp-default
+Time:         Feb  1  8:00
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This file should have permissions 777
+-------------------------------------------------------------
+=============================================================
+Remains:      9
+Filename:     chmod4
+Permissions:  --S--S--t (parsed => 7001)
+Size:         4096B
+User:         ftp-default
+Group:        ftp-default
+Time:         May  4  4:31
+Filetype:     directory
+=============================================================
+Remains:      8
+Filename:     chmod5
+Permissions:  --s--s--T (parsed => 7110)
+Size:         4096B
+User:         ftp-default
+Group:        ftp-default
+Time:         May  4  4:31
+Filetype:     directory
+=============================================================
+Remains:      7
+Filename:     empty_file.dat
+Permissions:  rw-r--r-- (parsed => 644)
+Size:         0B
+User:         ftp-default
+Group:        ftp-default
+Time:         Apr 27 11:01
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+-------------------------------------------------------------
+=============================================================
+Remains:      6
+Filename:     file.txt
+Permissions:  rw-r--r-- (parsed => 644)
+Size:         35B
+User:         ftp-default
+Group:        ftp-default
+Time:         Apr 27 11:01
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+This is content of file "file.txt"
+-------------------------------------------------------------
+=============================================================
+Remains:      5
+Filename:     link
+Permissions:  rwxrwxrwx (parsed => 777)
+Size:         0B
+User:         ftp-default
+Group:        ftp-default
+Time:         Jan  6  4:42
+Filetype:     symlink
+Target:       file.txt
+=============================================================
+Remains:      4
+Filename:     link_absolute
+Permissions:  rwxrwxrwx (parsed => 777)
+Size:         0B
+User:         ftp-default
+Group:        ftp-default
+Time:         Jan  6  4:45
+Filetype:     symlink
+Target:       /data/ftp/file.txt
+=============================================================
+Remains:      3
+Filename:     .NeXT
+Permissions:  rwxrwxrwx (parsed => 777)
+Size:         4096B
+User:         ftp-default
+Group:        ftp-default
+Time:         Jan 23  2:05
+Filetype:     directory
+=============================================================
+Remains:      2
+Filename:     someothertext.txt
+Permissions:  rw-r--r-- (parsed => 644)
+Size:         47B
+User:         ftp-default
+Group:        ftp-default
+Time:         Apr 27 11:01
+Filetype:     regular file
+Content:
+-------------------------------------------------------------
+# THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #
+-------------------------------------------------------------
+=============================================================
+Remains:      1
+Filename:     weirddir.txt
+Permissions:  rwxr-xrwx (parsed => 757)
+Size:         4096B
+User:         ftp-default
+Group:        ftp-default
+Time:         Apr 23  3:12
+Filetype:     directory
+=============================================================
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test578 b/ap/lib/libcurl/curl-7.54.1/tests/data/test578
new file mode 100644
index 0000000..abbe49a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test578
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

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

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

+-foo-
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib578
+</tool>
+
+ <name>
+HTTP POST lower than MAX_INITIAL_POST_SIZE with progress callback
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/500 log/ip578
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/ip578">
+PASSED, UL data matched data size
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test579 b/ap/lib/libcurl/curl-7.54.1/tests/data/test579
new file mode 100644
index 0000000..e352e3d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test579
@@ -0,0 +1,87 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP Digest auth
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+</data>
+<data1>
+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</data1>
+<datacheck>
+HTTP/1.1 100 Continue

+Server: Microsoft-IIS/5.0

+Date: Sun, 03 Apr 2005 14:57:45 GMT

+X-Powered-By: ASP.NET

+

+HTTP/1.1 401 authentication please swsbounce

+Server: Microsoft-IIS/6.0

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"

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

+Content-Length: 0

+

+HTTP/1.1 200 A OK

+Server: Microsoft-IIS/6.0

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

+Content-Length: 3

+

+ok
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+crypto
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib579
+</tool>
+
+ <name>
+small chunked HTTP POSTs with digest auth. and progress callback
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/579 log/ip579
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/ip579">
+Progress callback called with UL 0 out of 0
+Progress callback called with UL 8 out of 0
+Progress callback called with UL 16 out of 0
+Progress callback called with UL 26 out of 0
+Progress callback called with UL 61 out of 0
+Progress callback called with UL 66 out of 0
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test58 b/ap/lib/libcurl/curl-7.54.1/tests/data/test58
new file mode 100644
index 0000000..1bd53fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test58
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP PUT from file with weird letters
+</name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/ -T log/58te[]st.txt -g
+</command>
+<file name="log/58te[]st.txt">
+a few bytes
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /we/want/58te%5B%5Dst.txt HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 12

+Expect: 100-continue

+

+a few bytes
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test580 b/ap/lib/libcurl/curl-7.54.1/tests/data/test580
new file mode 100644
index 0000000..1396559
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test580
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+Duplicate-header
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 eat this!

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

+Server: test-server/fake

+Location: this-is-the-first.html

+Content-Length: 0

+Connection: close

+Location: and there's a second one too! / moo.html

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib507
+</tool>
+
+ <name>
+multi interface, multiple Location: headers
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/580
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /580 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test581 b/ap/lib/libcurl/curl-7.54.1/tests/data/test581
new file mode 100644
index 0000000..83d7b60
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test581
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+Duplicate-header
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 all good!

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

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 0

+Connection: close

+Content-Type: changed/my/mind

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib507
+</tool>
+
+ <name>
+multi interface, multiple Content-Type: headers
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/581
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /581 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test582 b/ap/lib/libcurl/curl-7.54.1/tests/data/test582
new file mode 100644
index 0000000..64c32db
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test582
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<tool>
+lib582
+</tool>
+ <name>
+SFTP upload using multi interface
+ </name>
+ <command>
+Sftp://%HOSTIP:%SSHPORT%PWD/log/upload582.txt %PWD/log/file582.txt %USER:
+</command>
+<file name="log/file582.txt">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<strip>
+</strip>
+<protocol>
+</protocol>
+<file name="log/file582.txt">
+Moooooooooooo
+ upload this
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test583 b/ap/lib/libcurl/curl-7.54.1/tests/data/test583
new file mode 100644
index 0000000..6ad7f7d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test583
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+multi
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<tool>
+lib583
+</tool>
+ <name>
+SFTP with multi interface, remove handle early
+ </name>
+
+# The command here uses 'localhost' just to make sure that curl_multi_perform
+# won't reach too far in the first invoke. When using c-ares at least, the
+# name resolve will cause it to return rather quickly and thus we could trigger
+# the problem we're looking to verify.
+ <command>
+sftp://localhost:%SSHPORT%PWD/log/upload583.txt %USER:
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test584 b/ap/lib/libcurl/curl-7.54.1/tests/data/test584
new file mode 100644
index 0000000..309c7b6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test584
@@ -0,0 +1,102 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+pipelining
+multi
+</keywords>
+</info>
+
+# Server-side
+# Silly division of the first request is solely to appease the server which expects n_data_items == n_requests
+<reply>
+<data1>
+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 4

+

+584
+</data1>
+<data2>
+HTTP/1.1 200 OK

+</data2>
+<data3>
+Server: test-server/fake

+</data3>
+<data4>
+Content-Length: 0

+

+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 5

+

+585
+
+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 4

+

+586
+</data4>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib530
+</tool>
+ <name>
+HTTP GET using pipelining (nonzero length after zero length)
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/path/584
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /path/5840001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/5840002 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/5840003 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /path/5840004 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<stdout>
+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 4

+

+584
+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 0

+

+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 5

+

+585
+
+HTTP/1.1 200 OK

+Server: test-server/fake

+Content-Length: 4

+

+586
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test585 b/ap/lib/libcurl/curl-7.54.1/tests/data/test585
new file mode 100644
index 0000000..2096e81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test585
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+multi
+CURLOPT_OPENSOCKETFUNCTION
+CURLOPT_CLOSESOCKETFUNCTION
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 eat this!

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

+Server: test-server/fake

+Location: this-is-the-first.html

+Content-Length: 0

+Connection: close

+

+</data>
+<datacheck>
+[OPEN] counter: 1
+HTTP/1.1 302 eat this!

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

+Server: test-server/fake

+Location: this-is-the-first.html

+Content-Length: 0

+Connection: close

+

+[CLOSE] counter: 1
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+</features>
+# tool is what to use instead of 'curl'
+<tool>
+lib585
+</tool>
+
+ <name>
+socket open/close callbacks
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/585
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /585 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test586 b/ap/lib/libcurl/curl-7.54.1/tests/data/test586
new file mode 100644
index 0000000..c0857bd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test586
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CURLOPT_PORT
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+line 1
+line 2
+last line
+</data>
+<datacheck>
+[OPEN] counter: 1
+[OPEN] counter: 2
+line 1
+line 2
+last line
+[CLOSE] counter: 2
+[CLOSE] counter: 1
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib585
+</tool>
+ <name>
+FTP and open/close socket callbacks
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/586
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 586

+RETR 586

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test587 b/ap/lib/libcurl/curl-7.54.1/tests/data/test587
new file mode 100644
index 0000000..69cbe1e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test587
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib587
+</tool>
+
+ <name>
+HTTP multi-part formpost with aborted read callback
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/587
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^--------------------------[a-z0-9]*/------------------------------/
+s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
+</strippart>
+<protocol>
+POST /587 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 718

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------

+

+------------------------------

+Content-Disposition: form-data; name="sendfile"; filename="postit2.c"

+

+</protocol>
+# CURLE_ABORTED_BY_CALLBACK (42)
+<errorcode>
+42
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test588 b/ap/lib/libcurl/curl-7.54.1/tests/data/test588
new file mode 100644
index 0000000..b30828c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test588
@@ -0,0 +1,69 @@
+<testcase>
+#
+# This test is exactly like 525 but the server rejects the EPRT command.
+# Written up to make sure that there's nothing in the multi interface
+# active connection case that differs between PORT and EPRT use
+#
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+EPRT refused
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+REPLY EPRT 500 we don't like EPRT now
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib525
+</tool>
+ <name>
+FTP PORT upload using multi interface, EPRT doesn't work
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/588 log/upload588
+</command>
+<file name="log/upload588">
+Moooooooooooo
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip off parts of the PORT and EPRT commands that might differ
+<strippart>
+s/^PORT (.*)/PORT/
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPRT |1|
+PORT
+TYPE I

+STOR 588

+QUIT

+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test59 b/ap/lib/libcurl/curl-7.54.1/tests/data/test59
new file mode 100644
index 0000000..9c96017
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test59
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+hej 
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP URL with slash but with "parameter"
+ </name>
+ <command>
+"http://%HOSTIP:%HTTPPORT?mooo/59"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /?mooo/59 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test590 b/ap/lib/libcurl/curl-7.54.1/tests/data/test590
new file mode 100644
index 0000000..48144d4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test590
@@ -0,0 +1,125 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+POST callback
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Negotiate

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+This is not the real page
+</data>
+
+# this is returned first since we get no proxy-auth
+<data1001>
+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+Hey you, authenticate or go away!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Proxy-Authenticate: Negotiate

+Proxy-Authenticate: NTLM

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

+Connection: close

+

+HTTP/1.1 407 Authorization Required to proxy me my dear

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+Content-Length: 34

+

+HTTP/1.1 200 Things are fine in proxy land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 42

+

+Contents of that page you requested, sir.
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool to use
+<tool>
+lib590
+</tool>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+HTTP proxy offers Negotiate+NTLM, use only NTLM
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://test.remote.example.com/path/590 http://%HOSTIP:%HTTPPORT
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent: curl/.*
+</strip>
+<protocol>
+GET http://test.remote.example.com/path/590 HTTP/1.1

+Host: test.remote.example.com

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.example.com/path/590 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://test.remote.example.com/path/590 HTTP/1.1

+Host: test.remote.example.com

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAAAgACAPYAAAAIAAgA+AAAAAAAAAAAAAAABoKBAPfkdFqeIuYPjDr2ZbNxCag0MzIxNTMyMQjxxEdSYaUsgjpD8o53NrMBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAbWVjdXJsaG9zdA==

+User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test591 b/ap/lib/libcurl/curl-7.54.1/tests/data/test591
new file mode 100644
index 0000000..e1dfcd3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test591
@@ -0,0 +1,73 @@
+<testcase>
+#
+# For this test the server rejects the EPRT command,
+# code in lib591 makes use of curl_multi_timeout()
+# and server does not establish data connection.
+#
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+EPRT refused
+NODATACONN425
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+NODATACONN425
+REPLY EPRT 500 we don't like EPRT now
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib591
+</tool>
+ <name>
+FTP multi PORT and 425 on upload
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/591 %FTPTIME2 log/upload591
+</command>
+<file name="log/upload591">
+Moooooooooooo for 591
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip off parts of the PORT and EPRT commands that might differ
+<strippart>
+s/^PORT (.*)/PORT/
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPRT |1|
+PORT
+TYPE I

+STOR 591

+QUIT

+</protocol>
+# CURLE_FTP_ACCEPT_FAILED = 10
+<errorcode>
+10
+</errorcode>
+<upload>
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test592 b/ap/lib/libcurl/curl-7.54.1/tests/data/test592
new file mode 100644
index 0000000..6151ccc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test592
@@ -0,0 +1,74 @@
+<testcase>
+#
+# For this test the server rejects the EPRT command,
+# code in lib591 makes use of curl_multi_timeout()
+# and server does not establish data connection.
+#
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+EPRT refused
+NODATACONN421
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+NODATACONN421
+REPLY EPRT 500 we don't like EPRT now
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib591
+</tool>
+ <name>
+FTP multi PORT and 421 on upload
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/592 %FTPTIME2 log/upload592
+</command>
+<file name="log/upload592">
+Moooooooooooo for 592
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip off parts of the PORT and EPRT commands that might differ
+<strippart>
+s/^PORT (.*)/PORT/
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+# a 421 response must prevent further commands from being sent
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPRT |1|
+PORT
+TYPE I

+STOR 592

+QUIT

+</protocol>
+# CURLE_FTP_ACCEPT_FAILED = 10
+<errorcode>
+10
+</errorcode>
+<upload>
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test593 b/ap/lib/libcurl/curl-7.54.1/tests/data/test593
new file mode 100644
index 0000000..a136000
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test593
@@ -0,0 +1,72 @@
+<testcase>
+#
+# For this test the server rejects the EPRT command,
+# code in lib591 makes use of curl_multi_timeout()
+# and server does not establish data connection.
+#
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+EPRT refused
+NODATACONN150
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+NODATACONN150
+REPLY EPRT 500 we don't like EPRT now
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib591
+</tool>
+ <name>
+FTP multi PORT upload, no data conn and no transient neg. reply
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/593 %FTPTIME2 log/upload593
+</command>
+<file name="log/upload593">
+Moooooooooooo for 593
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip off parts of the PORT and EPRT commands that might differ
+<strippart>
+s/^PORT (.*)/PORT/
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPRT |1|
+PORT
+TYPE I

+STOR 593

+QUIT

+</protocol>
+<errorcode>
+12
+</errorcode>
+<upload>
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test594 b/ap/lib/libcurl/curl-7.54.1/tests/data/test594
new file mode 100644
index 0000000..d6144ae
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test594
@@ -0,0 +1,72 @@
+<testcase>
+#
+# For this test the server rejects the EPRT command,
+# code in lib591 makes use of curl_multi_timeout()
+# and server does not establish data connection.
+#
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+EPRT refused
+NODATACONN
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+NODATACONN
+REPLY EPRT 500 we don't like EPRT now
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib591
+</tool>
+ <name>
+FTP multi PORT upload, no data conn and no positive prelim. reply
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/594 %FTPTIME2 log/upload594
+</command>
+<file name="log/upload594">
+Moooooooooooo for 594
+ upload this
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# Strip off parts of the PORT and EPRT commands that might differ
+<strippart>
+s/^PORT (.*)/PORT/
+s/^EPRT \|1\|(.*)/EPRT \|1\|/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+CWD path

+EPRT |1|
+PORT
+TYPE I

+STOR 594

+QUIT

+</protocol>
+<errorcode>
+28
+</errorcode>
+<upload>
+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test595 b/ap/lib/libcurl/curl-7.54.1/tests/data/test595
new file mode 100644
index 0000000..0099a85
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test595
@@ -0,0 +1,57 @@
+<testcase>
+#
+# This test is like 585 but uses passive FTP instead of HTTP
+#
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+moo
+</data>
+<datacheck>
+[OPEN] counter: 1
+[OPEN] counter: 2
+moo
+[CLOSE] counter: 2
+[CLOSE] counter: 1
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib585
+</tool>
+
+ <name>
+verify close callbacks with passive FTP
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/595 log/ip595
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 595

+RETR 595

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test596 b/ap/lib/libcurl/curl-7.54.1/tests/data/test596
new file mode 100644
index 0000000..9377289
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test596
@@ -0,0 +1,60 @@
+<testcase>
+#
+# This test is like 585 but uses active FTP instead of HTTP
+#
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+moo
+</data>
+<datacheck>
+[OPEN] counter: 1
+[OPEN] counter: 2
+[CLOSE] counter: 2
+moo
+[CLOSE] counter: 1
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib585
+</tool>
+
+ <name>
+verify close callbacks with active FTP
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/596 log/ip596 activeftp
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^(EPRT \|1\|)(.*)/$1/
+</strippart>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPRT |1|
+TYPE I

+SIZE 596

+RETR 596

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test597 b/ap/lib/libcurl/curl-7.54.1/tests/data/test597
new file mode 100644
index 0000000..458bb64
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test597
@@ -0,0 +1,37 @@
+<testcase>
+<info>
+<keywords>
+FTP
+CONNECT_ONLY
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib597
+</tool>
+ <name>
+FTP connect only option
+ </name>
+
+<command>
+ftp://%HOSTIP:%FTPPORT
+</command>
+
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test598 b/ap/lib/libcurl/curl-7.54.1/tests/data/test598
new file mode 100644
index 0000000..89b8e6f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test598
@@ -0,0 +1,80 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP set cookie
+cookies
+CURLOPT_REFERER
+curl_easy_reset
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+-foo-
+</data>
+
+# since the request runs twice
+<datacheck>
+HTTP/1.1 200 OK

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

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+-foo-
+HTTP/1.1 200 OK

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

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+-foo-
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib598
+</tool>
+
+ <name>
+curl_easy_reset with referer and other strings set
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/598
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /598 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: the-moo agent next generation

+Accept: */*

+Referer: http://example.com/the-moo

+Cookie: name=moo

+

+GET /598 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test599 b/ap/lib/libcurl/curl-7.54.1/tests/data/test599
new file mode 100644
index 0000000..9a6c412
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test599
@@ -0,0 +1,86 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 302 OK

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

+Server: test-server/fake

+Location: 5990001

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+-foo-
+</data>
+<data1>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Transfer-Encoding: chunked

+Connection: close

+Content-Type: text/html

+

+32

+this data is slightly larger than the first piece
+

+0

+

+</data1>
+
+<datacheck>
+HTTP/1.1 302 OK

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

+Server: test-server/fake

+Location: 5990001

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+

+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Transfer-Encoding: chunked

+Connection: close

+Content-Type: text/html

+

+this data is slightly larger than the first piece
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib599
+</tool>
+
+# Bug 3510057 pointed out that when following a location to a larger chunked
+# encoded page, the first size would still be used in the progress callback
+ <name>
+HTTP GET with progress callback and redirects changing content sizes
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/599 log/ip599
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/ip599">
+CL: -1
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test6 b/ap/lib/libcurl/curl-7.54.1/tests/data/test6
new file mode 100644
index 0000000..0e7dc9b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test6
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP set cookie
+cookies
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes
+swsclose: booo
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with simple cookie send
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/that/page/6 -b "name=contents;name2=content2"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/that/page/6 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: name=contents;name2=content2

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test60 b/ap/lib/libcurl/curl-7.54.1/tests/data/test60
new file mode 100644
index 0000000..0dd717f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test60
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+chunked Transfer-Encoding
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose

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

+Server: test-server/fake

+

+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+HTTP PUT from stdin with wrong content-length
+</name>
+ <command>
+http://%HOSTIP:%HTTPPORT/bzz/60 -T - -H "Content-Length: 1"
+</command>
+<stdin>
+more than one byte
+</stdin>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /bzz/60 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Transfer-Encoding: chunked

+Content-Length: 1

+Expect: 100-continue

+

+13

+more than one byte
+

+0

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test600 b/ap/lib/libcurl/curl-7.54.1/tests/data/test600
new file mode 100644
index 0000000..1f3f601
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test600
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Test data
+for ssh test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file600.txt --insecure
+</command>
+<file name="log/file600.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test601 b/ap/lib/libcurl/curl-7.54.1/tests/data/test601
new file mode 100644
index 0000000..8e765a8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test601
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+SCP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Test data
+for ssh test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP retrieval
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file601.txt --insecure
+</command>
+<file name="log/file601.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test602 b/ap/lib/libcurl/curl-7.54.1/tests/data/test602
new file mode 100644
index 0000000..6b75feb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test602
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+SFTP put
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP put
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file602.txt sftp://%HOSTIP:%SSHPORT%PWD/log/upload.602 --insecure
+</command>
+<file name="log/file602.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+Test data
+for ssh upload test
+</upload>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test603 b/ap/lib/libcurl/curl-7.54.1/tests/data/test603
new file mode 100644
index 0000000..efa7d2e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test603
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SCP
+SCP upload
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP upload
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file603.txt scp://%HOSTIP:%SSHPORT%PWD/log/upload.603 --insecure
+</command>
+<file name="log/file603.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+Test data
+for ssh upload test
+</upload>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test604 b/ap/lib/libcurl/curl-7.54.1/tests/data/test604
new file mode 100644
index 0000000..566086e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test604
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval of nonexistent file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<errorcode>
+78
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test605 b/ap/lib/libcurl/curl-7.54.1/tests/data/test605
new file mode 100644
index 0000000..1c162fc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test605
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+SCP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP retrieval of nonexistent file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+79
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test606 b/ap/lib/libcurl/curl-7.54.1/tests/data/test606
new file mode 100644
index 0000000..80a82e9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test606
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP invalid user login
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u not-a-valid-user: sftp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test607 b/ap/lib/libcurl/curl-7.54.1/tests/data/test607
new file mode 100644
index 0000000..e340987
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test607
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+SCP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP invalid user login
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u not-a-valid-user: scp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test608 b/ap/lib/libcurl/curl-7.54.1/tests/data/test608
new file mode 100644
index 0000000..c904bff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test608
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Test file for rename test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP post-quote rename
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-rename %PWD/log/file608.txt %PWD/log/file608-renamed.txt" sftp://%HOSTIP:%SSHPORT%PWD/log/file608.txt --insecure
+</command>
+# Verify that the file was renamed properly, then rename the file back to what
+# it was so the verify section works and the file can be cleaned up.
+<postcheck>
+perl %SRCDIR/libtest/test610.pl gone %PWD/log/file608.txt move %PWD/log/file608-renamed.txt %PWD/log/file608.txt
+</postcheck>
+<file name="log/file608.txt">
+Test file for rename test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/file608.txt">
+Test file for rename test
+</file>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test609 b/ap/lib/libcurl/curl-7.54.1/tests/data/test609
new file mode 100644
index 0000000..59a2175
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test609
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Test file for mkdir test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP post-quote mkdir failure
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-mkdir %PWD/log/file609.txt" sftp://%HOSTIP:%SSHPORT%PWD/log/file609.txt --insecure
+</command>
+<file name="log/file609.txt">
+Test file for mkdir test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+21
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test61 b/ap/lib/libcurl/curl-7.54.1/tests/data/test61
new file mode 100644
index 0000000..74b8f64
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test61
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+cookiejar
+HTTP replaced headers
+httponly
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK

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

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Set-Cookie: test=yes; httponly; domain=foo.com; expires=Fri Feb 2 11:56:27 GMT 2035

+SET-COOKIE: test2=yes; domain=host.foo.com; expires=Fri Feb 2 11:56:27 GMT 2035

+Set-Cookie: test3=maybe; domain=foo.com; path=/moo; secure

+Set-Cookie: test4=no; domain=nope.foo.com; path=/moo; secure

+Set-Cookie: test5=name; domain=anything.com; path=/ ; secure

+Set-Cookie: fake=fooledyou; domain=..com; path=/;

+Set-Cookie: supercookie=fooledyou; domain=.com; path=/;^M
+Content-Length: 4

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with various cookies and custom Host:
+ </name>
+# Explicitly set the time zone to a known good one, in case the user is
+# using one of the 'right' zones that take into account leap seconds
+# which causes the cookie expiry times to be different.
+<setenv>
+TZ=GMT
+</setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/61 -c log/jar61.txt -H "Host: www.host.foo.com"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/61 HTTP/1.1

+Host: www.host.foo.com

+Accept: */*

+

+</protocol>
+<file name="log/jar61.txt" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+#HttpOnly_.foo.com	TRUE	/we/want/	FALSE	2054030187	test	yes
+.host.foo.com	TRUE	/we/want/	FALSE	2054030187	test2	yes
+.foo.com	TRUE	/moo	TRUE	0	test3	maybe
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test610 b/ap/lib/libcurl/curl-7.54.1/tests/data/test610
new file mode 100644
index 0000000..a7c2ce3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test610
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Dummy test file for rmdir test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test610.pl mkdir %PWD/log/test610.dir
+</precheck>
+ <name>
+SFTP post-quote rmdir
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-rmdir %PWD/log/test610.dir" sftp://%HOSTIP:%SSHPORT%PWD/log/file610.txt --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl gone %PWD/log/test610.dir
+</postcheck>
+<file name="log/file610.txt">
+Dummy test file for rmdir test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test611 b/ap/lib/libcurl/curl-7.54.1/tests/data/test611
new file mode 100644
index 0000000..bfdddde
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test611
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Dummy test file for rename test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test610.pl mkdir %PWD/log/test611.dir
+</precheck>
+ <name>
+SFTP post-quote rename
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-rename %PWD/log/test611.dir %PWD/log/test611.new" sftp://%HOSTIP:%SSHPORT%PWD/log/file611.txt --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl rmdir %PWD/log/test611.new
+</postcheck>
+<file name="log/file611.txt">
+Dummy test file for rename test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test612 b/ap/lib/libcurl/curl-7.54.1/tests/data/test612
new file mode 100644
index 0000000..a8f2a5c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test612
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+Dummy test file for remove test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP post-quote remove file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file612.txt -Q "-rm %PWD/log/file612.txt" sftp://%HOSTIP:%SSHPORT%PWD/log/upload.612  --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl gone %PWD/log/test612.txt
+</postcheck>
+<file name="log/file612.txt">
+Dummy test file for remove test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+Dummy test file for remove test
+</upload>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test613 b/ap/lib/libcurl/curl-7.54.1/tests/data/test613
new file mode 100644
index 0000000..9b0b3fd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test613
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+directory
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<datacheck>
+d?????????    N U         U               N ???  N NN:NN .
+d?????????    N U         U               N ???  N NN:NN ..
+d?????????    N U         U               N ???  N NN:NN asubdir
+-rw?rw?rw?    1 U         U              37 Jan  1  2000 plainfile.txt
+-r-?r-?r-?    1 U         U              47 Dec 31  2000 rofile.txt
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test613.pl prepare %PWD/log/test613.dir
+</precheck>
+ <name>
+SFTP directory retrieval
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/test613.dir/ --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test613.pl postprocess %PWD/log/test613.dir %PWD/log/curl613.out
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test614 b/ap/lib/libcurl/curl-7.54.1/tests/data/test614
new file mode 100644
index 0000000..2184a22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test614
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+pre-quote
+directory
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<datacheck>
+d?????????    N U         U               N ???  N NN:NN .
+d?????????    N U         U               N ???  N NN:NN ..
+d?????????    N U         U               N ???  N NN:NN asubdir
+-r-?r-?r-?    1 U         U              37 Jan  1  2000 plainfile.txt
+-r-?r-?r-?    1 U         U              47 Dec 31  2000 rofile.txt
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test613.pl prepare %PWD/log/test614.dir
+</precheck>
+ <name>
+SFTP pre-quote chmod
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "chmod 444 %PWD/log/test614.dir/plainfile.txt" sftp://%HOSTIP:%SSHPORT%PWD/log/test614.dir/ --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test613.pl postprocess %PWD/log/test614.dir %PWD/log/curl614.out
+</postcheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test615 b/ap/lib/libcurl/curl-7.54.1/tests/data/test615
new file mode 100644
index 0000000..abe9902
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test615
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+SFTP put
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test613.pl prepare %PWD/log/test615.dir
+</precheck>
+ <name>
+SFTP put remote failure
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file615.txt sftp://%HOSTIP:%SSHPORT%PWD/log/test615.dir/rofile.txt --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test613.pl postprocess %PWD/log/test615.dir
+</postcheck>
+<file name="log/file615.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+9
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test616 b/ap/lib/libcurl/curl-7.54.1/tests/data/test616
new file mode 100644
index 0000000..a6a225d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test616
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+zero-length
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data sendzero="yes">
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval of empty file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file616.txt --insecure
+</command>
+<file name="log/file616.txt">
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test617 b/ap/lib/libcurl/curl-7.54.1/tests/data/test617
new file mode 100644
index 0000000..4b183e4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test617
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+SCP
+zero-length
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data sendzero="yes">
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP retrieval of empty file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file617.txt --insecure
+</command>
+<file name="log/file617.txt">
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test618 b/ap/lib/libcurl/curl-7.54.1/tests/data/test618
new file mode 100644
index 0000000..d545d62
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test618
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval of two files
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file618.txt sftp://%HOSTIP:%SSHPORT%PWD/log/file618.txt --insecure
+</command>
+<file name="log/file618.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<stdout>
+Test data
+for ssh test
+Test data
+for ssh test
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test619 b/ap/lib/libcurl/curl-7.54.1/tests/data/test619
new file mode 100644
index 0000000..303266f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test619
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+SCP
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP retrieval of two files
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file619.txt scp://%HOSTIP:%SSHPORT%PWD/log/file619.txt --insecure
+</command>
+<file name="log/file619.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<stdout>
+Test data
+for ssh test
+Test data
+for ssh test
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test62 b/ap/lib/libcurl/curl-7.54.1/tests/data/test62
new file mode 100644
index 0000000..add2a6a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test62
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP replaced headers
+cookies
+httponly
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose

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

+Content-Type: text/html

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, send cookies when using custom Host:
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/62 http://%HOSTIP:%HTTPPORT/we/want?hoge=fuga -b log/jar62.txt -H "Host: www.host.foo.com"
+</command>
+<file name="log/jar62.txt">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+#HttpOnly_.foo.com	TRUE	/we/want/	FALSE	2054030187	test	yes
+.host.foo.com	TRUE	/we/want/	FALSE	2054030187	test2	yes
+.fake.host.foo.com	TRUE	/we/want/	FALSE	2054030187	test4	yes
+
+.foo.com	TRUE	/moo	TRUE	0	test3	maybe
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/62 HTTP/1.1

+Host: www.host.foo.com

+Accept: */*

+Cookie: test2=yes; test=yes

+

+GET /we/want?hoge=fuga HTTP/1.1

+Host: www.host.foo.com

+Accept: */*

+Cookie: test2=yes; test=yes

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test620 b/ap/lib/libcurl/curl-7.54.1/tests/data/test620
new file mode 100644
index 0000000..1750ab9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test620
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval of missing file followed by good file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/not-a-valid-file-moooo sftp://%HOSTIP:%SSHPORT%PWD/log/file620.txt --insecure
+</command>
+<file name="log/file620.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<stdout>
+Test data
+for ssh test
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test621 b/ap/lib/libcurl/curl-7.54.1/tests/data/test621
new file mode 100644
index 0000000..c75a284
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test621
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+SCP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP retrieval of missing file followed by good file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/not-a-valid-file-moooo scp://%HOSTIP:%SSHPORT%PWD/log/file621.txt --insecure
+</command>
+<file name="log/file621.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<stdout>
+Test data
+for ssh test
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test622 b/ap/lib/libcurl/curl-7.54.1/tests/data/test622
new file mode 100644
index 0000000..e5a769c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test622
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+SFTP put
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP put failure
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file622.txt sftp://%HOSTIP:%SSHPORT%PWD/log/nonexistent-directory/nonexistent-file --insecure
+</command>
+<file name="log/file622.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+78
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test623 b/ap/lib/libcurl/curl-7.54.1/tests/data/test623
new file mode 100644
index 0000000..1a639d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test623
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+SCP
+SCP upload
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP upload failure
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file623.txt scp://%HOSTIP:%SSHPORT%PWD/log/nonexistent-directory/nonexistent-file --insecure
+</command>
+<file name="log/file623.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<errorcode>
+79
+</errorcode>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test624 b/ap/lib/libcurl/curl-7.54.1/tests/data/test624
new file mode 100644
index 0000000..fa4ff08
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test624
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+SFTP put
+--ftp-create-dirs
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP put with --ftp-create-dirs
+ </name>
+ <command>
+--ftp-create-dirs --key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file624.txt sftp://%HOSTIP:%SSHPORT%PWD/log/test624.dir/upload.624 --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl move %PWD/log/test624.dir/upload.624 %PWD/log/upload.624 rmdir %PWD/log/test624.dir
+</postcheck>
+<file name="log/file624.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+Test data
+for ssh upload test
+</upload>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test625 b/ap/lib/libcurl/curl-7.54.1/tests/data/test625
new file mode 100644
index 0000000..b3ec738
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test625
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+SFTP put
+--ftp-create-dirs
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP put with --ftp-create-dirs twice
+ </name>
+ <command>
+--ftp-create-dirs --key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file625.txt sftp://%HOSTIP:%SSHPORT%PWD/log/test625.a/upload.625 -T log/file625.txt sftp://%HOSTIP:%SSHPORT%PWD/log/test625.b/upload.625 --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl move %PWD/log/test625.a/upload.625 %PWD/log/upload.625 rmdir %PWD/log/test625.a rm %PWD/log/test625.b/upload.625 rmdir %PWD/log/test625.b
+</postcheck>
+<file name="log/file625.txt">
+Test data
+for ssh upload test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<upload>
+Test data
+for ssh upload test
+</upload>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test626 b/ap/lib/libcurl/curl-7.54.1/tests/data/test626
new file mode 100644
index 0000000..a8c2a6c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test626
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+pre-quote
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP invalid quote command
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "invalid-command foo bar" sftp://%HOSTIP:%SSHPORT%PWD/log/file626.txt --insecure
+</command>
+<file name="log/file626.txt">
+Test file for rename test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+21
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test627 b/ap/lib/libcurl/curl-7.54.1/tests/data/test627
new file mode 100644
index 0000000..01c5221
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test627
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+pre-quote
+NOBODY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data sendzero="yes">
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP quote remove file with NOBODY
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -I -Q "rm %PWD/log/file627.txt" sftp://%HOSTIP:%SSHPORT --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl gone %PWD/log/test627.txt
+</postcheck>
+<file name="log/file627.txt">
+Dummy test file for remove test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+<protocol>
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test628 b/ap/lib/libcurl/curl-7.54.1/tests/data/test628
new file mode 100644
index 0000000..37a6f1c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test628
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP invalid user login (password authentication)
+ </name>
+ <command>
+-u not-a-valid-user: sftp://%HOSTIP:%SSHPORT%PWD/irrelevant-file  --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test629 b/ap/lib/libcurl/curl-7.54.1/tests/data/test629
new file mode 100644
index 0000000..0c17914
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test629
@@ -0,0 +1,33 @@
+<testcase>
+<info>
+<keywords>
+SCP
+FAILURE
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP invalid user login (password authentication)
+ </name>
+ <command>
+-u not-a-valid-user: scp://%HOSTIP:%SSHPORT%PWD/irrelevant-file --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+67
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test63 b/ap/lib/libcurl/curl-7.54.1/tests/data/test63
new file mode 100644
index 0000000..ccc19dd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test63
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Content-Type: text/html

+Content-Length: 26
+

+the content would go here
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy authorization set in environment
+ </name>
+<setenv>
+http_proxy=http://fake:user@%HOSTIP:%HTTPPORT/
+</setenv>
+ <command>
+http://we.want.that.site.com/63
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://we.want.that.site.com/63 HTTP/1.1

+Host: we.want.that.site.com

+Proxy-Authorization: Basic ZmFrZTp1c2Vy

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test630 b/ap/lib/libcurl/curl-7.54.1/tests/data/test630
new file mode 100644
index 0000000..e2f6ff9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test630
@@ -0,0 +1,34 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+FAILURE
+server key check
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP incorrect host key
+ </name>
+ <command>
+--hostpubmd5 00000000000000000000000000000000 --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/irrelevant-file --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+51
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test631 b/ap/lib/libcurl/curl-7.54.1/tests/data/test631
new file mode 100644
index 0000000..47b0acb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test631
@@ -0,0 +1,34 @@
+<testcase>
+<info>
+<keywords>
+SCP
+FAILURE
+server key check
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP incorrect host key
+ </name>
+ <command>
+--hostpubmd5 00000000000000000000000000000000 --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/irrelevant-file --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+51
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test632 b/ap/lib/libcurl/curl-7.54.1/tests/data/test632
new file mode 100644
index 0000000..2da0c79
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test632
@@ -0,0 +1,34 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+FAILURE
+server key check
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+sftp
+</features>
+ <name>
+SFTP syntactically invalid host key
+ </name>
+ <command>
+--hostpubmd5 00 --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/irrelevant-file --insecure
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+2
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test633 b/ap/lib/libcurl/curl-7.54.1/tests/data/test633
new file mode 100644
index 0000000..adfd109
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test633
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+data
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval with byte range
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file633.txt -r 5-9 --insecure
+</command>
+<file name="log/file633.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test634 b/ap/lib/libcurl/curl-7.54.1/tests/data/test634
new file mode 100644
index 0000000..1fbb879
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test634
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+data
+for ssh test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval with byte range past end of file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file634.txt -r 5-99 --insecure
+</command>
+<file name="log/file634.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test635 b/ap/lib/libcurl/curl-7.54.1/tests/data/test635
new file mode 100644
index 0000000..a54929d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test635
@@ -0,0 +1,42 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+ssh test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval with byte range relative to end of file
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file635.txt -r -9 --insecure
+</command>
+<file name="log/file635.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test636 b/ap/lib/libcurl/curl-7.54.1/tests/data/test636
new file mode 100644
index 0000000..df4ee7e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test636
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+data
+for ssh test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval with X- byte range
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file636.txt -r 5- --insecure
+</command>
+<file name="log/file636.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test637 b/ap/lib/libcurl/curl-7.54.1/tests/data/test637
new file mode 100644
index 0000000..ef0c814
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test637
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP retrieval with invalid X- range
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file637.txt -r 99- --insecure
+</command>
+<file name="log/file637.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+36
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test638 b/ap/lib/libcurl/curl-7.54.1/tests/data/test638
new file mode 100644
index 0000000..c72cf63
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test638
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+acceptfail
+asterisk
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Dummy test file for rename test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test610.pl mkdir %PWD/log/test638.dir
+</precheck>
+ <name>
+SFTP post-quote rename * asterisk accept-fail
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-*rename %PWD/log/test638.dir %PWD/log/test638.new" sftp://%HOSTIP:%SSHPORT%PWD/log/file638.txt --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl rmdir %PWD/log/test638.new
+</postcheck>
+<file name="log/file638.txt">
+Dummy test file for rename test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test639 b/ap/lib/libcurl/curl-7.54.1/tests/data/test639
new file mode 100644
index 0000000..8dfe859
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test639
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+post-quote
+acceptfail
+asterisk
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+Dummy test file for rename test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+<precheck>
+perl %SRCDIR/libtest/test610.pl mkdir %PWD/log/test639.dir
+</precheck>
+ <name>
+SFTP post-quote rename * asterisk accept-fail
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-*rename %PWD/log/test639-not-exists-dir %PWD/log/test639.new" sftp://%HOSTIP:%SSHPORT%PWD/log/file639.txt --insecure
+</command>
+<postcheck>
+perl %SRCDIR/libtest/test610.pl rmdir %PWD/log/test639.dir
+</postcheck>
+<file name="log/file639.txt">
+Dummy test file for rename test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test64 b/ap/lib/libcurl/curl-7.54.1/tests/data/test64
new file mode 100644
index 0000000..804a6fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test64
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Content-Length: 26

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with Digest authorization
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/64 -u testuser:testpass --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /64 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /64 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/64", response="c55f7f30d83d774a3d2dcacf725abaca"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test640 b/ap/lib/libcurl/curl-7.54.1/tests/data/test640
new file mode 100644
index 0000000..e3e715b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test640
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+NOBODY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP --head retrieval
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file640.txt --insecure --head
+</command>
+<file name="log/file640.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test641 b/ap/lib/libcurl/curl-7.54.1/tests/data/test641
new file mode 100644
index 0000000..beb59d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test641
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+SCP
+NOBODY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP --head retrieval
+ </name>
+ <command>
+--key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file641.txt --insecure --head
+</command>
+<file name="log/file641.txt">
+Test data
+for ssh test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test65 b/ap/lib/libcurl/curl-7.54.1/tests/data/test65
new file mode 100644
index 0000000..f0b9742
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test65
@@ -0,0 +1,84 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="2053604145"

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 401 Still a bad password you moron

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 34

+

+This is not the real page either

+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="2053604145"

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

+Content-Length: 26

+

+HTTP/1.1 401 Still a bad password you moron

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 34

+

+This is not the real page either

+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with Digest authorization with bad password
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/65 -u testuser:test2pass --digest
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /65 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /65 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/65", response="66d68d3251f1839576ba7c766cf9205b"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test66 b/ap/lib/libcurl/curl-7.54.1/tests/data/test66
new file mode 100644
index 0000000..a018d8f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test66
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+no headers swsclose
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET without headers in the response
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/66
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /66 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test67 b/ap/lib/libcurl/curl-7.54.1/tests/data/test67
new file mode 100644
index 0000000..739b82c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test67
@@ -0,0 +1,102 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM authorization
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/67 -u testuser:testpass --ntlm
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /67 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /67 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test68 b/ap/lib/libcurl/curl-7.54.1/tests/data/test68
new file mode 100644
index 0000000..239da78
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test68
@@ -0,0 +1,101 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+# This is supposed to be returned when the server gets a first
+# Authorization: NTLM line passed-in from the client
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 401 You give me wrong password

+Server: Microsoft-IIS/5.0

+WWW-Authenticate: NTLM

+Content-Length: 46

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

+

+Wrong password dude. Get it fixed and return.
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 401 You give me wrong password

+Server: Microsoft-IIS/5.0

+WWW-Authenticate: NTLM

+Content-Length: 46

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

+

+Wrong password dude. Get it fixed and return.
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM authorization and wrong password
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/68 -u testuser:testpass --ntlm
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /68 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /68 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test69 b/ap/lib/libcurl/curl-7.54.1/tests/data/test69
new file mode 100644
index 0000000..c0503f7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test69
@@ -0,0 +1,123 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic

+WWW-Authenticate: Wild-and-crazy

+WWW-Authenticate: NTLM

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a first
+# Authorization: NTLM line passed-in from the client
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic

+WWW-Authenticate: Wild-and-crazy

+WWW-Authenticate: NTLM

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

+Content-Length: 26

+

+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Length: 34

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

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM, Basic or Wild-and-crazy authorization
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/69 -u testuser:testpass --anyauth
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /69 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /69 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /69 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test7 b/ap/lib/libcurl/curl-7.54.1/tests/data/test7
new file mode 100644
index 0000000..62731de
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test7
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+header dump
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes swsclose
+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=/;
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with cookie parser and header recording
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/7 -b none -D log/heads7.txt
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/7 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/heads7.txt">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes swsclose
+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=/;
+
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test70 b/ap/lib/libcurl/curl-7.54.1/tests/data/test70
new file mode 100644
index 0000000..9057d6a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test70
@@ -0,0 +1,88 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+--anyauth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604199"

+WWW-Authenticate: NTLM

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604199"

+WWW-Authenticate: NTLM

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

+Content-Length: 26

+

+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+!SSPI
+NTLM
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with Digest *OR* NTLM authorization
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/70 -u testuser:testpass --anyauth
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /70 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /70 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/70", response="2c9a6f00af0d86497b177b90e90c688a"

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test700 b/ap/lib/libcurl/curl-7.54.1/tests/data/test700
new file mode 100644
index 0000000..ac63fa5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test700
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+SOCKS4
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+socks4
+</server>
+ <name>
+HTTP GET via SOCKS4 proxy
+ </name>
+ <command>
+--socks4 %HOSTIP:%SOCKSPORT http://%HOSTIP:%HTTPPORT/700
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /700 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test701 b/ap/lib/libcurl/curl-7.54.1/tests/data/test701
new file mode 100644
index 0000000..799597f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test701
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+SOCKS5
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+socks5
+</server>
+ <name>
+HTTP GET via SOCKS5 proxy
+ </name>
+ <command>
+--socks5 %HOSTIP:%SOCKSPORT http://%HOSTIP:%HTTPPORT/701
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /701 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test702 b/ap/lib/libcurl/curl-7.54.1/tests/data/test702
new file mode 100644
index 0000000..36af713
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test702
@@ -0,0 +1,39 @@
+<testcase>
+#based off  19
+<info>
+<keywords>
+HTTP
+SOCKS4
+connect to non-listen
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+socks4
+</server>
+<features>
+http
+</features>
+ <name>
+Attempt connect to non-listening HTTP server via SOCKS4 proxy
+ </name>
+ <command>
+--socks4 %HOSTIP:%SOCKSPORT http://%HOSTIP:60000
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test703 b/ap/lib/libcurl/curl-7.54.1/tests/data/test703
new file mode 100644
index 0000000..4aa89b4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test703
@@ -0,0 +1,39 @@
+<testcase>
+#based off  19
+<info>
+<keywords>
+HTTP
+SOCKS5
+connect to non-listen
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+socks5
+</server>
+<features>
+http
+</features>
+ <name>
+Attempt connect to non-listening HTTP server via SOCKS5 proxy
+ </name>
+ <command>
+--socks5 %HOSTIP:%SOCKSPORT http://%HOSTIP:60000
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test704 b/ap/lib/libcurl/curl-7.54.1/tests/data/test704
new file mode 100644
index 0000000..15a1b67
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test704
@@ -0,0 +1,36 @@
+<testcase>
+#based off  19
+<info>
+<keywords>
+HTTP
+SOCKS4
+connect to non-listen
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Attempt connect to non-listening SOCKS4 proxy
+ </name>
+ <command>
+--socks4 %HOSTIP:60000 http://%HOSTIP:%HTTPPORT/704
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test705 b/ap/lib/libcurl/curl-7.54.1/tests/data/test705
new file mode 100644
index 0000000..3b904c6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test705
@@ -0,0 +1,36 @@
+<testcase>
+#based off  19
+<info>
+<keywords>
+HTTP
+SOCKS5
+connect to non-listen
+FAILURE
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Attempt connect to non-listening SOCKS5 proxy
+ </name>
+ <command>
+--socks5 %HOSTIP:60000 http://%HOSTIP:%HTTPPORT/705
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+7
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test706 b/ap/lib/libcurl/curl-7.54.1/tests/data/test706
new file mode 100644
index 0000000..b0531e7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test706
@@ -0,0 +1,59 @@
+<testcase>
+#based off test 100
+<info>
+<keywords>
+FTP
+PASV
+LIST
+SOCKS4
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+socks4
+</server>
+ <name>
+FTP dir list PASV via SOCKS4
+ </name>
+ <command>
+--socks4 %HOSTIP:%SOCKSPORT ftp://%HOSTIP:%FTPPORT/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test707 b/ap/lib/libcurl/curl-7.54.1/tests/data/test707
new file mode 100644
index 0000000..d4c3ab7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test707
@@ -0,0 +1,59 @@
+<testcase>
+#based off test 100
+<info>
+<keywords>
+FTP
+PASV
+LIST
+SOCKS5
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+# When doing LIST, we get the default list output hard-coded in the test
+# FTP server
+<datacheck mode="text">
+total 20
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 .
+drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..
+drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT
+-r--r--r--   1 0        1             35 Jul 16  1996 README
+lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin
+dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev
+drwxrwxrwx   2 98       98           512 May 29 16:04 download.html
+dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc
+drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub
+dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+socks5
+</server>
+ <name>
+FTP dir list PASV via SOCKS5
+ </name>
+ <command>
+--socks5 %HOSTIP:%SOCKSPORT ftp://%HOSTIP:%FTPPORT/
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE A

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test708 b/ap/lib/libcurl/curl-7.54.1/tests/data/test708
new file mode 100644
index 0000000..e8bffc3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test708
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+SOCKS4
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+socks4
+</server>
+<setenv>
+all_proxy=socks4://%HOSTIP:%SOCKSPORT
+</setenv>
+ <name>
+HTTP GET via SOCKS4 proxy
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/708
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /708 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test709 b/ap/lib/libcurl/curl-7.54.1/tests/data/test709
new file mode 100644
index 0000000..0226888
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test709
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+SOCKS5
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+socks5
+</server>
+<setenv>
+http_proxy=socks5://%HOSTIP:%SOCKSPORT 
+</setenv>
+ <name>
+HTTP GET via SOCKS5 set in http_proxy environment variable
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/709
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /709 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test71 b/ap/lib/libcurl/curl-7.54.1/tests/data/test71
new file mode 100644
index 0000000..341a003
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test71
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+config file
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 11
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP and -F upload in config file
+ </name>
+<stdin>
+-F name=daniel
+-F tool=curl
+-F file=@log/test71.txt
+user-agent = ""
+</stdin>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/71 -K -
+</command>
+# We create this file before the command is invoked!
+<file name="log/test71.txt">
+foo-
+This is a moo-
+bar
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/71 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 408

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763

+

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="file"; filename="test71.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------9ef8d6205763--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test710 b/ap/lib/libcurl/curl-7.54.1/tests/data/test710
new file mode 100644
index 0000000..884eb50
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test710
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+SOCKS5
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+socks5
+</server>
+ <name>
+HTTP GET via SOCKS5 set with --proxy
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/710 --proxy socks5://%HOSTIP:%SOCKSPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /710 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test711 b/ap/lib/libcurl/curl-7.54.1/tests/data/test711
new file mode 100644
index 0000000..7be1f3c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test711
@@ -0,0 +1,52 @@
+<testcase>
+#based off test 707 after bug report #1218
+<info>
+<keywords>
+FTP
+PASV
+RETR
+SOCKS5
+all_proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+silly content
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+socks5
+</server>
+<setenv>
+all_proxy=socks5://%HOSTIP:%SOCKSPORT 
+</setenv>
+ <name>
+FTP fetch with all_proxy set to socks5
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/711
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 711

+RETR 711

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test712 b/ap/lib/libcurl/curl-7.54.1/tests/data/test712
new file mode 100644
index 0000000..252c9ef
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test712
@@ -0,0 +1,48 @@
+<testcase>
+#based off test 707 after bug report #1218
+<info>
+<keywords>
+FTP
+PASV
+RETR
+SOCKS5
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+silly content
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+socks5
+</server>
+ <name>
+FTP fetch with --proxy set to socks5://
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/712 --proxy socks5://%HOSTIP:%SOCKSPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 712

+RETR 712

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test713 b/ap/lib/libcurl/curl-7.54.1/tests/data/test713
new file mode 100755
index 0000000..bb79994
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test713
@@ -0,0 +1,49 @@
+<testcase>
+#based off test 712
+<info>
+<keywords>
+FTP
+PASV
+RETR
+SOCKS5
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+silly content
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+socks5
+</server>
+ <name>
+FTP fetch with --proxy set to socks5:// and with --connect-to
+ </name>
+ <command>
+ftp://ftp.example.com/713 --connect-to ::%HOSTIP:%FTPPORT --proxy socks5://%HOSTIP:%SOCKSPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 713

+RETR 713

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test714 b/ap/lib/libcurl/curl-7.54.1/tests/data/test714
new file mode 100755
index 0000000..efec032
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test714
@@ -0,0 +1,67 @@
+<testcase>
+#based off test 712
+<info>
+<keywords>
+FTP
+PASV
+RETR
+HTTP
+HTTP CONNECT
+proxytunnel
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Connection established
+
+</connect>
+
+<data nocheck="yes">
+silly content
+</data>
+
+<datacheck>
+HTTP/1.1 200 Connection established
+
+HTTP/1.1 200 Connection established
+
+silly content
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+http-proxy
+</server>
+<features>
+http
+</features>
+ <name>
+FTP fetch with --proxy set to http:// and with --connect-to
+ </name>
+ <command>
+ftp://ftp.example.com.714/714 --connect-to ::connect.example.com.714:%FTPPORT --proxytunnel --proxy http://%HOSTIP:%PROXYPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 714

+RETR 714

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test715 b/ap/lib/libcurl/curl-7.54.1/tests/data/test715
new file mode 100755
index 0000000..56936b9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test715
@@ -0,0 +1,69 @@
+<testcase>
+#based off test 712
+<info>
+<keywords>
+FTP
+PASV
+RETR
+HTTP
+HTTP CONNECT
+proxytunnel
+SOCKS5
+CURLOPT_CONNECT_TO
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Connection established
+
+</connect>
+
+<data nocheck="yes">
+silly content
+</data>
+
+<datacheck>
+HTTP/1.1 200 Connection established
+
+HTTP/1.1 200 Connection established
+
+silly content
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+ftp
+http-proxy
+socks5
+</server>
+<features>
+http
+</features>
+ <name>
+FTP fetch with --preproxy, --proxy and --connect-to
+ </name>
+ <command>
+ftp://ftp.example.com.715/715 --connect-to ::connect.example.com.715:%FTPPORT --proxytunnel --proxy %HOSTIP:%PROXYPORT --preproxy socks5://%HOSTIP:%SOCKSPORT 
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous

+PASS ftp@example.com

+PWD

+EPSV

+TYPE I

+SIZE 715

+RETR 715

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test72 b/ap/lib/libcurl/curl-7.54.1/tests/data/test72
new file mode 100644
index 0000000..8e3adaa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test72
@@ -0,0 +1,87 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Digest auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic realm="foothis"

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604199"

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

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic realm="foothis"

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604199"

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

+Content-Length: 26

+

+HTTP/1.1 200 OK

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

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

+Content-Length: 23

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP with Digest *OR* Basic authorization
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/72 -u testuser:testpass --anyauth
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /72 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /72 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/72", response="9fcd1330377365a09bbcb33b2cbb25bd"

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test73 b/ap/lib/libcurl/curl-7.54.1/tests/data/test73
new file mode 100644
index 0000000..70408a8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test73
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+cookiejar
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose

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

+Content-Type: text/html

+Set-Cookie: IPCZQX01af0fca5c=000010008168c200d25dfc4b; path=/; domain=.NOT_DISCLOSED.se

+Content-Length: 4

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, receive cookies when using custom Host:, domain using only two dots
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/73 -c log/jar73.txt -H "Host: host.NOT_DISCLOSED.se"
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/73 HTTP/1.1

+Host: host.NOT_DISCLOSED.se

+Accept: */*

+

+</protocol>
+<file name="log/jar73.txt" mode="text">
+# Netscape HTTP Cookie File
+# https://curl.haxx.se/docs/http-cookies.html
+# This file was generated by libcurl! Edit at your own risk.
+
+.NOT_DISCLOSED.se	TRUE	/	FALSE	0	IPCZQX01af0fca5c	000010008168c200d25dfc4b
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test74 b/ap/lib/libcurl/curl-7.54.1/tests/data/test74
new file mode 100644
index 0000000..dbe0e9c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test74
@@ -0,0 +1,75 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+{} list
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+<data1>
+HTTP/1.0 200 OK
+Content-Type: text/html
+Funny-head: swsclose
+Connection: close
+
+crap data
+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, urlglob {}-retrieval and -o #[num] usage
+ </name>
+ <command option="no-output">
+"http://%HOSTIP:%HTTPPORT/{74,740001}" -o "log/dumpit#1.dump"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /74 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /740001 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/dumpit740001.dump">
+HTTP/1.0 200 OK
+Content-Type: text/html
+Funny-head: swsclose
+Connection: close
+
+crap data
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test75 b/ap/lib/libcurl/curl-7.54.1/tests/data/test75
new file mode 100644
index 0000000..d8836b9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test75
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+HTTP, urlglob retrieval with bad range
+ </name>
+ <command option="no-output">
+"http://a-site-never-accessed.example.org/[2-1]" -o "log/weee#1.dump" --stderr -
+</command>
+# The error message on stdout implicitly depends on the length of the
+# URL, so refuse to run if the length is unexpected.
+<precheck>
+perl %SRCDIR/libtest/test75.pl http://%HOSTIP:%HTTPPORT/ 22
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<errorcode>
+3
+</errorcode>
+<stdout mode="text">
+curl: (3) [globbing] bad range in column 47
+</stdout>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test76 b/ap/lib/libcurl/curl-7.54.1/tests/data/test76
new file mode 100644
index 0000000..ada3a33
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test76
@@ -0,0 +1,39 @@
+<testcase>
+<info>
+<keywords>
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+http
+</features>
+ <name>
+HTTP, -O with no file name part in the URL
+ </name>
+ <command option="no-output">
+http://%HOSTIP:%HTTPPORT/76/ -O
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<errorcode>
+23
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test77 b/ap/lib/libcurl/curl-7.54.1/tests/data/test77
new file mode 100644
index 0000000..6a92158
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test77
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+If-Modified-Since
+-z
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2010 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with -z "older date"
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/77 -z "dec 12 12:00:00 1999 GMT"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /77 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test78 b/ap/lib/libcurl/curl-7.54.1/tests/data/test78
new file mode 100644
index 0000000..6768000
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test78
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+If-Modified-Since
+-z
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+<datacheck>
+HTTP/1.1 200 OK
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with -z "newer date"
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/78 -z "dec 12 11:00:00 1999 GMT"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /78 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test79 b/ap/lib/libcurl/curl-7.54.1/tests/data/test79
new file mode 100644
index 0000000..b2566e2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test79
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+FTP
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+
+contents
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+ftp
+</features>
+ <name>
+FTP over HTTP proxy
+ </name>
+ <command>
+ftp://%HOSTIP:%HTTPPORT/we/want/that/page/79 -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/79 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test8 b/ap/lib/libcurl/curl-7.54.1/tests/data/test8
new file mode 100644
index 0000000..ffc421a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test8
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP with cookie parsing from header file
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/8 -b log/heads8.txt
+</command>
+
+# We create this file before the command is invoked!
+<file name="log/heads8.txt">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Funny-head: yesyes
+Set-Cookie: foobar=name; domain=%HOSTIP; path=/;
+Set-Cookie: mismatch=this; domain=%HOSTIP; path="/silly/";
+Set-Cookie: partmatch=present; domain=.0.0.1; path=/w;
+Set-Cookie: duplicate=test; domain=.0.0.1; domain=.0.0.1; path=/donkey;
+Set-Cookie: cookie=yes; path=/we;
+Set-Cookie: cookie=perhaps; path=/we/want;
+Set-Cookie: name with space=is weird but; path=/we/want;
+Set-Cookie: trailingspace    = removed; path=/we/want;
+Set-Cookie: nocookie=yes; path=/WE;
+Set-Cookie: blexp=yesyes; domain=%HOSTIP; domain=%HOSTIP; expiry=totally bad;
+Set-Cookie: partialip=nono; domain=.0.0.1;
+
+</file>
+<precheck>
+perl -e 'if ("%HOSTIP" !~ /\.0\.0\.1$/) {print "Test only works for HOSTIPs ending with .0.0.1"; exit(1)}'
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /we/want/8 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Cookie: cookie=perhaps; name with space=is weird but; trailingspace=removed; cookie=yes; foobar=name; blexp=yesyes

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test80 b/ap/lib/libcurl/curl-7.54.1/tests/data/test80
new file mode 100644
index 0000000..147a6aa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test80
@@ -0,0 +1,83 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP Basic auth
+HTTP proxy
+HTTP proxy Basic auth
+proxytunnel
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+

+</connect>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP 1.0 CONNECT with proxytunnel and proxy+host Basic authentication
+ </name>
+ <command>
+http://test.80:%HTTPPORT/we/want/that/page/80 -p --proxy1.0 %HOSTIP:%PROXYPORT --user iam:myself --proxy-user youare:yourself
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT test.80:%HTTPPORT HTTP/1.0

+Host: test.80:%HTTPPORT

+Proxy-Authorization: Basic eW91YXJlOnlvdXJzZWxm

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Proxy-Connection: Keep-Alive

+

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

+Host: test.80:%HTTPPORT

+Authorization: Basic aWFtOm15c2VsZg==

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test800 b/ap/lib/libcurl/curl-7.54.1/tests/data/test800
new file mode 100644
index 0000000..6b29f7a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test800
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+FETCH
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP FETCH message
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/800/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 800

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test801 b/ap/lib/libcurl/curl-7.54.1/tests/data/test801
new file mode 100644
index 0000000..0012d3e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test801
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+FETCH
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP FETCH message by UID and SECTION
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/801/;UID=123/;SECTION=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 801

+A004 FETCH 123 BODY[1]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test802 b/ap/lib/libcurl/curl-7.54.1/tests/data/test802
new file mode 100644
index 0000000..17349a8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test802
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+SELECT
+UIDVALIDITY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP SELECT UIDVALIDITY Success
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/802;UIDVALIDITY=3857529045/;UID=123/;SECTION=TEXT' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 802

+A004 FETCH 123 BODY[TEXT]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test803 b/ap/lib/libcurl/curl-7.54.1/tests/data/test803
new file mode 100644
index 0000000..5b8cc9e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test803
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+SELECT
+UIDVALIDITY
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP SELECT UIDVALIDITY Failure
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/803;UIDVALIDITY=12345/;UID=123' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# CURLE_REMOTE_FILE_NOT_FOUND - UIDVALIDITY mismatch
+<errorcode>
+78
+</errorcode>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 803

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test804 b/ap/lib/libcurl/curl-7.54.1/tests/data/test804
new file mode 100644
index 0000000..c6dfccf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test804
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+SELECT
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP doesn't perform SELECT if re-using the same mailbox
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/804/;UID=123/;SECTION=1' 'imap://%HOSTIP:%IMAPPORT/804/;UID=456/;SECTION=2.3' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 804

+A004 FETCH 123 BODY[1]

+A005 FETCH 456 BODY[2.3]

+A006 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test805 b/ap/lib/libcurl/curl-7.54.1/tests/data/test805
new file mode 100644
index 0000000..e70c1a6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test805
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+APPEND
+UPLOAD
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP APPEND message
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/805 -T log/upload805 -u user:secret
+</command>
+<file name="log/upload805">
+Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)

+From: Fred Foobar <foobar@example.COM>

+Subject: afternoon meeting

+To: joe@example.com

+Message-Id: <B27397-0100000@example.COM>

+MIME-Version: 1.0

+Content-Type: TEXT/PLAIN; CHARSET=US-ASCII

+

+Hello Joe, do you think we can meet at 3:30 tomorrow?

+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 APPEND 805 (\Seen) {295}

+A004 LOGOUT

+</protocol>
+<upload>
+Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)

+From: Fred Foobar <foobar@example.COM>

+Subject: afternoon meeting

+To: joe@example.com

+Message-Id: <B27397-0100000@example.COM>

+MIME-Version: 1.0

+Content-Type: TEXT/PLAIN; CHARSET=US-ASCII

+

+Hello Joe, do you think we can meet at 3:30 tomorrow?

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test806 b/ap/lib/libcurl/curl-7.54.1/tests/data/test806
new file mode 100644
index 0000000..37822a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test806
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+LIST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+* LIST () "/" /806/blurdybloop

+* LIST (\Noselect) "/" /806/foo

+* LIST () "/" /806/foo/bar

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP LIST mailbox
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/806 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 LIST "806" *

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test807 b/ap/lib/libcurl/curl-7.54.1/tests/data/test807
new file mode 100644
index 0000000..1271b6d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test807
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+LSUB
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+* LSUB () "/" /807/blurdybloop

+* LSUB (\Noselect) "/" /807/foo

+* LSUB () "/" /807/foo/bar

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP LSUB mailbox
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'LSUB "807" *'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 LSUB "807" *

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test808 b/ap/lib/libcurl/curl-7.54.1/tests/data/test808
new file mode 100644
index 0000000..30c8bdf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test808
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+EXAMINE
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+* 17 EXISTS

+* 2 RECENT

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

+* OK [UIDVALIDITY 3857529045] UIDs valid

+* OK [UIDNEXT 4392] Predicted next UID

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

+* OK [PERMANENTFLAGS ()] No permanent flags permitted

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP EXAMINE mailbox (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'EXAMINE 808'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 EXAMINE 808

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test809 b/ap/lib/libcurl/curl-7.54.1/tests/data/test809
new file mode 100644
index 0000000..4283179
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test809
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+STATUS
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+* STATUS 809 (MESSAGES 231 UIDNEXT 44292)

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP mailbox STATUS (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 STATUS 809 (UIDNEXT MESSAGES)

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test81 b/ap/lib/libcurl/curl-7.54.1/tests/data/test81
new file mode 100644
index 0000000..7483bfb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test81
@@ -0,0 +1,103 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy NTLM auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+
+# This is supposed to be returned when the server gets a first
+# Authorization: NTLM line passed-in from the client
+<data1001>
+HTTP/1.1 407 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 407 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

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

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy using NTLM authorization
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/81 --proxy-user testuser:testpass -x http://%HOSTIP:%HTTPPORT --proxy-ntlm
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/81 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+GET http://%HOSTIP:%HTTPPORT/81 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test810 b/ap/lib/libcurl/curl-7.54.1/tests/data/test810
new file mode 100644
index 0000000..6b4d243
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test810
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+SEARCH
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+* SEARCH 1 123 456 810

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP SEARCH for NEW messages
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/810?NEW -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 810

+A004 SEARCH NEW

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test811 b/ap/lib/libcurl/curl-7.54.1/tests/data/test811
new file mode 100644
index 0000000..8fb3aa7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test811
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+CREATE
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP CREATE mailbox (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'CREATE 811'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 CREATE 811

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test812 b/ap/lib/libcurl/curl-7.54.1/tests/data/test812
new file mode 100644
index 0000000..6d1b42d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test812
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+DELETE
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP DELETE mailbox (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'DELETE 812'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 DELETE 812

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test813 b/ap/lib/libcurl/curl-7.54.1/tests/data/test813
new file mode 100644
index 0000000..3544da6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test813
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+RENAME
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP RENAME mailbox (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'RENAME 666 813'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 RENAME 666 813

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test814 b/ap/lib/libcurl/curl-7.54.1/tests/data/test814
new file mode 100644
index 0000000..0b90e5b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test814
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+CHECK
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP CHECK mailbox (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/814 -u user:secret -X 'CHECK'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 814

+A004 CHECK

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test815 b/ap/lib/libcurl/curl-7.54.1/tests/data/test815
new file mode 100644
index 0000000..6ebe5bf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test815
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+STORE
+CLOSE
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1>
+* 123 FETCH (FLAGS (\Seen \Deleted))

+</data1>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP STORE - delete message (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/815 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://%HOSTIP:%IMAPPORT/815 -X CLOSE -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 815

+A004 STORE 123 +Flags \Deleted

+A005 CLOSE

+A006 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test816 b/ap/lib/libcurl/curl-7.54.1/tests/data/test816
new file mode 100644
index 0000000..6df9b7d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test816
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+STORE
+EXPUNGE
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data1>
+* 123 FETCH (FLAGS (\Seen \Deleted))

+</data1>
+<data2>

+* 123 EXPUNGE

+</data2>

+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP STORE - delete message with confirmation (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/816 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://%HOSTIP:%IMAPPORT/816 -X EXPUNGE -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 816

+A004 STORE 123 +Flags \Deleted

+A005 EXPUNGE

+A006 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test817 b/ap/lib/libcurl/curl-7.54.1/tests/data/test817
new file mode 100644
index 0000000..9b44ae9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test817
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+COPY
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP COPY message to mailbox (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -u user:secret -X 'COPY 123 817'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 COPY 123 817

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test818 b/ap/lib/libcurl/curl-7.54.1/tests/data/test818
new file mode 100644
index 0000000..95282c4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test818
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+NOOP
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+* 22 EXPUNGE

+* 23 EXISTS

+* 3 RECENT

+* 14 FETCH (FLAGS (\Seen \Deleted))

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP NOOP (CUSTOMREQUEST)
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT -X NOOP -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 NOOP

+A004 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test819 b/ap/lib/libcurl/curl-7.54.1/tests/data/test819
new file mode 100644
index 0000000..d0aa47b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test819
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH PLAIN
+RFC4616
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+REPLY AUTHENTICATE +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP plain authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/819/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+A003 SELECT 819

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test82 b/ap/lib/libcurl/curl-7.54.1/tests/data/test82
new file mode 100644
index 0000000..8b58f75
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test82
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+HTTP proxy Basic auth
+HTTP proxy NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 407 We only deal with NTLM my friend

+Server: Microsoft-IIS/5.0

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

+Content-Length: 34

+Proxy-Authenticate: NTLM
+

+This is not the real page either!
+</data>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with proxy requiring NTLM, but we send Basic
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/82 --proxy-user testuser:testpass -x http://%HOSTIP:%HTTPPORT
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/82 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test820 b/ap/lib/libcurl/curl-7.54.1/tests/data/test820
new file mode 100644
index 0000000..f638f1c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test820
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH LOGIN
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH LOGIN
+REPLY AUTHENTICATE + VXNlcm5hbWU6
+REPLY dXNlcg== + UGFzc3dvcmQ6
+REPLY c2VjcmV0 A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP login authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/820/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE LOGIN

+dXNlcg==

+c2VjcmV0

+A003 SELECT 820

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test821 b/ap/lib/libcurl/curl-7.54.1/tests/data/test821
new file mode 100644
index 0000000..aee373b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test821
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH CRAM-MD5
+RFC2195
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5
+REPLY AUTHENTICATE + PDE5NzIuOTg3NjU0MzIxQGN1cmw+
+REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+crypto
+</features>
+ <name>
+IMAP CRAM-MD5 authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/821/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE CRAM-MD5

+dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg==

+A003 SELECT 821

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test822 b/ap/lib/libcurl/curl-7.54.1/tests/data/test822
new file mode 100644
index 0000000..a6c0407
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test822
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH NTLM
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTHENTICATE +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+REPLY TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+IMAP NTLM authentication
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/822/;UID=1' -u testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+A003 SELECT 822

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test823 b/ap/lib/libcurl/curl-7.54.1/tests/data/test823
new file mode 100644
index 0000000..25c59ec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test823
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH DIGEST-MD5
+RFC2831
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5
+REPLY AUTHENTICATE + cmVhbG09ImN1cmwiLG5vbmNlPSI1MzAwZDE3YTFkNjk1YmQ0MTFlNGNkZjk2Zjk1NDhjMjNjZWQ2MTc1IixhbGdvcml0aG09bWQ1LXNlc3MscW9wPSJhdXRoIg==
+REPLY dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJpbWFwL2N1cmwiLHJlc3BvbnNlPTVlNzk5N2ZhZDZjMzNiZWJmZjk3OWJkY2I4ZmU3MTZiLHFvcD1hdXRo +
+REPLY  A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+IMAP DIGEST-MD5 authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/823/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE DIGEST-MD5

+dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJpbWFwL2N1cmwiLHJlc3BvbnNlPTVlNzk5N2ZhZDZjMzNiZWJmZjk3OWJkY2I4ZmU3MTZiLHFvcD1hdXRo

+

+A003 SELECT 823

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test824 b/ap/lib/libcurl/curl-7.54.1/tests/data/test824
new file mode 100644
index 0000000..e646eec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test824
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH OAUTH2
+RFC6749
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH XOAUTH2
+REPLY AUTHENTICATE +
+REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP OAuth 2.0 (XOAUTH2) authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/824/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE XOAUTH2

+dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB

+A003 SELECT 824

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test825 b/ap/lib/libcurl/curl-7.54.1/tests/data/test825
new file mode 100644
index 0000000..6532b3a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test825
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH PLAIN
+SASL-IR
+RFC4616
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+CAPA SASL-IR
+REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP plain authentication with initial response
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/825/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE PLAIN dXNlcgB1c2VyAHNlY3JldA==

+A003 SELECT 825

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test826 b/ap/lib/libcurl/curl-7.54.1/tests/data/test826
new file mode 100644
index 0000000..0f92829
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test826
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH LOGIN
+SASL-IR
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH LOGIN
+CAPA SASL-IR
+REPLY AUTHENTICATE + UGFzc3dvcmQ6
+REPLY c2VjcmV0 A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP login authentication with initial response
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/826/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE LOGIN dXNlcg==

+c2VjcmV0

+A003 SELECT 826

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test827 b/ap/lib/libcurl/curl-7.54.1/tests/data/test827
new file mode 100644
index 0000000..5005271
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test827
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH NTLM
+SASL-IR
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+CAPA SASL-IR
+REPLY AUTHENTICATE + TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+REPLY TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+IMAP NTLM authentication with initial response
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/827/;UID=1' -u testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+A003 SELECT 827

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test828 b/ap/lib/libcurl/curl-7.54.1/tests/data/test828
new file mode 100644
index 0000000..c86516a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test828
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC6749
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH XOAUTH2
+CAPA SASL-IR
+REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP OAuth 2.0 (XOAUTH2) authentication with initial response
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/828/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB

+A003 SELECT 828

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test829 b/ap/lib/libcurl/curl-7.54.1/tests/data/test829
new file mode 100644
index 0000000..cefba0d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test829
@@ -0,0 +1,29 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+CRLF-in-URL
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP with URL-encoded CR LF in the URL
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/%0d%0a/829
+</command>
+</client>
+
+#
+<verify>
+# 3 - CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test83 b/ap/lib/libcurl/curl-7.54.1/tests/data/test83
new file mode 100644
index 0000000..120bcc6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test83
@@ -0,0 +1,79 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP CONNECT
+HTTP Basic auth
+proxytunnel
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+

+</connect>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP over proxy-tunnel with site authentication
+ </name>
+ <command>
+http://test.83:%HTTPPORT/we/want/that/page/83 -p -x %HOSTIP:%PROXYPORT --user 'iam:my:;self'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT test.83:%HTTPPORT HTTP/1.1

+Host: test.83:%HTTPPORT

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Proxy-Connection: Keep-Alive

+

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

+Host: test.83:%HTTPPORT

+Authorization: Basic aWFtOm15OjtzZWxm

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test830 b/ap/lib/libcurl/curl-7.54.1/tests/data/test830
new file mode 100644
index 0000000..5803bb1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test830
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH CRAM-MD5
+SASL CANCELLATION
+RFC2195
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5
+CAPA LOGINDISABLED
+REPLY AUTHENTICATE + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+crypto
+</features>
+ <name>
+IMAP CRAM-MD5 graceful cancellation
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/830/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "LOGOUT"
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE CRAM-MD5

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test831 b/ap/lib/libcurl/curl-7.54.1/tests/data/test831
new file mode 100644
index 0000000..8bff7ea
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test831
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH NTLM
+SASL CANCELLATION
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+CAPA LOGINDISABLED
+REPLY AUTHENTICATE +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+IMAP NTLM graceful cancellation
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/831/;UID=1' -u testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "LOGOUT"
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test832 b/ap/lib/libcurl/curl-7.54.1/tests/data/test832
new file mode 100644
index 0000000..044edb1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test832
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH DIGEST-MD5
+SASL CANCELLATION
+RFC2831
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5
+CAPA LOGINDISABLED
+REPLY AUTHENTICATE + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+IMAP DIGEST-MD5 graceful cancellation
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/832/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "LOGOUT"
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE DIGEST-MD5

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test833 b/ap/lib/libcurl/curl-7.54.1/tests/data/test833
new file mode 100644
index 0000000..b5fa03f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test833
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH CRAM-MD5
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC2195
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5 PLAIN
+REPLY "AUTHENTICATE CRAM-MD5" + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+REPLY "AUTHENTICATE PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+crypto
+</features>
+ <name>
+IMAP CRAM-MD5 authentication with SASL downgrade
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/833/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE CRAM-MD5

+*

+A003 AUTHENTICATE PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+A004 SELECT 833

+A005 FETCH 1 BODY[]

+A006 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test834 b/ap/lib/libcurl/curl-7.54.1/tests/data/test834
new file mode 100644
index 0000000..17101dd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test834
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH NTLM
+SASL AUTH PLAIN
+SASL DOWNGRADE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM PLAIN
+REPLY "AUTHENTICATE NTLM" +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+REPLY "AUTHENTICATE PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+IMAP NTLM authentication with SASL downgrade
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/834/;UID=1' -u user:secret
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+*

+A003 AUTHENTICATE PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+A004 SELECT 834

+A005 FETCH 1 BODY[]

+A006 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test835 b/ap/lib/libcurl/curl-7.54.1/tests/data/test835
new file mode 100644
index 0000000..34f28b7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test835
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH DIGEST-MD5
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC2831
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5 PLAIN
+REPLY "AUTHENTICATE DIGEST-MD5" + Rubbish
+REPLY * A002 NO AUTH exchange cancelled by client
+REPLY "AUTHENTICATE PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== A003 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+IMAP DIGEST-MD5 authentication with SASL downgrade
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/835/;UID=1' -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE DIGEST-MD5

+*

+A003 AUTHENTICATE PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+A004 SELECT 835

+A005 FETCH 1 BODY[]

+A006 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test836 b/ap/lib/libcurl/curl-7.54.1/tests/data/test836
new file mode 100644
index 0000000..035d48f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test836
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+FETCH
+connection re-use
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY "LOGIN user.one secret" A002 OK LOGIN completed

+REPLY "LOGIN user.two secret" B002 OK LOGIN completed

+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP multiple connection authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/836/;UID=1' -u user.one:secret -: 'imap://%HOSTIP:%IMAPPORT/836/;UID=2' -u user.two:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user.one secret

+A003 SELECT 836

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+B001 CAPABILITY

+B002 LOGIN user.two secret

+B003 SELECT 836

+B004 FETCH 2 BODY[]

+B005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test837 b/ap/lib/libcurl/curl-7.54.1/tests/data/test837
new file mode 100644
index 0000000..d597463
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test837
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH EXTERNAL
+RFC4422
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTHENTICATE +
+REPLY dXNlcg== A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP external authentication
+ </name>
+ <command>
+'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/837/;UID=1'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE EXTERNAL

+dXNlcg==

+A003 SELECT 837

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test838 b/ap/lib/libcurl/curl-7.54.1/tests/data/test838
new file mode 100644
index 0000000..da2d28d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test838
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH EXTERNAL
+RFC4422
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTHENTICATE +
+REPLY = A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP external authentication without credentials
+ </name>
+ <command>
+'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/838/;UID=1'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE EXTERNAL

+=

+A003 SELECT 838

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test839 b/ap/lib/libcurl/curl-7.54.1/tests/data/test839
new file mode 100644
index 0000000..2a544c1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test839
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH EXTERNAL
+SASL-IR
+RFC4422
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+CAPA SASL-IR
+REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP external authentication with initial response
+ </name>
+ <command>
+'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/839/;UID=1'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE EXTERNAL dXNlcg==

+A003 SELECT 839

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test84 b/ap/lib/libcurl/curl-7.54.1/tests/data/test84
new file mode 100644
index 0000000..629dae2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test84
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+
+contents
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP over proxy with site authentication
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/that/page/84 -x %HOSTIP:%HTTPPORT --user iam:myself
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/we/want/that/page/84 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic aWFtOm15c2VsZg==

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test840 b/ap/lib/libcurl/curl-7.54.1/tests/data/test840
new file mode 100644
index 0000000..eaf1aee
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test840
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH EXTERNAL
+SASL-IR
+RFC4422
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+CAPA SASL-IR
+REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP external authentication with initial response without credentials
+ </name>
+ <command>
+'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/840/;UID=1'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE EXTERNAL =

+A003 SELECT 840

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test841 b/ap/lib/libcurl/curl-7.54.1/tests/data/test841
new file mode 100644
index 0000000..839bfe3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test841
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+FETCH
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+body

+

++ Curl did not used to like this line

+--

+  yours sincerely

+</data>
+<datacheck>
+* 123 FETCH (BODY[1] {70}

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP custom request doesn't check continuation data
+ </name>
+ <command>
+ imap://%HOSTIP:%IMAPPORT/841/ -u user:secret -X 'FETCH 123 BODY[1]'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT 841

+A004 FETCH 123 BODY[1]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test842 b/ap/lib/libcurl/curl-7.54.1/tests/data/test842
new file mode 100644
index 0000000..d5aabbc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test842
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH OAUTH2
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTHENTICATE +
+REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP OAuth 2.0 (OAUTHBEARER) authentication
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/842/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%IMAPPORT' ne '9003' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE OAUTHBEARER

+dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+A003 SELECT 842

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test843 b/ap/lib/libcurl/curl-7.54.1/tests/data/test843
new file mode 100644
index 0000000..a1c31a4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test843
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+CAPA SASL-IR
+REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP OAuth 2.0 (OAUTHBEARER) authentication with initial response
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/843/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%IMAPPORT' ne '9003' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+A003 SELECT 843

+A004 FETCH 1 BODY[]

+A005 LOGOUT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test844 b/ap/lib/libcurl/curl-7.54.1/tests/data/test844
new file mode 100644
index 0000000..055a9d2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test844
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH OAUTH2
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTHENTICATE +
+REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0=
+REPLY AQ== A002 NO Authentication failed
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/844/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%IMAPPORT' ne '9003' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "LOGOUT"
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE OAUTHBEARER

+dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+AQ==

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test845 b/ap/lib/libcurl/curl-7.54.1/tests/data/test845
new file mode 100644
index 0000000..e23b3d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test845
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+CAPA SASL-IR
+REPLY AUTHENTICATE + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0=
+REPLY AQ== A002 NO Authentication failed
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/845/;UID=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%IMAPPORT' ne '9003' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "LOGOUT"
+<protocol>
+A001 CAPABILITY

+A002 AUTHENTICATE OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMwFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+AQ==

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test85 b/ap/lib/libcurl/curl-7.54.1/tests/data/test85
new file mode 100644
index 0000000..cb5e6e0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test85
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP Basic auth
+HTTP proxy
+HTTP proxy Basic auth
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP over proxy with site and proxy authentication
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/that/page/85 -x %HOSTIP:%HTTPPORT --user iam:myself --proxy-user testing:this
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/we/want/that/page/85 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Proxy-Authorization: Basic dGVzdGluZzp0aGlz

+Authorization: Basic aWFtOm15c2VsZg==

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test850 b/ap/lib/libcurl/curl-7.54.1/tests/data/test850
new file mode 100644
index 0000000..6176101
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test850
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+RETR
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 RETR message
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/850 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+RETR 850

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test851 b/ap/lib/libcurl/curl-7.54.1/tests/data/test851
new file mode 100644
index 0000000..60c49c4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test851
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+LIST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+# include the '.\r\n' 3-byte trailer to end the transfer poperly!
+REPLY LIST +OK 851 100\r\n.
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 LIST one message
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/851 -l -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+LIST 851

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test852 b/ap/lib/libcurl/curl-7.54.1/tests/data/test852
new file mode 100644
index 0000000..de9fbe2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test852
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+LIST
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY LIST -ERR no such message
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 LIST invalid message
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/852 -l -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+56
+</errorcode>
+<protocol>
+CAPA

+USER user

+PASS secret

+LIST 852

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test853 b/ap/lib/libcurl/curl-7.54.1/tests/data/test853
new file mode 100644
index 0000000..a3b9688
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test853
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+LIST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+# We use SLOWDOWN to really exercise the end-of-body parsing over multiple
+# packets
+<servercmd>
+SLOWDOWN
+</servercmd>
+# When doing LIST, we get the default list output hard-coded in the test
+# POP3 server
+<datacheck>
+1 100

+2 4294967400

+3 200

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 LIST messages from *SLOW* server
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/ -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test854 b/ap/lib/libcurl/curl-7.54.1/tests/data/test854
new file mode 100644
index 0000000..a8a18b6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test854
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+LIST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY LIST +OK but no messages\r\n.
+</servercmd>
+<datacheck>
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 LIST no messages available
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/ -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+LIST

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test855 b/ap/lib/libcurl/curl-7.54.1/tests/data/test855
new file mode 100644
index 0000000..87fe744
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test855
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+RETR
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY RETR -ERR no such message
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 RETR invalid message
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/855 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+56
+</errorcode>
+<protocol>
+CAPA

+USER user

+PASS secret

+RETR 855

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test856 b/ap/lib/libcurl/curl-7.54.1/tests/data/test856
new file mode 100644
index 0000000..4d8d7ed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test856
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+FAILURE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 invalid login
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/856 -u user:wrong
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+CAPA

+USER user

+PASS wrong

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test857 b/ap/lib/libcurl/curl-7.54.1/tests/data/test857
new file mode 100644
index 0000000..055e35c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test857
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+RETR
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+..body with a single dot first

+...triple dots...

+

+--

+  yours sincerely

+</data>
+<datacheck>
+From: me@somewhere

+To: fake@nowhere

+

+.body with a single dot first

+..triple dots...

+

+--

+  yours sincerely

+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 RETR message with dot-prefixed line
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/857 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+RETR 857

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test858 b/ap/lib/libcurl/curl-7.54.1/tests/data/test858
new file mode 100644
index 0000000..926dcd9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test858
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+DELE
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 DELE message (CUSTOMREQUEST)
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/858 -u user:secret -X DELE -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+DELE 858

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test859 b/ap/lib/libcurl/curl-7.54.1/tests/data/test859
new file mode 100644
index 0000000..3d2e1c7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test859
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+STAT
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 STAT (CUSTOMREQUEST)
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT -u user:secret -X STAT -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+STAT

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test86 b/ap/lib/libcurl/curl-7.54.1/tests/data/test86
new file mode 100644
index 0000000..a69509a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test86
@@ -0,0 +1,97 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+[] range
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
+ETag: "21025-dc7-39462498"
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+Content-Type: text/html
+Funny-head: yesyes
+
+-foo-
+</data>
+<data1>
+HTTP/1.0 200 OK
+Content-Type: text/html
+Funny-head: swsclose
+
+crap data
+</data1>
+<data2>
+HTTP/1.0 200 OK
+Content-Type: text/html
+Funny-head: swsclose
+
+crap data
+</data2>
+<data3>
+HTTP/1.0 200 OK
+Content-Type: text/html
+Funny-head: swsclose
+
+crap data
+</data3>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP, urlglob []-retrieval and -o #[num] usage
+ </name>
+ <command option="no-output">
+"http://%HOSTIP:%HTTPPORT/[860001-860003]" -o "log/dumpit#1.dump"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /860001 HTTP/1.1

+User-Agent: curl/7.10.7-pre4 (i686-pc-linux-gnu) libcurl/7.10.7-pre4 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /860002 HTTP/1.1

+User-Agent: curl/7.10.7-pre4 (i686-pc-linux-gnu) libcurl/7.10.7-pre4 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /860003 HTTP/1.1

+User-Agent: curl/7.10.7-pre4 (i686-pc-linux-gnu) libcurl/7.10.7-pre4 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+
+# we check the second file
+<file name="log/dumpit860002.dump">
+HTTP/1.0 200 OK
+Content-Type: text/html
+Funny-head: swsclose
+
+crap data
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test860 b/ap/lib/libcurl/curl-7.54.1/tests/data/test860
new file mode 100644
index 0000000..26809bf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test860
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+NOOP
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 NOOP (CUSTOMREQUEST)
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT -u user:secret -X NOOP -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+NOOP

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test861 b/ap/lib/libcurl/curl-7.54.1/tests/data/test861
new file mode 100644
index 0000000..4cc3987
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test861
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+UIDL
+CUSTOMREQUEST
+RFC2449
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>

+CAPA UIDL USER

+</servercmd>

+# When doing UIDL, we get the default list output hard-coded in the test

+# POP3 server

+<datacheck>

+1 1

+2 2

+3 4

+</datacheck>

+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 UIDL (CUSTOMREQUEST)
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT -u user:secret -X UIDL
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+UIDL

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test862 b/ap/lib/libcurl/curl-7.54.1/tests/data/test862
new file mode 100644
index 0000000..a21b514
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test862
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+TOP
+CUSTOMREQUEST
+RFC2449
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>

+CAPA TOP USER

+</servercmd>

+<data>

+From: me@somewhere

+To: fake@nowhere

+

+</data>

+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 retrieve message header (CUSTOMREQUEST)
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT -u user:secret -X 'TOP 862 0'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+TOP 862 0

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test863 b/ap/lib/libcurl/curl-7.54.1/tests/data/test863
new file mode 100644
index 0000000..940045f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test863
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+RSET
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 RSET (CUSTOMREQUEST)
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT -u user:secret -X RSET -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user

+PASS secret

+RSET

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test864 b/ap/lib/libcurl/curl-7.54.1/tests/data/test864
new file mode 100644
index 0000000..ebdebd6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test864
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+POP3
+APOP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+CAPA APOP
+REPLY welcome +OK curl POP3 server ready to serve <1972.987654321\@curl>
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+crypto
+</features>
+ <name>
+POP3 APOP authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/864 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+APOP user 7501b4cdc224d469940e65e7b5e4d6eb

+RETR 864

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test865 b/ap/lib/libcurl/curl-7.54.1/tests/data/test865
new file mode 100644
index 0000000..6f66f82
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test865
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH PLAIN
+RFC1734
+RFC4616
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+REPLY AUTH +
+REPLY dXNlcgB1c2VyAHNlY3JldA== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 plain authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/865 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+RETR 865

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test866 b/ap/lib/libcurl/curl-7.54.1/tests/data/test866
new file mode 100644
index 0000000..8fee23a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test866
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH LOGIN
+RFC1734
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH LOGIN
+REPLY AUTH + VXNlcm5hbWU6
+REPLY dXNlcg== + UGFzc3dvcmQ6
+REPLY c2VjcmV0 +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 login authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/866 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH LOGIN

+dXNlcg==

+c2VjcmV0

+RETR 866

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test867 b/ap/lib/libcurl/curl-7.54.1/tests/data/test867
new file mode 100644
index 0000000..139b467
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test867
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH CRAM-MD5
+RFC1734
+RFC2195
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5
+REPLY AUTH + PDE5NzIuOTg3NjU0MzIxQGN1cmw+
+REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+crypto
+</features>
+ <name>
+POP3 CRAM-MD5 authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/867 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH CRAM-MD5

+dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg==

+RETR 867

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test868 b/ap/lib/libcurl/curl-7.54.1/tests/data/test868
new file mode 100644
index 0000000..30426fb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test868
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH NTLM
+RFC1734
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTH +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+REPLY TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+POP3 NTLM authentication
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+pop3://%HOSTIP:%POP3PORT/868 -u testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+RETR 868

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test869 b/ap/lib/libcurl/curl-7.54.1/tests/data/test869
new file mode 100644
index 0000000..ecc422c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test869
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH DIGEST-MD5
+RFC1734
+RFC2831
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5
+REPLY AUTH + cmVhbG09ImN1cmwiLG5vbmNlPSI1MzAwZDE3YTFkNjk1YmQ0MTFlNGNkZjk2Zjk1NDhjMjNjZWQ2MTc1IixhbGdvcml0aG09bWQ1LXNlc3MscW9wPSJhdXRoIg==
+REPLY dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJwb3AvY3VybCIscmVzcG9uc2U9YzNhMGFiZTc5NDYyNTIyNGY5Njg3YTYzMTc3ZmRhNWIscW9wPWF1dGg= +
+REPLY  +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+POP3 DIGEST-MD5 authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/869 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH DIGEST-MD5

+dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJwb3AvY3VybCIscmVzcG9uc2U9YzNhMGFiZTc5NDYyNTIyNGY5Njg3YTYzMTc3ZmRhNWIscW9wPWF1dGg=

+

+RETR 869

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test87 b/ap/lib/libcurl/curl-7.54.1/tests/data/test87
new file mode 100644
index 0000000..ee5be78
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test87
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+globbing
+[] range
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data1>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 15

+

+the number one
+</data1>
+<data2>
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 16

+

+two is nice too
+</data2>
+
+</reply>
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+http
+</features>
+ <name>
+urlglob with out of range -o #[num] usage
+ </name>
+ <command option="no-output">
+"http://%HOSTIP:%HTTPPORT/[870001-870002]" -o "log/dumpit87-#2.dump"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot". Note that the command line
+# will write both responses into the same file name so only the second
+# survives
+#
+<verify>
+<file name="log/dumpit87-#2.dump">
+HTTP/1.1 200 OK

+Funny-head: yesyes

+Content-Length: 16

+

+two is nice too
+</file>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test870 b/ap/lib/libcurl/curl-7.54.1/tests/data/test870
new file mode 100644
index 0000000..f6333f7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test870
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH OAUTH2
+RFC1734
+RFC5034
+RFC6749
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH XOAUTH2
+REPLY AUTH +
+REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 OAuth 2.0 (XOAUTH2) authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/870 -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH XOAUTH2

+dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB

+RETR 870

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test871 b/ap/lib/libcurl/curl-7.54.1/tests/data/test871
new file mode 100644
index 0000000..f4f2360
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test871
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH PLAIN
+SASL-IR
+RFC1734
+RFC4616
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+REPLY AUTH +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 plain authentication with initial response
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/871 -u user:secret --sasl-ir
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH PLAIN dXNlcgB1c2VyAHNlY3JldA==

+RETR 871

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test872 b/ap/lib/libcurl/curl-7.54.1/tests/data/test872
new file mode 100644
index 0000000..05cb2a2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test872
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH LOGIN
+SASL-IR
+RFC1734
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH LOGIN
+REPLY AUTH + UGFzc3dvcmQ6
+REPLY c2VjcmV0 +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 login authentication with initial response
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/872 -u user:secret --sasl-ir
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH LOGIN dXNlcg==

+c2VjcmV0

+RETR 872

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test873 b/ap/lib/libcurl/curl-7.54.1/tests/data/test873
new file mode 100644
index 0000000..448e8e2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test873
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH NTLM
+SASL-IR
+RFC1734
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTH + TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
+REPLY TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+POP3 NTLM authentication with initial response
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+pop3://%HOSTIP:%POP3PORT/873 -u testuser:testpass --sasl-ir
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+RETR 873

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test874 b/ap/lib/libcurl/curl-7.54.1/tests/data/test874
new file mode 100644
index 0000000..d1030da
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test874
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC1734
+RFC5034
+RFC6749
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH XOAUTH2
+REPLY AUTH +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 OAuth 2.0 (XOAUTH2) authentication with initial response
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/874 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB

+RETR 874

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test875 b/ap/lib/libcurl/curl-7.54.1/tests/data/test875
new file mode 100644
index 0000000..53e9940
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test875
@@ -0,0 +1,29 @@
+<testcase>
+<info>
+<keywords>
+POP3
+CRLF-in-URL
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 with URL-encoded CR LF in the URL
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/%0d%0a/875
+</command>
+</client>
+
+#
+<verify>
+# 3 - CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test876 b/ap/lib/libcurl/curl-7.54.1/tests/data/test876
new file mode 100644
index 0000000..6d30e53
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test876
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH CRAM-MD5
+SASL CANCELLATION
+RFC1734
+RFC2195
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5
+REPLY AUTH + Rubbish
+REPLY * -ERR AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+crypto
+</features>
+ <name>
+POP3 CRAM-MD5 graceful cancellation
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/876 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+CAPA

+AUTH CRAM-MD5

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test877 b/ap/lib/libcurl/curl-7.54.1/tests/data/test877
new file mode 100644
index 0000000..c477594
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test877
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH NTLM
+SASL CANCELLATION
+RFC1734
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTH +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish
+REPLY * -ERR AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+POP3 NTLM graceful cancellation
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+pop3://%HOSTIP:%POP3PORT/877 -u testuser:testpass
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+CAPA

+AUTH NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test878 b/ap/lib/libcurl/curl-7.54.1/tests/data/test878
new file mode 100644
index 0000000..98961fb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test878
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH DIGEST-MD5
+SASL CANCELLATION
+RFC1734
+RFC2831
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5
+REPLY AUTH + Rubbish
+REPLY * -ERR AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+POP3 DIGEST-MD5 graceful cancellation
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/878 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+CAPA

+AUTH DIGEST-MD5

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test879 b/ap/lib/libcurl/curl-7.54.1/tests/data/test879
new file mode 100644
index 0000000..681d779
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test879
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH CRAM-MD5
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC1734
+RFC2195
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5 PLAIN
+REPLY "AUTH CRAM-MD5" + Rubbish
+REPLY * -ERR AUTH exchange cancelled by client
+REPLY "AUTH PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+crypto
+</features>
+ <name>
+POP3 CRAM-MD5 authentication with SASL downgrade
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/879 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH CRAM-MD5

+*

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+RETR 879

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test88 b/ap/lib/libcurl/curl-7.54.1/tests/data/test88
new file mode 100644
index 0000000..e2d019c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test88
@@ -0,0 +1,101 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+HTTP Digest auth
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<servercmd>
+auth_required
+</servercmd>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

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

+Connection: close

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a
+# Authorization: Digest line passed-in from the client
+<data1000>
+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Content-Type: text/html; charset=iso-8859-1

+Connection: close

+

+This IS the real page!
+</data1000>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"

+Content-Type: text/html; charset=iso-8859-1

+Connection: close

+

+HTTP/1.1 200 OK swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+Content-Type: text/html; charset=iso-8859-1

+Connection: close

+

+This IS the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+!SSPI
+crypto
+</features>
+ <name>
+HTTP PUT with Digest authorization
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/88 -T log/put88 -u testuser:testpass --digest
+</command>
+<file name="log/put88">
+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /88 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 0

+

+PUT /88 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/88", response="78a49fa53d0c228778297687d4168e71"

+User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+Content-Length: 85

+Expect: 100-continue

+

+This is data we upload with PUT
+a second line
+line three
+four is the number of lines
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test880 b/ap/lib/libcurl/curl-7.54.1/tests/data/test880
new file mode 100644
index 0000000..f5eb697
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test880
@@ -0,0 +1,77 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH NTLM
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC1734
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM PLAIN
+REPLY "AUTH NTLM" +
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish
+REPLY * -ERR AUTH exchange cancelled by client
+REPLY "AUTH PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+POP3 NTLM authentication with SASL downgrade
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+pop3://%HOSTIP:%POP3PORT/880 -u user:secret
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+*

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+RETR 880

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test881 b/ap/lib/libcurl/curl-7.54.1/tests/data/test881
new file mode 100644
index 0000000..80eca50
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test881
@@ -0,0 +1,68 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH DIGEST-MD5
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC1734
+RFC2831
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5 PLAIN
+REPLY "AUTH DIGEST-MD5" + Rubbish
+REPLY * -ERR AUTH exchange cancelled by client
+REPLY "AUTH PLAIN" +
+REPLY dXNlcgB1c2VyAHNlY3JldA== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+POP3 DIGEST-MD5 authentication with SASL downgrade
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/881 -u user:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH DIGEST-MD5

+*

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+RETR 881

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test882 b/ap/lib/libcurl/curl-7.54.1/tests/data/test882
new file mode 100644
index 0000000..1e321ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test882
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+POP3
+Clear Text
+RETR
+connection re-use
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY "PASS secret" +OK Login successful

+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 multiple connection authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/882001 -u user.one:secret -: pop3://%HOSTIP:%POP3PORT/882002 -u user.two:secret
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+USER user.one

+PASS secret

+RETR 882001

+QUIT

+CAPA

+USER user.two

+PASS secret

+RETR 882002

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test883 b/ap/lib/libcurl/curl-7.54.1/tests/data/test883
new file mode 100644
index 0000000..5d5a756
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test883
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH EXTERNAL
+RFC1734
+RFC4422
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH +
+REPLY dXNlcg== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 external authentication
+ </name>
+ <command>
+'pop3://user;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/883'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH EXTERNAL

+dXNlcg==

+RETR 883

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test884 b/ap/lib/libcurl/curl-7.54.1/tests/data/test884
new file mode 100644
index 0000000..34fd94d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test884
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH EXTERNAL
+RFC1734
+RFC4422
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH +
+REPLY = +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 external authentication without credentials
+ </name>
+ <command>
+'pop3://;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/884'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH EXTERNAL

+=

+RETR 884

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test885 b/ap/lib/libcurl/curl-7.54.1/tests/data/test885
new file mode 100644
index 0000000..581e9b2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test885
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH EXTERNAL
+SASL-IR
+RFC1734
+RFC4422
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 external authentication with initial response
+ </name>
+ <command>
+'pop3://user;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/885' --sasl-ir
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH EXTERNAL dXNlcg==

+RETR 885

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test886 b/ap/lib/libcurl/curl-7.54.1/tests/data/test886
new file mode 100644
index 0000000..3aca2f1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test886
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH EXTERNAL
+SASL-IR
+RFC1734
+RFC4422
+RFC5034
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 external authentication with initial response without credentials
+ </name>
+ <command>
+'pop3://;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/886' --sasl-ir
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH EXTERNAL =

+RETR 886

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test887 b/ap/lib/libcurl/curl-7.54.1/tests/data/test887
new file mode 100644
index 0000000..fed4e3d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test887
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH OAUTH2
+RFC1734
+RFC5034
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH +
+REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 OAuth 2.0 (OAUTHBEARER) authentication
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/887 -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%POP3PORT' ne '9001' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH OAUTHBEARER

+dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+RETR 887

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test888 b/ap/lib/libcurl/curl-7.54.1/tests/data/test888
new file mode 100644
index 0000000..c52974f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test888
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC1734
+RFC5034
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH +OK Login successful
+</servercmd>
+<data>
+From: me@somewhere

+To: fake@nowhere

+

+body

+

+--

+  yours sincerely

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 OAuth 2.0 (OAUTHBEARER) authentication with initial response
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/888 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%POP3PORT' ne '9001' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+CAPA

+AUTH OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+RETR 888

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test889 b/ap/lib/libcurl/curl-7.54.1/tests/data/test889
new file mode 100644
index 0000000..da26a37
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test889
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH OAUTH2
+RFC1734
+RFC5034
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH +
+REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0
+REPLY AQ== -ERR Authentication failed
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 OAuth 2.0 (OAUTHBEARER) failure as continuation
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/889 -u user --oauth2-bearer mF_9.B5f-4.1JqM
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%POP3PORT' ne '9001' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+CAPA

+AUTH OAUTHBEARER

+dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+AQ==

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test89 b/ap/lib/libcurl/curl-7.54.1/tests/data/test89
new file mode 100644
index 0000000..1443a97
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test89
@@ -0,0 +1,147 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<!-- no <data> in this test since we have NTLM from the start
+
+This is supposed to be returned when the server gets a first
+Authorization: NTLM line passed-in from the client -->
+
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 301 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Connection: close

+Location: /you/890010

+

+</data1002>
+
+# This is the first reply after the redirection
+<data1011>
+HTTP/1.1 401 Now gimme that second round of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1011>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1012>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 32

+

+Finally, this is the real page!
+</data1012>
+
+<datacheck>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 301 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Connection: close

+Location: /you/890010

+

+HTTP/1.1 401 Now gimme that second round of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM and follow-location
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/89 -u testuser:testpass --ntlm -L
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /89 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /89 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /you/890010 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Accept: */*

+

+GET /you/890010 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAOv8cm3wOKJ5nhWWScOgdUI2MzIxNzMyMVgNcU0f3zxHeccvitN7zHkBAQAAAAAAAACAPtXesZ0BNjMyMTczMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test890 b/ap/lib/libcurl/curl-7.54.1/tests/data/test890
new file mode 100644
index 0000000..30aa0b2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test890
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+POP3
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC1734
+RFC5034
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0
+REPLY AQ== -ERR Authentication failed
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+pop3
+</server>
+ <name>
+POP3 OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/890 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%POP3PORT' ne '9001' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+CAPA

+AUTH OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwMQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+AQ==

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test9 b/ap/lib/libcurl/curl-7.54.1/tests/data/test9
new file mode 100644
index 0000000..7905ac8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test9
@@ -0,0 +1,73 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP FORMPOST
+HTTP file upload
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK swsclose
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+
+blablabla
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP RFC1867-type formposting
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/we/want/9 -F name=daniel -F tool=curl -F file=@log/test9.txt
+</command>
+# We create this file before the command is invoked!
+<file name="log/test9.txt">
+foo-
+This is a moo-
+bar
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^(User-Agent:|Content-Type: multipart/form-data;|------------).*
+</strip>
+<protocol>
+POST /we/want/9 HTTP/1.1

+User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 407

+Expect: 100-continue

+Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763

+

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="name"

+

+daniel

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="tool"

+

+curl

+------------------------------9ef8d6205763

+Content-Disposition: form-data; name="file"; filename="test9.txt"

+Content-Type: text/plain

+

+foo-
+This is a moo-
+bar
+

+------------------------------9ef8d6205763--

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test90 b/ap/lib/libcurl/curl-7.54.1/tests/data/test90
new file mode 100644
index 0000000..f18e3df
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test90
@@ -0,0 +1,193 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+--anyauth
+followlocation
+</keywords>
+</info>
+# Server-side
+<reply>
+
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic

+WWW-Authenticate: Wild-and-crazy

+WWW-Authenticate: NTLM

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 26

+

+This is not the real page
+</data>
+
+# This is supposed to be returned when the server gets a first
+# Authorization: NTLM line passed-in from the client
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 301 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Connection: close

+Location: /you/900010

+

+</data1002>
+
+# This is the first reply after the redirection
+<data10>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic

+WWW-Authenticate: Wild-and-crazy

+WWW-Authenticate: NTLM

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 26

+

+This is not the real page
+</data10>
+
+<data1011>
+HTTP/1.1 401 Now gimme that second round of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1011>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1012>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 32

+

+Finally, this is the real page!
+</data1012>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic

+WWW-Authenticate: Wild-and-crazy

+WWW-Authenticate: NTLM

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 26

+

+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 301 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Connection: close

+Location: /you/900010

+

+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Basic

+WWW-Authenticate: Wild-and-crazy

+WWW-Authenticate: NTLM

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 26

+

+HTTP/1.1 401 Now gimme that second round of crap

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 34

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM via --anyauth, and then follow-location with NTLM again
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/90 -u testuser:testpass --anyauth -L
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /90 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /90 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /90 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /you/900010 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /you/900010 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Accept: */*

+

+GET /you/900010 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAOv8cm3wOKJ5nhWWScOgdUI2MzIxNzMyMVgNcU0f3zxHeccvitN7zHkBAQAAAAAAAACAPtXesZ0BNjMyMTczMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test900 b/ap/lib/libcurl/curl-7.54.1/tests/data/test900
new file mode 100644
index 0000000..0dd7f52
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test900
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/900 --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 900

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test901 b/ap/lib/libcurl/curl-7.54.1/tests/data/test901
new file mode 100644
index 0000000..8148b29
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test901
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with CRLF-dot-CRLF in data
+ </name>
+<stdin>
+From: different

+To: another

+

+

+.

+.

+

+.

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/901 --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 901

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+

+..

+..

+

+..

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test902 b/ap/lib/libcurl/curl-7.54.1/tests/data/test902
new file mode 100644
index 0000000..8ee105f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test902
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SMTP HELO
+RFC821
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY EHLO 500 Command unrecognized
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+RFC821-only SMTP server (EHLO not supported)
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/902 --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 902

+HELO 902

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test903 b/ap/lib/libcurl/curl-7.54.1/tests/data/test903
new file mode 100644
index 0000000..2baf5e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test903
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH PLAIN
+RFC4616
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+REPLY AUTH 334 PLAIN supported
+REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP plain authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/903 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 903

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test904 b/ap/lib/libcurl/curl-7.54.1/tests/data/test904
new file mode 100644
index 0000000..dd3dad0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test904
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH LOGIN
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH LOGIN
+REPLY AUTH 334 VXNlcm5hbWU6
+REPLY dXNlcg== 334 UGFzc3dvcmQ6
+REPLY c2VjcmV0 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP login authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/904 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 904

+AUTH LOGIN

+dXNlcg==

+c2VjcmV0

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test905 b/ap/lib/libcurl/curl-7.54.1/tests/data/test905
new file mode 100644
index 0000000..565b041
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test905
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH CRAM-MD5
+RFC2195
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5
+REPLY AUTH 334 PDE5NzIuOTg3NjU0MzIxQGN1cmw+
+REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+crypto
+</features>
+ <name>
+SMTP CRAM-MD5 authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/905 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 905

+AUTH CRAM-MD5

+dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test906 b/ap/lib/libcurl/curl-7.54.1/tests/data/test906
new file mode 100644
index 0000000..6774561
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test906
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH NTLM
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTH 334 NTLM supported
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+REPLY TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+SMTP NTLM authentication
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/906 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T -
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 906

+AUTH NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test907 b/ap/lib/libcurl/curl-7.54.1/tests/data/test907
new file mode 100644
index 0000000..c19e1e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test907
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH DIGEST-MD5
+RFC2831
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5
+REPLY AUTH 334 cmVhbG09ImN1cmwiLG5vbmNlPSI1MzAwZDE3YTFkNjk1YmQ0MTFlNGNkZjk2Zjk1NDhjMjNjZWQ2MTc1IixhbGdvcml0aG09bWQ1LXNlc3MscW9wPSJhdXRoIg==
+REPLY dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJzbXRwL2N1cmwiLHJlc3BvbnNlPTk0M2YxNjk1OWYxY2M2ZjA3ZTZmMDk0ZjVkYmQ0NzNlLHFvcD1hdXRo 334
+REPLY  235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+SMTP DIGEST-MD5 authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/907 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 907

+AUTH DIGEST-MD5

+dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJzbXRwL2N1cmwiLHJlc3BvbnNlPTk0M2YxNjk1OWYxY2M2ZjA3ZTZmMDk0ZjVkYmQ0NzNlLHFvcD1hdXRo

+

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test908 b/ap/lib/libcurl/curl-7.54.1/tests/data/test908
new file mode 100644
index 0000000..bf0b45a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test908
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH OAUTH2
+RFC4954
+RFC6749
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH XOAUTH2
+REPLY AUTH 334 XOAUTH2 supported
+REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP OAuth 2.0 (XOAUTH2) authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/908 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 908

+AUTH XOAUTH2

+dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test909 b/ap/lib/libcurl/curl-7.54.1/tests/data/test909
new file mode 100644
index 0000000..e3e907a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test909
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP without SIZE support
+ </name>
+<file name="log/test909.eml">
+From: different

+To: another

+

+body

+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/909 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/test909.eml
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 909

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test91 b/ap/lib/libcurl/curl-7.54.1/tests/data/test91
new file mode 100644
index 0000000..cd28142
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test91
@@ -0,0 +1,124 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP NTLM auth
+</keywords>
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Magic-Negotiate

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="daniel"

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 0

+Connection: close

+

+</data>
+
+# This is supposed to be returned when the server gets a first
+# Authorization: NTLM line passed-in from the client
+<data1001>
+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Length: 34

+Content-Type: text/html; charset=iso-8859-1

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+This is not the real page either!
+</data1001>
+
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 32

+

+Finally, this is the real page!
+</data1002>
+
+<datacheck>
+HTTP/1.1 401 Authorization Required swsclose

+Server: Apache/1.3.27 (Darwin) PHP/4.1.2

+WWW-Authenticate: Magic-Negotiate

+WWW-Authenticate: NTLM

+WWW-Authenticate: Basic realm="daniel"

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 0

+Connection: close

+

+HTTP/1.1 401 Now gimme that second request of crap

+Server: Microsoft-IIS/5.0

+Content-Length: 34

+Content-Type: text/html; charset=iso-8859-1

+WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+

+HTTP/1.1 200 Things are fine in server land swsclose

+Server: Microsoft-IIS/5.0

+Content-Type: text/html; charset=iso-8859-1

+Content-Length: 32

+

+Finally, this is the real page!
+</datacheck>
+
+</reply>
+
+# Client-side
+<client>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP with NTLM/Negotiate/Basic, anyauth and user with domain, with size 0
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+http://%HOSTIP:%HTTPPORT/91 --anyauth -u mydomain\\myself:secret
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /91 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /91 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+GET /91 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAgACAD2AAAABgAGAP4AAAAIAAgABAEAAAAAAAAAAAAABoKBALJ3z6fQtyQwuFxoPXldKtQ0MzIxNTMyMWnrkzKLCbw9LP1SuH/yJwABAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAbXlkb21haW5teXNlbGZjdXJsaG9zdA==

+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test910 b/ap/lib/libcurl/curl-7.54.1/tests/data/test910
new file mode 100644
index 0000000..c1b84ac
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test910
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP without terminating CRLF
+ </name>
+<stdin nonewline="yes">
+From: different

+To: another

+

+body
+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/910 --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 910

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test911 b/ap/lib/libcurl/curl-7.54.1/tests/data/test911
new file mode 100644
index 0000000..cc87349
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test911
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with no mail data
+ </name>
+
+<stdin nonewline="yes">
+
+</stdin>
+
+ <command>
+smtp://%HOSTIP:%SMTPPORT/911 --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 911

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test912 b/ap/lib/libcurl/curl-7.54.1/tests/data/test912
new file mode 100644
index 0000000..8970c3f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test912
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SIZE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+CAPA SIZE
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with SIZE support
+ </name>
+<file name="log/test912.eml">
+From: different

+To: another

+

+body

+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/912 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/test912.eml
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 912

+MAIL FROM:<sender@example.com> SIZE=38

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test913 b/ap/lib/libcurl/curl-7.54.1/tests/data/test913
new file mode 100644
index 0000000..d13a11a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test913
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SIZE
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+CAPA "SIZE 32"
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with large message SIZE
+ </name>
+<file name="log/test913.eml">
+From: different

+To: another

+

+body

+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/913 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/test913.eml
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 55 - CURLE_SEND_ERROR
+<errorcode>
+55
+</errorcode>
+<protocol>
+EHLO 913

+MAIL FROM:<sender@example.com> SIZE=38

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test914 b/ap/lib/libcurl/curl-7.54.1/tests/data/test914
new file mode 100644
index 0000000..d1532c8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test914
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP invalid --mail-from
+ </name>
+<file name="log/test914.eml">
+From: different

+To: another

+

+body

+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/914 --mail-rcpt recipient@example.com --mail-from invalid -T log/test914.eml
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 55 - CURLE_SEND_ERROR
+<errorcode>
+55
+</errorcode>
+<protocol>
+EHLO 914

+MAIL FROM:<invalid>

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test915 b/ap/lib/libcurl/curl-7.54.1/tests/data/test915
new file mode 100644
index 0000000..4d31db3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test915
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP without --mail-from
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/915 --mail-rcpt recipient@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 915

+MAIL FROM:<>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test916 b/ap/lib/libcurl/curl-7.54.1/tests/data/test916
new file mode 100644
index 0000000..0021155
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test916
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with invalid --mail-rcpt
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/916 --mail-rcpt invalid --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 55 - CURLE_SEND_ERROR
+<errorcode>
+55
+</errorcode>
+<protocol>
+EHLO 916

+MAIL FROM:<sender@example.com>

+RCPT TO:<invalid>

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test917 b/ap/lib/libcurl/curl-7.54.1/tests/data/test917
new file mode 100644
index 0000000..cc75da3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test917
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with multiple --mail-rcpt
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/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 -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 917

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient.one@example.com>

+RCPT TO:<recipient.two@example.com>

+RCPT TO:<recipient.three@example.com>

+RCPT TO:<recipient.four@example.com>

+RCPT TO:<recipient.five@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test918 b/ap/lib/libcurl/curl-7.54.1/tests/data/test918
new file mode 100644
index 0000000..3756edd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test918
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with multiple and invalid --mail-rcpt
+ </name>
+<stdin>
+From: different

+To: another

+

+body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/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 -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 55 - CURLE_SEND_ERROR
+<errorcode>
+55
+</errorcode>
+<protocol>
+EHLO 918

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient.one@example.com>

+RCPT TO:<invalid>

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test919 b/ap/lib/libcurl/curl-7.54.1/tests/data/test919
new file mode 100644
index 0000000..3e74494
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test919
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH PLAIN
+SASL-IR
+RFC4616
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+REPLY AUTH 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP plain authentication with initial response
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/919 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 919

+AUTH PLAIN dXNlcgB1c2VyAHNlY3JldA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test92 b/ap/lib/libcurl/curl-7.54.1/tests/data/test92
new file mode 100644
index 0000000..1304c81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test92
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Content-Range
+Resume
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+HTTP/1.1 416 Requested Range Not Satisfiable

+Date: Fri, 24 Oct 2003 21:33:12 GMT

+Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1

+Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT

+ETag: "ab57a-507-3f9968f3"

+Accept-Ranges: bytes

+Content-Length: 4

+Content-Range: bytes */87

+Content-Type: image/gif

+

+bad
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP resume transfer with the whole file already downloaded
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/92 -C 87
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /want/92 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=87-

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test920 b/ap/lib/libcurl/curl-7.54.1/tests/data/test920
new file mode 100644
index 0000000..82f6c56
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test920
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH LOGIN
+SASL-IR
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH LOGIN
+REPLY AUTH 334 UGFzc3dvcmQ6
+REPLY c2VjcmV0 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP login authentication with initial response
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/920 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 920

+AUTH LOGIN dXNlcg==

+c2VjcmV0

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test921 b/ap/lib/libcurl/curl-7.54.1/tests/data/test921
new file mode 100644
index 0000000..e11fe4f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test921
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH NTLM
+SASL-IR
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTH 334 TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==

+REPLY TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+NTLM
+!SSPI
+debug
+</features>
+ <name>
+SMTP NTLM authentication with initial response
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/921 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T -
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>

+EHLO 921

+AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAMOv20GsURsat8gdH/RfnYI0MzIxNTMyMeCdd8AzFZLZ/N1ujmilmCcBAQAAAAAAAACAPtXesZ0BNDMyMTUzMjEAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test922 b/ap/lib/libcurl/curl-7.54.1/tests/data/test922
new file mode 100644
index 0000000..aacd684
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test922
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC4954
+RFC6749
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH XOAUTH2
+REPLY AUTH 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP OAuth 2.0 (XOAUTH2) authentication with initial response
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/922 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 922

+AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test923 b/ap/lib/libcurl/curl-7.54.1/tests/data/test923
new file mode 100644
index 0000000..cb811bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test923
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+VRFY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+250 <recipient@example.com>

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP VRFY
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/923 --mail-rcpt recipient
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 923

+VRFY recipient

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test924 b/ap/lib/libcurl/curl-7.54.1/tests/data/test924
new file mode 100644
index 0000000..51e373c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test924
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+VRFY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+553-Ambiguous; Possibilities are:

+553-Joe Smith <joe.smith@example.com>

+553-Harry Smith <harry.smith@example.com>

+553 Melvin Smith <melvin.smith@example.com>

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP ambiguous VRFY
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/924 --mail-rcpt smith
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 924

+VRFY smith

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test925 b/ap/lib/libcurl/curl-7.54.1/tests/data/test925
new file mode 100644
index 0000000..2d53100
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test925
@@ -0,0 +1,40 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+VRFY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+252 Send some mail and I'll try my best

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP external VRFY
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/925 --mail-rcpt user@example.net
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 925

+VRFY user@example.net

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test926 b/ap/lib/libcurl/curl-7.54.1/tests/data/test926
new file mode 100644
index 0000000..4c4576c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test926
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+VRFY
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY VRFY 550 Unknown user

+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP unknown user VRFY
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/926 --mail-rcpt recipient
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 56 - CURLE_RECV_ERROR
+<errorcode>
+56
+</errorcode>
+<protocol>
+EHLO 926

+VRFY recipient

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test927 b/ap/lib/libcurl/curl-7.54.1/tests/data/test927
new file mode 100644
index 0000000..b199710
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test927
@@ -0,0 +1,43 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+EXPN
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+250-Joe Smith <joe.smith@example.com>

+250-Harry Smith <harry.smith@example.com>

+250 Melvin Smith <melvin.smith@example.com>

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP mailing list EXPN (CUSTOMREQUEST)
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/927 --mail-rcpt Friends -X EXPN
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 927

+EXPN Friends

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test928 b/ap/lib/libcurl/curl-7.54.1/tests/data/test928
new file mode 100644
index 0000000..81bbdc2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test928
@@ -0,0 +1,41 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+HELP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+214-This server supports the following commands:

+214 HELO EHLO RCPT DATA RSET MAIL VRFY EXPN QUIT HELP

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP HELP
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/928
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 928

+HELP

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test929 b/ap/lib/libcurl/curl-7.54.1/tests/data/test929
new file mode 100644
index 0000000..3761ab5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test929
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+NOOP
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP NOOP (CUSTOMREQUEST)
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/929 -X NOOP -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 929

+NOOP

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test93 b/ap/lib/libcurl/curl-7.54.1/tests/data/test93
new file mode 100644
index 0000000..1387248
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test93
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+HTTP proxy
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 407 Needs proxy authentication
+Server: test-server/fake swsclose yesyes
+Proxy-Authenticate: Basic "oh please"
+Connection: close
+
+bing
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP GET with failed proxy auth
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/93 -x %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET http://%HOSTIP:%HTTPPORT/93 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test930 b/ap/lib/libcurl/curl-7.54.1/tests/data/test930
new file mode 100644
index 0000000..be633c1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test930
@@ -0,0 +1,38 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+RSET
+CUSTOMREQUEST
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP RSET (CUSTOMREQUEST)
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/930 -X RSET -I
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 930

+RSET

+QUIT

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test931 b/ap/lib/libcurl/curl-7.54.1/tests/data/test931
new file mode 100644
index 0000000..722aa02
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test931
@@ -0,0 +1,29 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+CRLF-in-URL
+</keywords>
+</info>
+
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with URL-encoded CR LF in the URL
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/%0d%0a/931
+</command>
+</client>
+
+#
+<verify>
+# 3 - CURLE_URL_MALFORMAT
+<errorcode>
+3
+</errorcode>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test932 b/ap/lib/libcurl/curl-7.54.1/tests/data/test932
new file mode 100644
index 0000000..13ab790
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test932
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH CRAM-MD5
+SASL CANCELLATION
+RFC2195
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5
+REPLY AUTH 334 Rubbish
+REPLY * 501 AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+crypto
+</features>
+ <name>
+SMTP CRAM-MD5 graceful cancellation
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/932 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+EHLO 932

+AUTH CRAM-MD5

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test933 b/ap/lib/libcurl/curl-7.54.1/tests/data/test933
new file mode 100644
index 0000000..08b4e9d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test933
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH NTLM
+SASL CANCELLATION
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM
+REPLY AUTH 334 NTLM supported
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 Rubbish
+REPLY * 501 AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+SMTP NTLM graceful cancellation
+ </name>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/933 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T -
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+EHLO 933

+AUTH NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test934 b/ap/lib/libcurl/curl-7.54.1/tests/data/test934
new file mode 100644
index 0000000..1794d81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test934
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH DIGEST-MD5
+SASL CANCELLATION
+RFC2831
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5
+REPLY AUTH 334 Rubbish
+REPLY * 501 AUTH exchange cancelled by client
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+SMTP DIGEST-MD5 graceful cancellation
+ </name>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/934 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+EHLO 934

+AUTH DIGEST-MD5

+*

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test935 b/ap/lib/libcurl/curl-7.54.1/tests/data/test935
new file mode 100644
index 0000000..3fd5c2e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test935
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH CRAM-MD5
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC2195
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH CRAM-MD5 PLAIN
+REPLY "AUTH CRAM-MD5" 334 Rubbish
+REPLY * 501 AUTH exchange cancelled by client
+REPLY "AUTH PLAIN" 334 PLAIN supported
+REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+crypto
+</features>
+ <name>
+SMTP CRAM-MD5 authentication with SASL downgrade
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 935

+AUTH CRAM-MD5

+*

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test936 b/ap/lib/libcurl/curl-7.54.1/tests/data/test936
new file mode 100644
index 0000000..88c8a93
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test936
@@ -0,0 +1,76 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH NTLM
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH NTLM PLAIN
+REPLY "AUTH NTLM" 334 NTLM supported
+REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 Rubbish
+REPLY * 501 AUTH exchange cancelled by client
+REPLY "AUTH PLAIN" 334 PLAIN supported
+REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+NTLM
+!SSPI
+</features>
+ <name>
+SMTP NTLM authentication with SASL downgrade
+ </name>
+<stdin>
+mail body

+</stdin>
+ <setenv>
+# we force our own host name, in order to make the test machine independent
+CURL_GETHOSTNAME=curlhost
+# we try to use the LD_PRELOAD hack, if not a debug build
+LD_PRELOAD=%PWD/libtest/.libs/libhostname.so
+ </setenv>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/936 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+<precheck>
+chkhostname curlhost
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 936

+AUTH NTLM

+TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=

+*

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test937 b/ap/lib/libcurl/curl-7.54.1/tests/data/test937
new file mode 100644
index 0000000..a2cb9b5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test937
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH DIGEST-MD5
+SASL AUTH PLAIN
+SASL DOWNGRADE
+RFC2831
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH DIGEST-MD5 PLAIN
+REPLY "AUTH DIGEST-MD5" 334 Rubbish
+REPLY * 501 AUTH exchange cancelled by client
+REPLY "AUTH PLAIN" 334 PLAIN supported
+REPLY dXNlcgB1c2VyAHNlY3JldA== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+<features>
+!SSPI
+debug
+crypto
+</features>
+ <name>
+SMTP DIGEST-MD5 authentication with SASL downgrade
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/937 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 937

+AUTH DIGEST-MD5

+*

+AUTH PLAIN

+dXNlcgB1c2VyAHNlY3JldA==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test938 b/ap/lib/libcurl/curl-7.54.1/tests/data/test938
new file mode 100644
index 0000000..7931d0a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test938
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH PLAIN
+connection re-use
+RFC4616
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH PLAIN
+REPLY AUTH 334 PLAIN supported
+REPLY dXNlci5vbmUAdXNlci5vbmUAc2VjcmV0 235 Authenticated
+REPLY dXNlci50d28AdXNlci50d28Ac2VjcmV0 235 Authenticated

+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP multiple connection authentication
+ </name>
+<file name="log/upload938">
+mail body

+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/938001 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user.one:secret -T log/upload938 -: smtp://%HOSTIP:%SMTPPORT/938002 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user.two:secret -T log/upload938
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 938001

+AUTH PLAIN

+dXNlci5vbmUAdXNlci5vbmUAc2VjcmV0

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+EHLO 938002

+AUTH PLAIN

+dXNlci50d28AdXNlci50d28Ac2VjcmV0

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test939 b/ap/lib/libcurl/curl-7.54.1/tests/data/test939
new file mode 100644
index 0000000..34ba8a0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test939
@@ -0,0 +1,50 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+RFC821
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY EHLO 500 Command unrecognized
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+RFC821-only SMTP with username and password
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/939 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 939

+HELO 939

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test94 b/ap/lib/libcurl/curl-7.54.1/tests/data/test94
new file mode 100644
index 0000000..2f3f482
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test94
@@ -0,0 +1,58 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+HTTP CONNECT
+HTTP proxy
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<connect nocheck="yes">
+HTTP/1.1 407 Needs proxy authentication
+Server: test-server/fake swsclose yesyes
+Proxy-Authenticate: Basic "oh please"
+Connection: close
+
+bing
+</connect>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<features>
+SSL
+</features>
+ <name>
+HTTPS GET with failed proxy auth (CONNECT 1.0)
+ </name>
+ <command>
+https://test.anything.really.com:94 --proxy1.0 %HOSTIP:%HTTPPORT
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+56
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+CONNECT test.anything.really.com:94 HTTP/1.0

+User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4

+Host: test.anything.really.com:94

+Proxy-Connection: Keep-Alive

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test940 b/ap/lib/libcurl/curl-7.54.1/tests/data/test940
new file mode 100644
index 0000000..4dfb72c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test940
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with username and password but no AUTH capability
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/940 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 940

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test941 b/ap/lib/libcurl/curl-7.54.1/tests/data/test941
new file mode 100644
index 0000000..fd69b87
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test941
@@ -0,0 +1,66 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+--crlf
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP with --crlf
+ </name>
+<file name="log/upload941">
+From: different
+To: another
+
+email
+headers and body
+with unix newlines
+meant to be
+converted
+with
+the
+--crlf option
+</file>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/941 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/upload941 --crlf
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 941

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+From: different

+To: another

+

+email

+headers and body

+with unix newlines

+meant to be

+converted

+with

+the

+--crlf option

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test942 b/ap/lib/libcurl/curl-7.54.1/tests/data/test942
new file mode 100644
index 0000000..26740f7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test942
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH EXTERNAL
+RFC4422
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH 334 EXTERNAL supported
+REPLY dXNlcg== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP external authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+'smtp://user;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 942

+AUTH EXTERNAL

+dXNlcg==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test943 b/ap/lib/libcurl/curl-7.54.1/tests/data/test943
new file mode 100644
index 0000000..aef2c62
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test943
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH EXTERNAL
+RFC4422
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH 334 EXTERNAL supported
+REPLY = 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP external authentication without credentials
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+'smtp://;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 943

+AUTH EXTERNAL

+=

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test944 b/ap/lib/libcurl/curl-7.54.1/tests/data/test944
new file mode 100644
index 0000000..4b60f12
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test944
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH EXTERNAL
+SASL-IR
+RFC4422
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP external authentication with initial response
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+'smtp://user;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 944

+AUTH EXTERNAL dXNlcg==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test945 b/ap/lib/libcurl/curl-7.54.1/tests/data/test945
new file mode 100644
index 0000000..3526408
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test945
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH EXTERNAL
+SASL-IR
+RFC4422
+RFC4954
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH EXTERNAL
+REPLY AUTH 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP external authentication with initial response without credentials
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+'smtp://;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 945

+AUTH EXTERNAL =

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test946 b/ap/lib/libcurl/curl-7.54.1/tests/data/test946
new file mode 100644
index 0000000..da4b924
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test946
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH OAUTH2
+RFC4954
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH 334 OAUTHBEARER supported
+REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP OAuth 2.0 (OAUTHBEARER) authentication
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/946 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T -
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 946

+AUTH OAUTHBEARER

+dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test947 b/ap/lib/libcurl/curl-7.54.1/tests/data/test947
new file mode 100644
index 0000000..d33a559
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test947
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC4954
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH 235 Authenticated
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP OAuth 2.0 (OAUTHBEARER) authentication with initial response
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T -
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+EHLO 947

+AUTH OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+MAIL FROM:<sender@example.com>

+RCPT TO:<recipient@example.com>

+DATA

+QUIT

+</protocol>
+<upload>
+mail body

+.

+</upload>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test948 b/ap/lib/libcurl/curl-7.54.1/tests/data/test948
new file mode 100644
index 0000000..9c1e31d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test948
@@ -0,0 +1,63 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH OAUTH2
+RFC4954
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+AUTH OAUTHBEARER
+REPLY AUTH 334 OAUTHBEARER supported
+REPLY dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ== 334 eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0
+REPLY AQ== 535 Username and Password not accepted. Learn more at\r\n535 http://support.example.com/mail/oauth
+</servercmd>
+</reply>
+
+#vi
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T -
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+EHLO 948

+AUTH OAUTHBEARER

+dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+AQ==

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test949 b/ap/lib/libcurl/curl-7.54.1/tests/data/test949
new file mode 100644
index 0000000..9145d61
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test949
@@ -0,0 +1,62 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+SASL
+SASL AUTH OAUTH2
+SASL-IR
+RFC4954
+RFC6749
+RFC7628
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+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
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+smtp
+</server>
+ <name>
+SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response
+ </name>
+<stdin>
+mail body

+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T -
+</command>
+# The protocol section doesn't support ways of specifying the raw data in the
+# base64 encoded message so we must assert this
+<precheck>
+perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%SMTPPORT' ne '9005' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 67 - CURLE_LOGIN_DENIED
+<errorcode>
+67
+</errorcode>
+#
+# The multi interface considers a broken "CONNECT" as a prematurely broken
+# transfer and such a connection will not get a "QUIT"
+<protocol>
+EHLO 949

+AUTH OAUTHBEARER dXNlcj11c2VyAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9OTAwNQFhdXRoPUJlYXJlciBtRl85LkI1Zi00LjFKcU0BAQ==

+AQ==

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test95 b/ap/lib/libcurl/curl-7.54.1/tests/data/test95
new file mode 100644
index 0000000..1cd88ac
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test95
@@ -0,0 +1,81 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP CONNECT
+proxytunnel
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</data>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+

+</connect>
+<datacheck>
+HTTP/1.1 200 Mighty fine indeed

+

+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake swsclose
+Content-Type: text/html
+Funny-head: yesyes
+Content-Length: 9
+
+contents
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP over proxytunnel using POST
+ </name>
+ <command>
+http://test.95:%HTTPPORT/we/want/that/page/95 -p -x %HOSTIP:%PROXYPORT -d "datatopost=ohthatsfunyesyes"
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<proxy>
+CONNECT test.95:%HTTPPORT HTTP/1.1

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Host: test.95:%HTTPPORT

+Proxy-Connection: Keep-Alive

+

+</proxy>
+<protocol nonewline="yes">
+POST /we/want/that/page/95 HTTP/1.1

+User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3

+Host: test.95:%HTTPPORT

+Accept: */*

+Content-Length: 27

+Content-Type: application/x-www-form-urlencoded

+

+datatopost=ohthatsfunyesyes
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test96 b/ap/lib/libcurl/curl-7.54.1/tests/data/test96
new file mode 100644
index 0000000..27044bc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test96
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+TrackMemory
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+# Client-side
+<client>
+<server>
+none
+</server>
+<features>
+TrackMemory
+</features>
+
+<name>
+curl memory tracking operational
+</name>
+<command>
+--version
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<file name="log/memdump">
+MEM tool_paramhlp.c
+MEM tool_cfgable.c
+MEM tool_cfgable.c
+MEM tool_cfgable.c
+</file>
+<stripfile>
+$_ = '' if ((($_ !~ /tool_paramhlp/) && ($_ !~ /tool_cfgable/)) || ($_ =~ /free\(\(nil\)\)/))
+s/:\d+.*//
+s:^(MEM )(.*/)(.*):$1$3:
+</stripfile>
+</verify>
+
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test97 b/ap/lib/libcurl/curl-7.54.1/tests/data/test97
new file mode 100644
index 0000000..c1065bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test97
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+HTTP replaced headers
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 6

+

+blaha
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP POST with custom content-type
+ </name>
+ <command>
+ -d "hejsanallabarn" -H "Content-Type: silly/type" http://%HOSTIP:%HTTPPORT/97
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol nonewline="yes">
+POST /97 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Type: silly/type

+Content-Length: 14

+

+hejsanallabarn
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test98 b/ap/lib/libcurl/curl-7.54.1/tests/data/test98
new file mode 100644
index 0000000..b6d1182
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test98
@@ -0,0 +1,55 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+chunked Transfer-Encoding
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.0 200 OK

+Server: test-server/fake

+Content-Type: text/html

+Content-Length: 6

+

+blaha
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT from stdin with set size, disabling chunked transfer-encoding
+ </name>
+ <command>
+ -T - -H "Transfer-Encoding:" -H "Content-Length: 14" http://%HOSTIP:%HTTPPORT/98
+</command>
+<stdin>
+data on stdin
+</stdin>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /98 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+Content-Length: 14

+Expect: 100-continue

+

+data on stdin
+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/data/test99 b/ap/lib/libcurl/curl-7.54.1/tests/data/test99
new file mode 100644
index 0000000..9797600
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/data/test99
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Resume
+Largefile
+FAILURE
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 404 Nah
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+Content-Length: 13
+Funny-head: yesyes
+
+0123456789123
+</data>
+
+<datacheck>
+HTTP/1.1 404 Nah
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Connection: close
+Content-Length: 13
+Funny-head: yesyes
+
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+large_file
+</features>
+<server>
+http
+</server>
+ <name>
+HTTP GET with large-file resume point and failed resume
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/99 -C 9999999999
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 33 is CURLE_RANGE_ERROR
+<errorcode>
+33
+</errorcode>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+GET /99 HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=9999999999-

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/directories.pm b/ap/lib/libcurl/curl-7.54.1/tests/directories.pm
new file mode 100644
index 0000000..e3327c1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/directories.pm
@@ -0,0 +1,287 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+%file_chmod1 = (
+  'name'      => 'chmod1',
+  'content'   => "This file should have permissions 444\n",
+  'perm'      => 'r--r--r--',
+  'time'      => 'Jan 11 10:00',
+  'dostime'   => '01-11-10  10:00AM',
+);
+
+%file_chmod2 = (
+  'name'      => 'chmod2',
+  'content'   => "This file should have permissions 666\n",
+  'perm'      => 'rw-rw-rw-',
+  'time'      => 'Feb  1  8:00',
+  'dostime'   => '02-01-10  08:00AM',
+);
+
+%file_chmod3 = (
+  'name'      => 'chmod3',
+  'content'   => "This file should have permissions 777\n",
+  'perm'      => 'rwxrwxrwx',
+  'time'      => 'Feb  1  8:00',
+  'dostime'   => '02-01-10  08:00AM',
+);
+
+%file_chmod4 = (
+  'type'      => 'd',
+  'name'      => 'chmod4',
+  'content'   => "This file should have permissions 001\n",
+  'perm'      => '--S--S--t',
+  'time'      => 'May  4  4:31',
+  'dostime'   => '05-04-10  04:31AM'
+);
+
+%file_chmod5 = (
+  'type'      => 'd',
+  'name'      => 'chmod5',
+  'content'   => "This file should have permissions 110\n",
+  'perm'      => '--s--s--T',
+  'time'      => 'May  4  4:31',
+  'dostime'   => '05-04-10  04:31AM'
+);
+
+%link_link = (
+  'type'      => 'l',
+  'name'      => 'link -> file.txt',
+  'size'      => '8',
+  'perm'      => 'rwxrwxrwx',
+  'time'      => 'Jan  6  4:42'
+);
+
+%link_link_absolute = (
+  'type'      => 'l',
+  'name'      => 'link_absolute -> /data/ftp/file.txt',
+  'size'      => '15',
+  'perm'      => 'rwxrwxrwx',
+  'time'      => 'Jan  6  4:45'
+);
+
+%dir_dot = (
+  'type'      => "d",
+  'name'      => ".",
+  'hlink'     => "4",
+  'time'      => "Apr 27  5:12",
+  'size'      => "20480",
+  'dostime'   => "04-27-10  05:12AM",
+  'perm'      => "rwxrwxrwx"
+);
+
+%dir_ddot = (
+  'type'      => "d",
+  'name'      => "..",
+  'hlink'     => "4",
+  'size'      => "20480",
+  'time'      => "Apr 23  3:12",
+  'dostime'   => "04-23-10  03:12AM",
+  'perm'      => "rwxrwxrwx"
+);
+
+%dir_weirddir_txt = (
+  'type'      => "d",
+  'name'      => "weirddir.txt",
+  'hlink'     => "2",
+  'size'      => "4096",
+  'time'      => "Apr 23  3:12",
+  'dostime'   => "04-23-10  03:12AM",
+  'perm'      => "rwxr-xrwx"
+);
+
+%dir_UNIX = (
+  'type'      => "d",
+  'name'      => "UNIX",
+  'hlink'     => "11",
+  'size'      => "4096",
+  'time'      => "Nov 01  2008",
+  'dostime'   => "11-01-08  11:11AM",
+  'perm'      => "rwx--x--x"
+);
+
+%dir_DOS = (
+  'type'      => "d",
+  'name'      => "DOS",
+  'hlink'     => "11",
+  'size'      => "4096",
+  'time'      => "Nov 01  2008",
+  'dostime'   => "11-01-08  11:11AM",
+  'perm'      => "rwx--x--x"
+);
+
+%dir_dot_NeXT = (
+  'type'      => "d",
+  'name'      => ".NeXT",
+  'hlink'     => "4",
+  'size'      => "4096",
+  'time'      => "Jan 23  2:05",
+  'dostime'   => "01-23-05  02:05AM",
+  'perm'      => "rwxrwxrwx"
+);
+
+%file_empty_file_dat = (
+  'name'      => "empty_file.dat",
+  'content'   => "",
+  'perm'      => "rw-r--r--",
+  'time'      => "Apr 27 11:01",
+  'dostime'   => "04-27-10  11:01AM"
+);
+
+%file_file_txt = (
+  'name'      => "file.txt",
+  'content'   => "This is content of file \"file.txt\"\n",
+  'time'      => "Apr 27 11:01",
+  'dostime'   => "04-27-10  11:01AM",
+  'perm'      => "rw-r--r--"
+);
+
+%file_someothertext_txt = (
+  'name'      => "someothertext.txt",
+  'content'   => "Some junk ;-) This file does not really exist.\n",
+  'time'      => "Apr 27 11:01",
+  'dostime'   => "04-27-10  11:01AM",
+  'perm'      => "rw-r--r--"
+);
+
+%lists = (
+  '/fully_simulated/' => {
+    'files'   => [ \%dir_dot, \%dir_ddot, \%dir_DOS, \%dir_UNIX ],
+    'eol'     => "\r\n",
+    'type'    => "unix"
+  },
+  '/fully_simulated/UNIX/' => {
+    'files'   => [ \%dir_dot, \%dir_ddot,
+                   \%file_chmod1, \%file_chmod2, \%file_chmod3, \%file_chmod4, \%file_chmod5,
+                   \%file_empty_file_dat, \%file_file_txt,
+                   \%link_link, \%link_link_absolute, \%dir_dot_NeXT,
+                   \%file_someothertext_txt, \%dir_weirddir_txt ],
+    'eol'     => "\r\n",
+    'type'    => 'unix'
+  },
+  '/fully_simulated/DOS/' => {
+    'files'   => [ \%dir_dot, \%dir_ddot,
+                   \%file_chmod1, \%file_chmod2, \%file_chmod3, \%file_chmod4, \%file_chmod5,
+                   \%file_empty_file_dat, \%file_file_txt,
+                   \%dir_dot_NeXT, \%file_someothertext_txt, \%dir_weirddir_txt ],
+    'eol'     => "\r\n",
+    'type'    => 'dos'
+  }
+);
+
+sub ftp_createcontent($) {
+  my (%list) = @_;
+
+  $type = $$list{'type'};
+  $eol  = $$list{'eol'};
+  $list_ref = $$list{'files'};
+
+  my @diroutput;
+  my @contentlist;
+  if($type eq "unix") {
+    for(@$list_ref) {
+      my %file = %$_;
+      my $line = "";
+      my $ftype  = $file{'type'}  ? $file{'type'}  : "-";
+      my $fperm  = $file{'perm'}  ? $file{'perm'}  : "rwxr-xr-x";
+      my $fuser  = $file{'user'}  ? sprintf("%15s", $file{'user'})   : "ftp-default";
+      my $fgroup = $file{'group'} ? sprintf("%15s", $file{'group'})  : "ftp-default";
+      my $fsize = "";
+      if($file{'type'} eq "d") {
+        $fsize = $file{'size'} ? sprintf("%7s", $file{'size'}) : sprintf("%7d", 4096);
+      }
+      else {
+        $fsize = sprintf("%7d", length $file{'content'});
+      }
+      my $fhlink = $file{'hlink'} ? sprintf("%4d",  $file{'hlink'})  : "   1";
+      my $ftime  = $file{'time'}  ? sprintf("%10s", $file{'time'})   : "Jan 9  1933";
+      push(@contentlist, "$ftype$fperm $fhlink $fuser $fgroup $fsize $ftime $file{'name'}$eol");
+    }
+
+    return @contentlist;
+  }
+  elsif($type =~ /^dos$/) {
+    for(@$list_ref) {
+      my %file = %$_;
+      my $line = "";
+      my $time = $file{'dostime'} ? $file{'dostime'} : "06-25-97  09:12AM";
+      my $size_or_dir;
+      if($file{'type'} =~ /^d$/) {
+        $size_or_dir = "      <DIR>         ";
+      }
+      else {
+        $size_or_dir = sprintf("%20d", length $file{'content'});
+      }
+      push(@contentlist, "$time $size_or_dir $file{'name'}$eol");
+    }
+    return @contentlist;
+  }
+}
+
+sub wildcard_filesize($$) {
+  my ($list_type, $file) = @_;
+  $list = $lists{$list_type};
+  if($list) {
+    my $files = $list->{'files'};
+    for(@$files) {
+      my %f = %$_;
+      if ($f{'name'} eq $file) {
+        if($f{'content'}) {
+          return length $f{'content'};
+        }
+        elsif ($f{'type'} ne "d"){
+          return 0;
+        }
+        else {
+          return -1;
+        }
+      }
+    }
+  }
+  return -1;
+}
+sub wildcard_getfile($$) {
+  my ($list_type, $file) = @_;
+  $list = $lists{$list_type};
+  if($list) {
+    my $files = $list->{'files'};
+    for(@$files) {
+      my %f = %$_;
+      if ($f{'name'} eq $file) {
+        if($f{'content'}) {
+          return (length $f{'content'}, $f{'content'});
+        }
+        elsif ($f{'type'} ne "d"){
+          return (0, "");
+        }
+        else {
+          return (-1, 0);
+        }
+      }
+    }
+  }
+  return (-1, 0);
+}
+
+sub ftp_contentlist {
+  my $listname = $_[0];
+  $list = $lists{$listname};
+  return ftp_createcontent(\$list);
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/extern-scan.pl b/ap/lib/libcurl/curl-7.54.1/tests/extern-scan.pl
new file mode 100755
index 0000000..88594ed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/extern-scan.pl
@@ -0,0 +1,62 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2010-2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+#
+#
+
+use strict;
+use warnings;
+
+# we may get the dir root pointed out
+my $root=$ARGV[0] || ".";
+
+my @incs = (
+    "$root/include/curl/curl.h",
+    "$root/include/curl/easy.h",
+    "$root/include/curl/mprintf.h",
+    "$root/include/curl/multi.h",
+    );
+
+my $verbose=0;
+my $summary=0;
+my $misses=0;
+
+my @syms;
+my %doc;
+my %rem;
+
+sub scanheader {
+    my ($f)=@_;
+    open H, "<$f" || die;
+    while(<H>) {
+        if (/^(CURL_EXTERN.*)/) {
+            my $decl = $1;
+            $decl =~ s/\r$//;
+            print "$decl\n";
+        }
+    }
+    close H;
+}
+
+foreach my $i (@incs) {
+    scanheader($i);
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/ftp.pm b/ap/lib/libcurl/curl-7.54.1/tests/ftp.pm
new file mode 100644
index 0000000..f4a4ace
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/ftp.pm
@@ -0,0 +1,326 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+use strict;
+use warnings;
+
+use serverhelp qw(
+    servername_id
+    mainsockf_pidfilename
+    datasockf_pidfilename
+    );
+
+#######################################################################
+# pidfromfile returns the pid stored in the given pidfile.  The value
+# of the returned pid will never be a negative value. It will be zero
+# on any file related error or if a pid can not be extracted from the
+# given file.
+#
+sub pidfromfile {
+    my $pidfile = $_[0];
+    my $pid = 0;
+
+    if(-f $pidfile && -s $pidfile && open(PIDFH, "<$pidfile")) {
+        $pid = 0 + <PIDFH>;
+        close(PIDFH);
+        $pid = 0 unless($pid > 0);
+    }
+    return $pid;
+}
+
+#######################################################################
+# pidexists checks if a process with a given pid exists and is alive.
+# This will return the positive pid if the process exists and is alive.
+# This will return the negative pid if the process exists differently.
+# This will return 0 if the process could not be found.
+#
+sub pidexists {
+    my $pid = $_[0];
+
+    if($pid > 0) {
+        # verify if currently existing and alive
+        if(kill(0, $pid)) {
+            return $pid;
+        }
+
+        # verify if currently existing Windows process
+        if($^O eq "msys") {
+            my $filter = "PID eq $pid";
+            my $result = `tasklist -fi \"$filter\" 2>nul`;
+            if(index($result, "$pid") != -1) {
+                return -$pid;
+            }
+        }
+    }
+
+    return 0;
+}
+
+#######################################################################
+# pidterm asks the process with a given pid to terminate gracefully.
+#
+sub pidterm {
+    my $pid = $_[0];
+
+    if($pid > 0) {
+        # signal the process to terminate
+        kill("TERM", $pid);
+
+        # request the process to quit
+        if($^O eq "msys") {
+            my $filter = "PID eq $pid";
+            my $result = `tasklist -fi \"$filter\" 2>nul`;
+            if(index($result, "$pid") != -1) {
+                system("taskkill -fi \"$filter\" >nul 2>&1");
+            }
+        }
+    }
+}
+
+#######################################################################
+# pidkill kills the process with a given pid mercilessly andforcefully.
+#
+sub pidkill {
+    my $pid = $_[0];
+
+    if($pid > 0) {
+        # signal the process to terminate
+        kill("KILL", $pid);
+
+        # request the process to quit
+        if($^O eq "msys") {
+            my $filter = "PID eq $pid";
+            my $result = `tasklist -fi \"$filter\" 2>nul`;
+            if(index($result, "$pid") != -1) {
+                system("taskkill -f -fi \"$filter\" >nul 2>&1");
+                # Windows XP Home compatibility
+                system("tskill $pid >nul 2>&1");
+            }
+        }
+    }
+}
+
+#######################################################################
+# processexists checks if a process with the pid stored in the given
+# pidfile exists and is alive. This will return 0 on any file related
+# error or if a pid can not be extracted from the given file. When a
+# process with the same pid as the one extracted from the given file
+# is currently alive this returns that positive pid. Otherwise, when
+# the process is not alive, will return the negative value of the pid.
+#
+sub processexists {
+    use POSIX ":sys_wait_h";
+    my $pidfile = $_[0];
+
+    # fetch pid from pidfile
+    my $pid = pidfromfile($pidfile);
+
+    if($pid > 0) {
+        # verify if currently alive
+        if(pidexists($pid)) {
+            return $pid;
+        }
+        else {
+            # get rid of the certainly invalid pidfile
+            unlink($pidfile) if($pid == pidfromfile($pidfile));
+            # reap its dead children, if not done yet
+            waitpid($pid, &WNOHANG);
+            # negative return value means dead process
+            return -$pid;
+        }
+    }
+    return 0;
+}
+
+#######################################################################
+# killpid attempts to gracefully stop processes in the given pid list
+# with a SIGTERM signal and SIGKILLs those which haven't died on time.
+#
+sub killpid {
+    use POSIX ":sys_wait_h";
+    my ($verbose, $pidlist) = @_;
+    my @requested;
+    my @signalled;
+    my @reapchild;
+
+    # The 'pidlist' argument is a string of whitespace separated pids.
+    return if(not defined($pidlist));
+
+    # Make 'requested' hold the non-duplicate pids from 'pidlist'.
+    @requested = split(' ', $pidlist);
+    return if(not @requested);
+    if(scalar(@requested) > 2) {
+        @requested = sort({$a <=> $b} @requested);
+    }
+    for(my $i = scalar(@requested) - 2; $i >= 0; $i--) {
+        if($requested[$i] == $requested[$i+1]) {
+            splice @requested, $i+1, 1;
+        }
+    }
+
+    # Send a SIGTERM to processes which are alive to gracefully stop them.
+    foreach my $tmp (@requested) {
+        chomp $tmp;
+        if($tmp =~ /^(\d+)$/) {
+            my $pid = $1;
+            if($pid > 0) {
+                if(pidexists($pid)) {
+                    print("RUN: Process with pid $pid signalled to die\n")
+                        if($verbose);
+                    pidterm($pid);
+                    push @signalled, $pid;
+                }
+                else {
+                    print("RUN: Process with pid $pid already dead\n")
+                        if($verbose);
+                    # if possible reap its dead children
+                    waitpid($pid, &WNOHANG);
+                    push @reapchild, $pid;
+                }
+            }
+        }
+    }
+
+    # Allow all signalled processes five seconds to gracefully die.
+    if(@signalled) {
+        my $twentieths = 5 * 20;
+        while($twentieths--) {
+            for(my $i = scalar(@signalled) - 1; $i >= 0; $i--) {
+                my $pid = $signalled[$i];
+                if(!pidexists($pid)) {
+                    print("RUN: Process with pid $pid gracefully died\n")
+                        if($verbose);
+                    splice @signalled, $i, 1;
+                    # if possible reap its dead children
+                    waitpid($pid, &WNOHANG);
+                    push @reapchild, $pid;
+                }
+            }
+            last if(not scalar(@signalled));
+            select(undef, undef, undef, 0.05);
+        }
+    }
+
+    # Mercilessly SIGKILL processes still alive.
+    if(@signalled) {
+        foreach my $pid (@signalled) {
+            if($pid > 0) {
+                print("RUN: Process with pid $pid forced to die with SIGKILL\n")
+                    if($verbose);
+                pidkill($pid);
+                # if possible reap its dead children
+                waitpid($pid, &WNOHANG);
+                push @reapchild, $pid;
+            }
+        }
+    }
+
+    # Reap processes dead children for sure.
+    if(@reapchild) {
+        foreach my $pid (@reapchild) {
+            if($pid > 0) {
+                waitpid($pid, 0);
+            }
+        }
+    }
+}
+
+#######################################################################
+# killsockfilters kills sockfilter processes for a given server.
+#
+sub killsockfilters {
+    my ($proto, $ipvnum, $idnum, $verbose, $which) = @_;
+    my $server;
+    my $pidfile;
+    my $pid;
+
+    return if($proto !~ /^(ftp|imap|pop3|smtp)$/);
+
+    die "unsupported sockfilter: $which"
+        if($which && ($which !~ /^(main|data)$/));
+
+    $server = servername_id($proto, $ipvnum, $idnum) if($verbose);
+
+    if(!$which || ($which eq 'main')) {
+        $pidfile = mainsockf_pidfilename($proto, $ipvnum, $idnum);
+        $pid = processexists($pidfile);
+        if($pid > 0) {
+            printf("* kill pid for %s-%s => %d\n", $server,
+                ($proto eq 'ftp')?'ctrl':'filt', $pid) if($verbose);
+            pidkill($pid);
+            waitpid($pid, 0);
+        }
+        unlink($pidfile) if(-f $pidfile);
+    }
+
+    return if($proto ne 'ftp');
+
+    if(!$which || ($which eq 'data')) {
+        $pidfile = datasockf_pidfilename($proto, $ipvnum, $idnum);
+        $pid = processexists($pidfile);
+        if($pid > 0) {
+            printf("* kill pid for %s-data => %d\n", $server,
+                $pid) if($verbose);
+            pidkill($pid);
+            waitpid($pid, 0);
+        }
+        unlink($pidfile) if(-f $pidfile);
+    }
+}
+
+#######################################################################
+# killallsockfilters kills sockfilter processes for all servers.
+#
+sub killallsockfilters {
+    my $verbose = $_[0];
+
+    for my $proto (('ftp', 'imap', 'pop3', 'smtp')) {
+        for my $ipvnum (('4', '6')) {
+            for my $idnum (('1', '2')) {
+                killsockfilters($proto, $ipvnum, $idnum, $verbose);
+            }
+        }
+    }
+}
+
+
+sub set_advisor_read_lock {
+    my ($filename) = @_;
+
+    if(open(FILEH, ">$filename")) {
+        close(FILEH);
+        return;
+    }
+    printf "Error creating lock file $filename error: $!";
+}
+
+
+sub clear_advisor_read_lock {
+    my ($filename) = @_;
+
+    if(-f $filename) {
+        unlink($filename);
+    }
+}
+
+
+1;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/ftpserver.pl b/ap/lib/libcurl/curl-7.54.1/tests/ftpserver.pl
new file mode 100755
index 0000000..081298f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/ftpserver.pl
@@ -0,0 +1,3242 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+# This is a server designed for the curl test suite.
+#
+# In December 2009 we started remaking the server to support more protocols
+# that are similar in spirit. Like POP3, IMAP and SMTP in addition to the FTP
+# it already supported since a long time. Note that it still only supports one
+# protocol per invoke. You need to start multiple servers to support multiple
+# protocols simultaneously.
+#
+# It is meant to exercise curl, it is not meant to be a fully working
+# or even very standard compliant server.
+#
+# You may optionally specify port on the command line, otherwise it'll
+# default to port 8921.
+#
+# All socket/network/TCP related stuff is done by the 'sockfilt' program.
+#
+
+BEGIN {
+    push(@INC, $ENV{'srcdir'}) if(defined $ENV{'srcdir'});
+    push(@INC, ".");
+    # sub second timestamping needs Time::HiRes
+    eval {
+        no warnings "all";
+        require Time::HiRes;
+        import  Time::HiRes qw( gettimeofday );
+    }
+}
+
+use strict;
+use warnings;
+use IPC::Open2;
+use Digest::MD5;
+
+require "getpart.pm";
+require "ftp.pm";
+require "directories.pm";
+
+use serverhelp qw(
+    servername_str
+    server_pidfilename
+    server_logfilename
+    mainsockf_pidfilename
+    mainsockf_logfilename
+    datasockf_pidfilename
+    datasockf_logfilename
+    );
+
+#**********************************************************************
+# global vars...
+#
+my $verbose = 0;    # set to 1 for debugging
+my $idstr = "";     # server instance string
+my $idnum = 1;      # server instance number
+my $ipvnum = 4;     # server IPv number (4 or 6)
+my $proto = 'ftp';  # default server protocol
+my $srcdir;         # directory where ftpserver.pl is located
+my $srvrname;       # server name for presentation purposes
+my $cwd_testno;     # test case numbers extracted from CWD command
+my $path   = '.';
+my $logdir = $path .'/log';
+
+#**********************************************************************
+# global vars used for server address and primary listener port
+#
+my $port = 8921;               # default primary listener port
+my $listenaddr = '127.0.0.1';  # default address for listener port
+
+#**********************************************************************
+# global vars used for file names
+#
+my $pidfile;            # server pid file name
+my $logfile;            # server log file name
+my $mainsockf_pidfile;  # pid file for primary connection sockfilt process
+my $mainsockf_logfile;  # log file for primary connection sockfilt process
+my $datasockf_pidfile;  # pid file for secondary connection sockfilt process
+my $datasockf_logfile;  # log file for secondary connection sockfilt process
+
+#**********************************************************************
+# global vars used for server logs advisor read lock handling
+#
+my $SERVERLOGS_LOCK = 'log/serverlogs.lock';
+my $serverlogslocked = 0;
+
+#**********************************************************************
+# global vars used for child processes PID tracking
+#
+my $sfpid;        # PID for primary connection sockfilt process
+my $slavepid;     # PID for secondary connection sockfilt process
+
+#**********************************************************************
+# global typeglob filehandle vars to read/write from/to sockfilters
+#
+local *SFREAD;    # used to read from primary connection
+local *SFWRITE;   # used to write to primary connection
+local *DREAD;     # used to read from secondary connection
+local *DWRITE;    # used to write to secondary connection
+
+my $sockfilt_timeout = 5;  # default timeout for sockfilter eXsysreads
+
+#**********************************************************************
+# global vars which depend on server protocol selection
+#
+my %commandfunc;   # protocol command specific function callbacks
+my %displaytext;   # text returned to client before callback runs
+
+#**********************************************************************
+# global vars customized for each test from the server commands file
+#
+my $ctrldelay;     # set if server should throttle ctrl stream
+my $datadelay;     # set if server should throttle data stream
+my $retrweirdo;    # set if ftp server should use RETRWEIRDO
+my $retrnosize;    # set if ftp server should use RETRNOSIZE
+my $pasvbadip;     # set if ftp server should use PASVBADIP
+my $nosave;        # set if ftp server should not save uploaded data
+my $nodataconn;    # set if ftp srvr doesn't establish or accepts data channel
+my $nodataconn425; # set if ftp srvr doesn't establish data ch and replies 425
+my $nodataconn421; # set if ftp srvr doesn't establish data ch and replies 421
+my $nodataconn150; # set if ftp srvr doesn't establish data ch and replies 150
+my @capabilities;  # set if server supports capability commands
+my @auth_mechs;    # set if server supports authentication commands
+my %fulltextreply; #
+my %commandreply;  #
+my %customcount;   #
+my %delayreply;    #
+
+#**********************************************************************
+# global variables for to test ftp wildcardmatching or other test that
+# need flexible LIST responses.. and corresponding files.
+# $ftptargetdir is keeping the fake "name" of LIST directory.
+#
+my $ftplistparserstate;
+my $ftptargetdir="";
+
+#**********************************************************************
+# global variables used when running a ftp server to keep state info
+# relative to the secondary or data sockfilt process. Values of these
+# variables should only be modified using datasockf_state() sub, given
+# that they are closely related and relationship is a bit awkward.
+#
+my $datasockf_state = 'STOPPED'; # see datasockf_state() sub
+my $datasockf_mode = 'none';     # ['none','active','passive']
+my $datasockf_runs = 'no';       # ['no','yes']
+my $datasockf_conn = 'no';       # ['no','yes']
+
+#**********************************************************************
+# global vars used for signal handling
+#
+my $got_exit_signal = 0; # set if program should finish execution ASAP
+my $exit_signal;         # first signal handled in exit_signal_handler
+
+#**********************************************************************
+# Mail related definitions
+#
+my $TEXT_USERNAME = "user";
+my $TEXT_PASSWORD = "secret";
+my $POP3_TIMESTAMP = "<1972.987654321\@curl>";
+
+#**********************************************************************
+# exit_signal_handler will be triggered to indicate that the program
+# should finish its execution in a controlled way as soon as possible.
+# For now, program will also terminate from within this handler.
+#
+sub exit_signal_handler {
+    my $signame = shift;
+    # For now, simply mimic old behavior.
+    killsockfilters($proto, $ipvnum, $idnum, $verbose);
+    unlink($pidfile);
+    if($serverlogslocked) {
+        $serverlogslocked = 0;
+        clear_advisor_read_lock($SERVERLOGS_LOCK);
+    }
+    exit;
+}
+
+#**********************************************************************
+# logmsg is general message logging subroutine for our test servers.
+#
+sub logmsg {
+    my $now;
+    # sub second timestamping needs Time::HiRes
+    if($Time::HiRes::VERSION) {
+        my ($seconds, $usec) = gettimeofday();
+        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
+            localtime($seconds);
+        $now = sprintf("%02d:%02d:%02d.%06d ", $hour, $min, $sec, $usec);
+    }
+    else {
+        my $seconds = time();
+        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
+            localtime($seconds);
+        $now = sprintf("%02d:%02d:%02d ", $hour, $min, $sec);
+    }
+    if(open(LOGFILEFH, ">>$logfile")) {
+        print LOGFILEFH $now;
+        print LOGFILEFH @_;
+        close(LOGFILEFH);
+    }
+}
+
+sub ftpmsg {
+  # append to the server.input file
+  open(INPUT, ">>log/server$idstr.input") ||
+    logmsg "failed to open log/server$idstr.input\n";
+
+  print INPUT @_;
+  close(INPUT);
+
+  # use this, open->print->close system only to make the file
+  # open as little as possible, to make the test suite run
+  # better on windows/cygwin
+}
+
+#**********************************************************************
+# eXsysread is a wrapper around perl's sysread() function. This will
+# repeat the call to sysread() until it has actually read the complete
+# number of requested bytes or an unrecoverable condition occurs.
+# On success returns a positive value, the number of bytes requested.
+# On failure or timeout returns zero.
+#
+sub eXsysread {
+    my $FH      = shift;
+    my $scalar  = shift;
+    my $nbytes  = shift;
+    my $timeout = shift; # A zero timeout disables eXsysread() time limit
+    #
+    my $time_limited = 0;
+    my $timeout_rest = 0;
+    my $start_time = 0;
+    my $nread  = 0;
+    my $rc;
+
+    $$scalar = "";
+
+    if((not defined $nbytes) || ($nbytes < 1)) {
+        logmsg "Error: eXsysread() failure: " .
+               "length argument must be positive\n";
+        return 0;
+    }
+    if((not defined $timeout) || ($timeout < 0)) {
+        logmsg "Error: eXsysread() failure: " .
+               "timeout argument must be zero or positive\n";
+        return 0;
+    }
+    if($timeout > 0) {
+        # caller sets eXsysread() time limit
+        $time_limited = 1;
+        $timeout_rest = $timeout;
+        $start_time = int(time());
+    }
+
+    while($nread < $nbytes) {
+        if($time_limited) {
+            eval {
+                local $SIG{ALRM} = sub { die "alarm\n"; };
+                alarm $timeout_rest;
+                $rc = sysread($FH, $$scalar, $nbytes - $nread, $nread);
+                alarm 0;
+            };
+            $timeout_rest = $timeout - (int(time()) - $start_time);
+            if($timeout_rest < 1) {
+                logmsg "Error: eXsysread() failure: timed out\n";
+                return 0;
+            }
+        }
+        else {
+            $rc = sysread($FH, $$scalar, $nbytes - $nread, $nread);
+        }
+        if($got_exit_signal) {
+            logmsg "Error: eXsysread() failure: signalled to die\n";
+            return 0;
+        }
+        if(not defined $rc) {
+            if($!{EINTR}) {
+                logmsg "Warning: retrying sysread() interrupted system call\n";
+                next;
+            }
+            if($!{EAGAIN}) {
+                logmsg "Warning: retrying sysread() due to EAGAIN\n";
+                next;
+            }
+            if($!{EWOULDBLOCK}) {
+                logmsg "Warning: retrying sysread() due to EWOULDBLOCK\n";
+                next;
+            }
+            logmsg "Error: sysread() failure: $!\n";
+            return 0;
+        }
+        if($rc < 0) {
+            logmsg "Error: sysread() failure: returned negative value $rc\n";
+            return 0;
+        }
+        if($rc == 0) {
+            logmsg "Error: sysread() failure: read zero bytes\n";
+            return 0;
+        }
+        $nread += $rc;
+    }
+    return $nread;
+}
+
+#**********************************************************************
+# read_mainsockf attempts to read the given amount of output from the
+# sockfilter which is in use for the main or primary connection. This
+# reads untranslated sockfilt lingo which may hold data read from the
+# main or primary socket. On success returns 1, otherwise zero.
+#
+sub read_mainsockf {
+    my $scalar  = shift;
+    my $nbytes  = shift;
+    my $timeout = shift; # Optional argument, if zero blocks indefinitively
+    my $FH = \*SFREAD;
+
+    if(not defined $timeout) {
+        $timeout = $sockfilt_timeout + ($nbytes >> 12);
+    }
+    if(eXsysread($FH, $scalar, $nbytes, $timeout) != $nbytes) {
+        my ($fcaller, $lcaller) = (caller)[1,2];
+        logmsg "Error: read_mainsockf() failure at $fcaller " .
+               "line $lcaller. Due to eXsysread() failure\n";
+        return 0;
+    }
+    return 1;
+}
+
+#**********************************************************************
+# read_datasockf attempts to read the given amount of output from the
+# sockfilter which is in use for the data or secondary connection. This
+# reads untranslated sockfilt lingo which may hold data read from the
+# data or secondary socket. On success returns 1, otherwise zero.
+#
+sub read_datasockf {
+    my $scalar = shift;
+    my $nbytes = shift;
+    my $timeout = shift; # Optional argument, if zero blocks indefinitively
+    my $FH = \*DREAD;
+
+    if(not defined $timeout) {
+        $timeout = $sockfilt_timeout + ($nbytes >> 12);
+    }
+    if(eXsysread($FH, $scalar, $nbytes, $timeout) != $nbytes) {
+        my ($fcaller, $lcaller) = (caller)[1,2];
+        logmsg "Error: read_datasockf() failure at $fcaller " .
+               "line $lcaller. Due to eXsysread() failure\n";
+        return 0;
+    }
+    return 1;
+}
+
+sub sysread_or_die {
+    my $FH     = shift;
+    my $scalar = shift;
+    my $length = shift;
+    my $fcaller;
+    my $lcaller;
+    my $result;
+
+    $result = sysread($$FH, $$scalar, $length);
+
+    if(not defined $result) {
+        ($fcaller, $lcaller) = (caller)[1,2];
+        logmsg "Failed to read input\n";
+        logmsg "Error: $srvrname server, sysread error: $!\n";
+        logmsg "Exited from sysread_or_die() at $fcaller " .
+               "line $lcaller. $srvrname server, sysread error: $!\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose);
+        unlink($pidfile);
+        if($serverlogslocked) {
+            $serverlogslocked = 0;
+            clear_advisor_read_lock($SERVERLOGS_LOCK);
+        }
+        exit;
+    }
+    elsif($result == 0) {
+        ($fcaller, $lcaller) = (caller)[1,2];
+        logmsg "Failed to read input\n";
+        logmsg "Error: $srvrname server, read zero\n";
+        logmsg "Exited from sysread_or_die() at $fcaller " .
+               "line $lcaller. $srvrname server, read zero\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose);
+        unlink($pidfile);
+        if($serverlogslocked) {
+            $serverlogslocked = 0;
+            clear_advisor_read_lock($SERVERLOGS_LOCK);
+        }
+        exit;
+    }
+
+    return $result;
+}
+
+sub startsf {
+    my $mainsockfcmd = "./server/sockfilt " .
+        "--ipv$ipvnum --port $port " .
+        "--pidfile \"$mainsockf_pidfile\" " .
+        "--logfile \"$mainsockf_logfile\"";
+    $sfpid = open2(*SFREAD, *SFWRITE, $mainsockfcmd);
+
+    print STDERR "$mainsockfcmd\n" if($verbose);
+
+    print SFWRITE "PING\n";
+    my $pong;
+    sysread_or_die(\*SFREAD, \$pong, 5);
+
+    if($pong !~ /^PONG/) {
+        logmsg "Failed sockfilt command: $mainsockfcmd\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose);
+        unlink($pidfile);
+        if($serverlogslocked) {
+            $serverlogslocked = 0;
+            clear_advisor_read_lock($SERVERLOGS_LOCK);
+        }
+        die "Failed to start sockfilt!";
+    }
+}
+
+#**********************************************************************
+# Returns the given test's reply data
+#
+sub getreplydata {
+    my ($testno) = @_;
+    my $testpart = "";
+
+    $testno =~ s/^([^0-9]*)//;
+    if($testno > 10000) {
+       $testpart = $testno % 10000;
+       $testno = int($testno / 10000);
+    }
+
+    loadtest("$srcdir/data/test$testno");
+
+    my @data = getpart("reply", "data$testpart");
+    if((!@data) && ($testpart ne "")) {
+        @data = getpart("reply", "data");
+    }
+
+    return @data;
+}
+
+sub sockfilt {
+    my $l;
+    foreach $l (@_) {
+        printf SFWRITE "DATA\n%04x\n", length($l);
+        print SFWRITE $l;
+    }
+}
+
+sub sockfiltsecondary {
+    my $l;
+    foreach $l (@_) {
+        printf DWRITE "DATA\n%04x\n", length($l);
+        print DWRITE $l;
+    }
+}
+
+#**********************************************************************
+# Send data to the client on the control stream, which happens to be plain
+# stdout.
+#
+sub sendcontrol {
+    if(!$ctrldelay) {
+        # spit it all out at once
+        sockfilt @_;
+    }
+    else {
+        my $a = join("", @_);
+        my @a = split("", $a);
+
+        for(@a) {
+            sockfilt $_;
+            select(undef, undef, undef, 0.01);
+        }
+    }
+    my $log;
+    foreach $log (@_) {
+        my $l = $log;
+        $l =~ s/\r/[CR]/g;
+        $l =~ s/\n/[LF]/g;
+        logmsg "> \"$l\"\n";
+    }
+}
+
+#**********************************************************************
+# Send data to the FTP client on the data stream when data connection
+# is actually established. Given that this sub should only be called
+# when a data connection is supposed to be established, calling this
+# without a data connection is an indication of weak logic somewhere.
+#
+sub senddata {
+    my $l;
+    if($datasockf_conn eq 'no') {
+        logmsg "WARNING: Detected data sending attempt without DATA channel\n";
+        foreach $l (@_) {
+            logmsg "WARNING: Data swallowed: $l\n"
+        }
+        return;
+    }
+
+    foreach $l (@_) {
+        if(!$datadelay) {
+            # spit it all out at once
+            sockfiltsecondary $l;
+        }
+        else {
+            # pause between each byte
+            for (split(//,$l)) {
+                sockfiltsecondary $_;
+                select(undef, undef, undef, 0.01);
+            }
+        }
+    }
+}
+
+#**********************************************************************
+# protocolsetup initializes the 'displaytext' and 'commandfunc' hashes
+# for the given protocol. References to protocol command callbacks are
+# stored in 'commandfunc' hash, and text which will be returned to the
+# client before the command callback runs is stored in 'displaytext'.
+#
+sub protocolsetup {
+    my $proto = $_[0];
+
+    if($proto eq 'ftp') {
+        %commandfunc = (
+            'PORT' => \&PORT_ftp,
+            'EPRT' => \&PORT_ftp,
+            'LIST' => \&LIST_ftp,
+            'NLST' => \&NLST_ftp,
+            'PASV' => \&PASV_ftp,
+            'CWD'  => \&CWD_ftp,
+            'PWD'  => \&PWD_ftp,
+            'EPSV' => \&PASV_ftp,
+            'RETR' => \&RETR_ftp,
+            'SIZE' => \&SIZE_ftp,
+            'REST' => \&REST_ftp,
+            'STOR' => \&STOR_ftp,
+            'APPE' => \&STOR_ftp, # append looks like upload
+            'MDTM' => \&MDTM_ftp,
+        );
+        %displaytext = (
+            'USER' => '331 We are happy you popped in!',
+            'PASS' => '230 Welcome you silly person',
+            'PORT' => '200 You said PORT - I say FINE',
+            'TYPE' => '200 I modify TYPE as you wanted',
+            'LIST' => '150 here comes a directory',
+            'NLST' => '150 here comes a directory',
+            'CWD'  => '250 CWD command successful.',
+            'SYST' => '215 UNIX Type: L8', # just fake something
+            'QUIT' => '221 bye bye baby', # just reply something
+            'MKD'  => '257 Created your requested directory',
+            'REST' => '350 Yeah yeah we set it there for you',
+            'DELE' => '200 OK OK OK whatever you say',
+            'RNFR' => '350 Received your order. Please provide more',
+            'RNTO' => '250 Ok, thanks. File renaming completed.',
+            'NOOP' => '200 Yes, I\'m very good at doing nothing.',
+            'PBSZ' => '500 PBSZ not implemented',
+            'PROT' => '500 PROT not implemented',
+            'welcome' => join("",
+            '220-        _   _ ____  _     '."\r\n",
+            '220-    ___| | | |  _ \| |    '."\r\n",
+            '220-   / __| | | | |_) | |    '."\r\n",
+            '220-  | (__| |_| |  _ {| |___ '."\r\n",
+            '220    \___|\___/|_| \_\_____|'."\r\n")
+        );
+    }
+    elsif($proto eq 'pop3') {
+        %commandfunc = (
+            'APOP' => \&APOP_pop3,
+            'AUTH' => \&AUTH_pop3,
+            'CAPA' => \&CAPA_pop3,
+            'DELE' => \&DELE_pop3,
+            'LIST' => \&LIST_pop3,
+            'NOOP' => \&NOOP_pop3,
+            'PASS' => \&PASS_pop3,
+            'QUIT' => \&QUIT_pop3,
+            'RETR' => \&RETR_pop3,
+            'RSET' => \&RSET_pop3,
+            'STAT' => \&STAT_pop3,
+            'TOP'  => \&TOP_pop3,
+            'UIDL' => \&UIDL_pop3,
+            'USER' => \&USER_pop3,
+        );
+        %displaytext = (
+            'welcome' => join("",
+            '        _   _ ____  _     '."\r\n",
+            '    ___| | | |  _ \| |    '."\r\n",
+            '   / __| | | | |_) | |    '."\r\n",
+            '  | (__| |_| |  _ {| |___ '."\r\n",
+            '   \___|\___/|_| \_\_____|'."\r\n",
+            '+OK curl POP3 server ready to serve '."\r\n")
+        );
+    }
+    elsif($proto eq 'imap') {
+        %commandfunc = (
+            'APPEND'     => \&APPEND_imap,
+            'CAPABILITY' => \&CAPABILITY_imap,
+            'CHECK'      => \&CHECK_imap,
+            'CLOSE'      => \&CLOSE_imap,
+            'COPY'       => \&COPY_imap,
+            'CREATE'     => \&CREATE_imap,
+            'DELETE'     => \&DELETE_imap,
+            'EXAMINE'    => \&EXAMINE_imap,
+            'EXPUNGE'    => \&EXPUNGE_imap,
+            'FETCH'      => \&FETCH_imap,
+            'LIST'       => \&LIST_imap,
+            'LSUB'       => \&LSUB_imap,
+            'LOGIN'      => \&LOGIN_imap,
+            'LOGOUT'     => \&LOGOUT_imap,
+            'NOOP'       => \&NOOP_imap,
+            'RENAME'     => \&RENAME_imap,
+            'SEARCH'     => \&SEARCH_imap,
+            'SELECT'     => \&SELECT_imap,
+            'STATUS'     => \&STATUS_imap,
+            'STORE'      => \&STORE_imap,
+            'UID'        => \&UID_imap,
+        );
+        %displaytext = (
+            'welcome' => join("",
+            '        _   _ ____  _     '."\r\n",
+            '    ___| | | |  _ \| |    '."\r\n",
+            '   / __| | | | |_) | |    '."\r\n",
+            '  | (__| |_| |  _ {| |___ '."\r\n",
+            '   \___|\___/|_| \_\_____|'."\r\n",
+            '* OK curl IMAP server ready to serve'."\r\n")
+        );
+    }
+    elsif($proto eq 'smtp') {
+        %commandfunc = (
+            'DATA' => \&DATA_smtp,
+            'EHLO' => \&EHLO_smtp,
+            'EXPN' => \&EXPN_smtp,
+            'HELO' => \&HELO_smtp,
+            'HELP' => \&HELP_smtp,
+            'MAIL' => \&MAIL_smtp,
+            'NOOP' => \&NOOP_smtp,
+            'RSET' => \&RSET_smtp,
+            'RCPT' => \&RCPT_smtp,
+            'VRFY' => \&VRFY_smtp,
+            'QUIT' => \&QUIT_smtp,
+        );
+        %displaytext = (
+            'welcome' => join("",
+            '220-        _   _ ____  _     '."\r\n",
+            '220-    ___| | | |  _ \| |    '."\r\n",
+            '220-   / __| | | | |_) | |    '."\r\n",
+            '220-  | (__| |_| |  _ {| |___ '."\r\n",
+            '220    \___|\___/|_| \_\_____|'."\r\n")
+        );
+    }
+}
+
+sub close_dataconn {
+    my ($closed)=@_; # non-zero if already disconnected
+
+    my $datapid = processexists($datasockf_pidfile);
+
+    logmsg "=====> Closing $datasockf_mode DATA connection...\n";
+
+    if(!$closed) {
+        if($datapid > 0) {
+            logmsg "Server disconnects $datasockf_mode DATA connection\n";
+            print DWRITE "DISC\n";
+            my $i;
+            sysread DREAD, $i, 5;
+        }
+        else {
+            logmsg "Server finds $datasockf_mode DATA connection already ".
+                   "disconnected\n";
+        }
+    }
+    else {
+        logmsg "Server knows $datasockf_mode DATA connection is already ".
+               "disconnected\n";
+    }
+
+    if($datapid > 0) {
+        print DWRITE "QUIT\n";
+        waitpid($datapid, 0);
+        unlink($datasockf_pidfile) if(-f $datasockf_pidfile);
+        logmsg "DATA sockfilt for $datasockf_mode data channel quits ".
+               "(pid $datapid)\n";
+    }
+    else {
+        logmsg "DATA sockfilt for $datasockf_mode data channel already ".
+               "dead\n";
+    }
+
+    logmsg "=====> Closed $datasockf_mode DATA connection\n";
+
+    datasockf_state('STOPPED');
+}
+
+################
+################ SMTP commands
+################
+
+# The type of server (SMTP or ESMTP)
+my $smtp_type;
+
+# The client (which normally contains the test number)
+my $smtp_client;
+
+sub EHLO_smtp {
+    my ($client) = @_;
+    my @data;
+
+    # TODO: Get the IP address of the client connection to use in the
+    # EHLO response when the client doesn't specify one but for now use
+    # 127.0.0.1
+    if(!$client) {
+        $client = "[127.0.0.1]";
+    }
+
+    # Set the server type to ESMTP
+    $smtp_type = "ESMTP";
+
+    # Calculate the EHLO response
+    push @data, "$smtp_type pingpong test server Hello $client";
+
+    if((@capabilities) || (@auth_mechs)) {
+        my $mechs;
+
+        for my $c (@capabilities) {
+            push @data, $c;
+        }
+
+        for my $am (@auth_mechs) {
+            if(!$mechs) {
+                $mechs = "$am";
+            }
+            else {
+                $mechs .= " $am";
+            }
+        }
+
+        if($mechs) {
+            push @data, "AUTH $mechs";
+        }
+    }
+
+    # Send the EHLO response
+    for(my $i = 0; $i < @data; $i++) {
+        my $d = $data[$i];
+
+        if($i < @data - 1) {
+            sendcontrol "250-$d\r\n";
+        }
+        else {
+            sendcontrol "250 $d\r\n";
+        }
+    }
+
+    # Store the client (as it may contain the test number)
+    $smtp_client = $client;
+
+    return 0;
+}
+
+sub HELO_smtp {
+    my ($client) = @_;
+
+    # TODO: Get the IP address of the client connection to use in the HELO
+    # response when the client doesn't specify one but for now use 127.0.0.1
+    if(!$client) {
+        $client = "[127.0.0.1]";
+    }
+
+    # Set the server type to SMTP
+    $smtp_type = "SMTP";
+
+    # Send the HELO response
+    sendcontrol "250 $smtp_type pingpong test server Hello $client\r\n";
+
+    # Store the client (as it may contain the test number)
+    $smtp_client = $client;
+
+    return 0;
+}
+
+sub MAIL_smtp {
+    my ($args) = @_;
+
+    logmsg "MAIL_smtp got $args\n";
+
+    if (!$args) {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    else {
+        my $from;
+        my $size;
+        my @elements = split(/ /, $args);
+
+        # Get the FROM and SIZE parameters
+        for my $e (@elements) {
+            if($e =~ /^FROM:(.*)$/) {
+                $from = $1;
+            }
+            elsif($e =~ /^SIZE=(\d+)$/) {
+                $size = $1;
+            }
+        }
+
+        # Validate the from address (only <> and a valid email address inside
+        # <> are allowed, such as <user@example.com>)
+        if ((!$from) || (($from ne "<>") && ($from !~
+            /^<([a-zA-Z0-9._%+-]+)\@([a-zA-Z0-9.-]+).([a-zA-Z]{2,4})>$/))) {
+            sendcontrol "501 Invalid address\r\n";
+        }
+        else {
+            my @found;
+            my $valid = 1;
+
+            # Check the capabilities for SIZE and if the specified size is
+            # greater than the message size then reject it
+            if (@found = grep /^SIZE (\d+)$/, @capabilities) {
+                if ($found[0] =~ /^SIZE (\d+)$/) {
+                    if ($size > $1) {
+                        $valid = 0;
+                    }
+                }
+            }
+
+            if(!$valid) {
+                sendcontrol "552 Message size too large\r\n";
+            }
+            else {
+                sendcontrol "250 Sender OK\r\n";
+            }
+        }
+    }
+
+    return 0;
+}
+
+sub RCPT_smtp {
+    my ($args) = @_;
+
+    logmsg "RCPT_smtp got $args\n";
+
+    # Get the TO parameter
+    if($args !~ /^TO:(.*)/) {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    else {
+        my $to = $1;
+
+        # Validate the to address (only a valid email address inside <> is
+        # allowed, such as <user@example.com>)
+        if ($to !~
+            /^<([a-zA-Z0-9._%+-]+)\@([a-zA-Z0-9.-]+).([a-zA-Z]{2,4})>$/) {
+            sendcontrol "501 Invalid address\r\n";
+        }
+        else {
+            sendcontrol "250 Recipient OK\r\n";
+        }
+    }
+
+    return 0;
+}
+
+sub DATA_smtp {
+    my ($args) = @_;
+
+    if ($args) {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    elsif ($smtp_client !~ /^(\d*)$/) {
+        sendcontrol "501 Invalid arguments\r\n";
+    }
+    else {
+        sendcontrol "354 Show me the mail\r\n";
+
+        my $testno = $smtp_client;
+        my $filename = "log/upload.$testno";
+
+        logmsg "Store test number $testno in $filename\n";
+
+        open(FILE, ">$filename") ||
+            return 0; # failed to open output
+
+        my $line;
+        my $ulsize=0;
+        my $disc=0;
+        my $raw;
+        while (5 == (sysread \*SFREAD, $line, 5)) {
+            if($line eq "DATA\n") {
+                my $i;
+                my $eob;
+                sysread \*SFREAD, $i, 5;
+
+                my $size = 0;
+                if($i =~ /^([0-9a-fA-F]{4})\n/) {
+                    $size = hex($1);
+                }
+
+                read_mainsockf(\$line, $size);
+
+                $ulsize += $size;
+                print FILE $line if(!$nosave);
+
+                $raw .= $line;
+                if($raw =~ /\x0d\x0a\x2e\x0d\x0a/) {
+                    # end of data marker!
+                    $eob = 1;
+                }
+
+                logmsg "> Appending $size bytes to file\n";
+
+                if($eob) {
+                    logmsg "Found SMTP EOB marker\n";
+                    last;
+                }
+            }
+            elsif($line eq "DISC\n") {
+                # disconnect!
+                $disc=1;
+                last;
+            }
+            else {
+                logmsg "No support for: $line";
+                last;
+            }
+        }
+
+        if($nosave) {
+            print FILE "$ulsize bytes would've been stored here\n";
+        }
+
+        close(FILE);
+
+        logmsg "received $ulsize bytes upload\n";
+
+        sendcontrol "250 OK, data received!\r\n";
+    }
+
+    return 0;
+}
+
+sub NOOP_smtp {
+    my ($args) = @_;
+
+    if($args) {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    else {
+        sendcontrol "250 OK\r\n";
+    }
+
+    return 0;
+}
+
+sub RSET_smtp {
+    my ($args) = @_;
+
+    if($args) {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    else {
+        sendcontrol "250 Resetting\r\n";
+    }
+
+    return 0;
+}
+
+sub HELP_smtp {
+    my ($args) = @_;
+
+    # One argument is optional
+    if($args) {
+        logmsg "HELP_smtp got $args\n";
+    }
+
+    if($smtp_client eq "verifiedserver") {
+        # This is the secret command that verifies that this actually is
+        # the curl test server
+        sendcontrol "214 WE ROOLZ: $$\r\n";
+
+        if($verbose) {
+            print STDERR "FTPD: We returned proof we are the test server\n";
+        }
+
+        logmsg "return proof we are we\n";
+    }
+    else {
+        sendcontrol "214-This server supports the following commands:\r\n";
+
+        if(@auth_mechs) {
+            sendcontrol "214 HELO EHLO RCPT DATA RSET MAIL VRFY EXPN QUIT HELP AUTH\r\n";
+        }
+        else {
+            sendcontrol "214 HELO EHLO RCPT DATA RSET MAIL VRFY EXPN QUIT HELP\r\n";
+        }
+    }
+
+    return 0;
+}
+
+sub VRFY_smtp {
+    my ($args) = @_;
+    my ($username, $address) = split(/ /, $args, 2);
+
+    logmsg "VRFY_smtp got $args\n";
+
+    if($username eq "") {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    else {
+        my @data = getreplydata($smtp_client);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+    }
+
+    return 0;
+}
+
+sub EXPN_smtp {
+    my ($list_name) = @_;
+
+    logmsg "EXPN_smtp got $list_name\n";
+
+    if(!$list_name) {
+        sendcontrol "501 Unrecognized parameter\r\n";
+    }
+    else {
+        my @data = getreplydata($smtp_client);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+    }
+
+    return 0;
+}
+
+sub QUIT_smtp {
+    sendcontrol "221 curl $smtp_type server signing off\r\n";
+
+    return 0;
+}
+
+# What was deleted by IMAP STORE / POP3 DELE commands
+my @deleted;
+
+################
+################ IMAP commands
+################
+
+# global to allow the command functions to read it
+my $cmdid;
+
+# what was picked by SELECT
+my $selected;
+
+# Any IMAP parameter can come in escaped and in double quotes.
+# This function is dumb (so far) and just removes the quotes if present.
+sub fix_imap_params {
+    foreach (@_) {
+        $_ = $1 if /^"(.*)"$/;
+    }
+}
+
+sub CAPABILITY_imap {
+    if((!@capabilities) && (!@auth_mechs)) {
+        sendcontrol "$cmdid BAD Command\r\n";
+    }
+    else {
+        my $data;
+
+        # Calculate the CAPABILITY response
+        $data = "* CAPABILITY IMAP4";
+
+        for my $c (@capabilities) {
+            $data .= " $c";
+        }
+
+        for my $am (@auth_mechs) {
+            $data .= " AUTH=$am";
+        }
+
+        $data .= " pingpong test server\r\n";
+
+        # Send the CAPABILITY response
+        sendcontrol $data;
+        sendcontrol "$cmdid OK CAPABILITY completed\r\n";
+    }
+
+    return 0;
+}
+
+sub LOGIN_imap {
+    my ($args) = @_;
+    my ($user, $password) = split(/ /, $args, 2);
+    fix_imap_params($user, $password);
+
+    logmsg "LOGIN_imap got $args\n";
+
+    if ($user eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    elsif (($user ne $TEXT_USERNAME) || ($password ne $TEXT_PASSWORD)) {
+        sendcontrol "$cmdid NO LOGIN failed\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK LOGIN completed\r\n";
+    }
+
+    return 0;
+}
+
+sub SELECT_imap {
+    my ($mailbox) = @_;
+    fix_imap_params($mailbox);
+
+    logmsg "SELECT_imap got test $mailbox\n";
+
+    if($mailbox eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        # Example from RFC 3501, 6.3.1. SELECT Command
+        sendcontrol "* 172 EXISTS\r\n";
+        sendcontrol "* 1 RECENT\r\n";
+        sendcontrol "* OK [UNSEEN 12] Message 12 is first unseen\r\n";
+        sendcontrol "* OK [UIDVALIDITY 3857529045] UIDs valid\r\n";
+        sendcontrol "* OK [UIDNEXT 4392] Predicted next UID\r\n";
+        sendcontrol "* FLAGS (\\Answered \\Flagged \\Deleted \\Seen \\Draft)\r\n";
+        sendcontrol "* OK [PERMANENTFLAGS (\\Deleted \\Seen \\*)] Limited\r\n";
+        sendcontrol "$cmdid OK [READ-WRITE] SELECT completed\r\n";
+
+        $selected = $mailbox;
+    }
+
+    return 0;
+}
+
+sub FETCH_imap {
+    my ($args) = @_;
+    my ($uid, $how) = split(/ /, $args, 2);
+    fix_imap_params($uid, $how);
+
+    logmsg "FETCH_imap got $args\n";
+
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    else {
+        my @data;
+        my $size;
+
+        if($selected eq "verifiedserver") {
+            # this is the secret command that verifies that this actually is
+            # the curl test server
+            my $response = "WE ROOLZ: $$\r\n";
+            if($verbose) {
+                print STDERR "FTPD: We returned proof we are the test server\n";
+            }
+            $data[0] = $response;
+            logmsg "return proof we are we\n";
+        }
+        else {
+            # send mail content
+            logmsg "retrieve a mail\n";
+
+            @data = getreplydata($selected);
+        }
+
+        for (@data) {
+            $size += length($_);
+        }
+
+        sendcontrol "* $uid FETCH ($how {$size}\r\n";
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol ")\r\n";
+        sendcontrol "$cmdid OK FETCH completed\r\n";
+    }
+
+    return 0;
+}
+
+sub APPEND_imap {
+    my ($args) = @_;
+
+    logmsg "APPEND_imap got $args\r\n";
+
+    $args =~ /^([^ ]+) [^{]*\{(\d+)\}$/;
+    my ($mailbox, $size) = ($1, $2);
+    fix_imap_params($mailbox);
+
+    if($mailbox eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        sendcontrol "+ Ready for literal data\r\n";
+
+        my $testno = $mailbox;
+        my $filename = "log/upload.$testno";
+
+        logmsg "Store test number $testno in $filename\n";
+
+        open(FILE, ">$filename") ||
+            return 0; # failed to open output
+
+        my $received = 0;
+        my $line;
+        while(5 == (sysread \*SFREAD, $line, 5)) {
+            if($line eq "DATA\n") {
+                sysread \*SFREAD, $line, 5;
+
+                my $chunksize = 0;
+                if($line =~ /^([0-9a-fA-F]{4})\n/) {
+                    $chunksize = hex($1);
+                }
+
+                read_mainsockf(\$line, $chunksize);
+
+                my $left = $size - $received;
+                my $datasize = ($left > $chunksize) ? $chunksize : $left;
+
+                if($datasize > 0) {
+                    logmsg "> Appending $datasize bytes to file\n";
+                    print FILE substr($line, 0, $datasize) if(!$nosave);
+                    $line = substr($line, $datasize);
+
+                    $received += $datasize;
+                    if($received == $size) {
+                        logmsg "Received all data, waiting for final CRLF.\n";
+                    }
+                }
+
+                if($received == $size && $line eq "\r\n") {
+                    last;
+                }
+            }
+            elsif($line eq "DISC\n") {
+                logmsg "Unexpected disconnect!\n";
+                last;
+            }
+            else {
+                logmsg "No support for: $line";
+                last;
+            }
+        }
+
+        if($nosave) {
+            print FILE "$size bytes would've been stored here\n";
+        }
+
+        close(FILE);
+
+        logmsg "received $size bytes upload\n";
+
+        sendcontrol "$cmdid OK APPEND completed\r\n";
+    }
+
+    return 0;
+}
+
+sub STORE_imap {
+    my ($args) = @_;
+    my ($uid, $what, $value) = split(/ /, $args, 3);
+    fix_imap_params($uid);
+
+    logmsg "STORE_imap got $args\n";
+
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    elsif (($uid eq "") || ($what ne "+Flags") || ($value eq "")) {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        if($value eq "\\Deleted") {
+            push(@deleted, $uid);
+        }
+
+        sendcontrol "* $uid FETCH (FLAGS (\\Seen $value))\r\n";
+        sendcontrol "$cmdid OK STORE completed\r\n";
+    }
+
+    return 0;
+}
+
+sub LIST_imap {
+    my ($args) = @_;
+    my ($reference, $mailbox) = split(/ /, $args, 2);
+    fix_imap_params($reference, $mailbox);
+
+    logmsg "LIST_imap got $args\n";
+
+    if ($reference eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    elsif ($reference eq "verifiedserver") {
+        # this is the secret command that verifies that this actually is
+        # the curl test server
+        sendcontrol "* LIST () \"/\" \"WE ROOLZ: $$\"\r\n";
+        sendcontrol "$cmdid OK LIST Completed\r\n";
+
+        if($verbose) {
+            print STDERR "FTPD: We returned proof we are the test server\n";
+        }
+
+        logmsg "return proof we are we\n";
+    }
+    else {
+        my @data = getreplydata($reference);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK LIST Completed\r\n";
+    }
+
+    return 0;
+}
+
+sub LSUB_imap {
+    my ($args) = @_;
+    my ($reference, $mailbox) = split(/ /, $args, 2);
+    fix_imap_params($reference, $mailbox);
+
+    logmsg "LSUB_imap got $args\n";
+
+    if ($reference eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        my @data = getreplydata($reference);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK LSUB Completed\r\n";
+    }
+
+    return 0;
+}
+
+sub EXAMINE_imap {
+    my ($mailbox) = @_;
+    fix_imap_params($mailbox);
+
+    logmsg "EXAMINE_imap got $mailbox\n";
+
+    if ($mailbox eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        my @data = getreplydata($mailbox);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK [READ-ONLY] EXAMINE completed\r\n";
+    }
+
+    return 0;
+}
+
+sub STATUS_imap {
+    my ($args) = @_;
+    my ($mailbox, $what) = split(/ /, $args, 2);
+    fix_imap_params($mailbox);
+
+    logmsg "STATUS_imap got $args\n";
+
+    if ($mailbox eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        my @data = getreplydata($mailbox);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK STATUS completed\r\n";
+    }
+
+    return 0;
+}
+
+sub SEARCH_imap {
+    my ($what) = @_;
+    fix_imap_params($what);
+
+    logmsg "SEARCH_imap got $what\n";
+
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    elsif ($what eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        my @data = getreplydata($selected);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK SEARCH completed\r\n";
+    }
+
+    return 0;
+}
+
+sub CREATE_imap {
+    my ($args) = @_;
+    fix_imap_params($args);
+
+    logmsg "CREATE_imap got $args\n";
+
+    if ($args eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK CREATE completed\r\n";
+    }
+
+    return 0;
+}
+
+sub DELETE_imap {
+    my ($args) = @_;
+    fix_imap_params($args);
+
+    logmsg "DELETE_imap got $args\n";
+
+    if ($args eq "") {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK DELETE completed\r\n";
+    }
+
+    return 0;
+}
+
+sub RENAME_imap {
+    my ($args) = @_;
+    my ($from_mailbox, $to_mailbox) = split(/ /, $args, 2);
+    fix_imap_params($from_mailbox, $to_mailbox);
+
+    logmsg "RENAME_imap got $args\n";
+
+    if (($from_mailbox eq "") || ($to_mailbox eq "")) {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK RENAME completed\r\n";
+    }
+
+    return 0;
+}
+
+sub CHECK_imap {
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK CHECK completed\r\n";
+    }
+
+    return 0;
+}
+
+sub CLOSE_imap {
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    elsif (!@deleted) {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK CLOSE completed\r\n";
+
+        @deleted = ();
+    }
+
+    return 0;
+}
+
+sub EXPUNGE_imap {
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    else {
+        if (!@deleted) {
+            # Report the number of existing messages as per the SELECT
+            # command
+            sendcontrol "* 172 EXISTS\r\n";
+        }
+        else {
+            # Report the message UIDs being deleted
+            for my $d (@deleted) {
+                sendcontrol "* $d EXPUNGE\r\n";
+            }
+
+            @deleted = ();
+        }
+
+        sendcontrol "$cmdid OK EXPUNGE completed\r\n";
+    }
+
+    return 0;
+}
+
+sub COPY_imap {
+    my ($args) = @_;
+    my ($uid, $mailbox) = split(/ /, $args, 2);
+    fix_imap_params($uid, $mailbox);
+
+    logmsg "COPY_imap got $args\n";
+
+    if (($uid eq "") || ($mailbox eq "")) {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        sendcontrol "$cmdid OK COPY completed\r\n";
+    }
+
+    return 0;
+}
+
+sub UID_imap {
+    my ($args) = @_;
+    my ($command) = split(/ /, $args, 1);
+    fix_imap_params($command);
+
+    logmsg "UID_imap got $args\n";
+
+    if ($selected eq "") {
+        sendcontrol "$cmdid BAD Command received in Invalid state\r\n";
+    }
+    elsif (($command ne "COPY") && ($command ne "FETCH") &&
+           ($command ne "STORE") && ($command ne "SEARCH")) {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        my @data = getreplydata($selected);
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK $command completed\r\n";
+    }
+
+    return 0;
+}
+
+sub NOOP_imap {
+    my ($args) = @_;
+    my @data = (
+        "* 22 EXPUNGE\r\n",
+        "* 23 EXISTS\r\n",
+        "* 3 RECENT\r\n",
+        "* 14 FETCH (FLAGS (\\Seen \\Deleted))\r\n",
+    );
+
+    if ($args) {
+        sendcontrol "$cmdid BAD Command Argument\r\n";
+    }
+    else {
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        sendcontrol "$cmdid OK NOOP completed\r\n";
+    }
+
+    return 0;
+}
+
+sub LOGOUT_imap {
+    sendcontrol "* BYE curl IMAP server signing off\r\n";
+    sendcontrol "$cmdid OK LOGOUT completed\r\n";
+
+    return 0;
+}
+
+################
+################ POP3 commands
+################
+
+# Who is attempting to log in
+my $username;
+
+sub CAPA_pop3 {
+    my @list = ();
+    my $mechs;
+
+    # Calculate the capability list based on the specified capabilities
+    # (except APOP) and any authentication mechanisms
+    for my $c (@capabilities) {
+        push @list, "$c\r\n" unless $c eq "APOP";
+    }
+
+    for my $am (@auth_mechs) {
+        if(!$mechs) {
+            $mechs = "$am";
+        }
+        else {
+            $mechs .= " $am";
+        }
+    }
+
+    if($mechs) {
+        push @list, "SASL $mechs\r\n";
+    }
+
+    if(!@list) {
+        sendcontrol "-ERR Unrecognized command\r\n";
+    }
+    else {
+        my @data = ();
+
+        # Calculate the CAPA response
+        push @data, "+OK List of capabilities follows\r\n";
+
+        for my $l (@list) {
+            push @data, "$l\r\n";
+        }
+
+        push @data, "IMPLEMENTATION POP3 pingpong test server\r\n";
+
+        # Send the CAPA response
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        # End with the magic 3-byte end of listing marker
+        sendcontrol ".\r\n";
+    }
+
+    return 0;
+}
+
+sub APOP_pop3 {
+    my ($args) = @_;
+    my ($user, $secret) = split(/ /, $args, 2);
+
+    if (!grep /^APOP$/, @capabilities) {
+        sendcontrol "-ERR Unrecognized command\r\n";
+    }
+    elsif (($user eq "") || ($secret eq "")) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        my $digest = Digest::MD5::md5_hex($POP3_TIMESTAMP, $TEXT_PASSWORD);
+
+        if (($user ne $TEXT_USERNAME) || ($secret ne $digest)) {
+            sendcontrol "-ERR Login failure\r\n";
+        }
+        else {
+            sendcontrol "+OK Login successful\r\n";
+        }
+    }
+
+    return 0;
+}
+
+sub AUTH_pop3 {
+    if(!@auth_mechs) {
+        sendcontrol "-ERR Unrecognized command\r\n";
+    }
+    else {
+        my @data = ();
+
+        # Calculate the AUTH response
+        push @data, "+OK List of supported mechanisms follows\r\n";
+
+        for my $am (@auth_mechs) {
+            push @data, "$am\r\n";
+        }
+
+        # Send the AUTH response
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        # End with the magic 3-byte end of listing marker
+        sendcontrol ".\r\n";
+    }
+
+    return 0;
+}
+
+sub USER_pop3 {
+    my ($user) = @_;
+
+    logmsg "USER_pop3 got $user\n";
+
+    if (!$user) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        $username = $user;
+
+        sendcontrol "+OK\r\n";
+    }
+
+    return 0;
+}
+
+sub PASS_pop3 {
+    my ($password) = @_;
+
+    logmsg "PASS_pop3 got $password\n";
+
+    if (($username ne $TEXT_USERNAME) || ($password ne $TEXT_PASSWORD)) {
+        sendcontrol "-ERR Login failure\r\n";
+    }
+    else {
+        sendcontrol "+OK Login successful\r\n";
+    }
+
+    return 0;
+}
+
+sub RETR_pop3 {
+    my ($msgid) = @_;
+    my @data;
+
+    if($msgid =~ /^verifiedserver$/) {
+        # this is the secret command that verifies that this actually is
+        # the curl test server
+        my $response = "WE ROOLZ: $$\r\n";
+        if($verbose) {
+            print STDERR "FTPD: We returned proof we are the test server\n";
+        }
+        $data[0] = $response;
+        logmsg "return proof we are we\n";
+    }
+    else {
+        # send mail content
+        logmsg "retrieve a mail\n";
+
+        @data = getreplydata($msgid);
+    }
+
+    sendcontrol "+OK Mail transfer starts\r\n";
+
+    for my $d (@data) {
+        sendcontrol $d;
+    }
+
+    # end with the magic 3-byte end of mail marker, assumes that the
+    # mail body ends with a CRLF!
+    sendcontrol ".\r\n";
+
+    return 0;
+}
+
+sub LIST_pop3 {
+    # This is a built-in fake-message list
+    my @data = (
+        "1 100\r\n",
+        "2 4294967400\r\n",	# > 4 GB
+        "3 200\r\n",
+    );
+
+    logmsg "retrieve a message list\n";
+
+    sendcontrol "+OK Listing starts\r\n";
+
+    for my $d (@data) {
+        sendcontrol $d;
+    }
+
+    # End with the magic 3-byte end of listing marker
+    sendcontrol ".\r\n";
+
+    return 0;
+}
+
+sub DELE_pop3 {
+    my ($msgid) = @_;
+
+    logmsg "DELE_pop3 got $msgid\n";
+
+    if (!$msgid) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        push (@deleted, $msgid);
+
+        sendcontrol "+OK\r\n";
+    }
+
+    return 0;
+}
+
+sub STAT_pop3 {
+    my ($args) = @_;
+
+    if ($args) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        # Send statistics for the built-in fake message list as
+        # detailed in the LIST_pop3 function above
+        sendcontrol "+OK 3 4294967800\r\n";
+    }
+
+    return 0;
+}
+
+sub NOOP_pop3 {
+    my ($args) = @_;
+
+    if ($args) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        sendcontrol "+OK\r\n";
+    }
+
+    return 0;
+}
+
+sub UIDL_pop3 {
+    # This is a built-in fake-message UID list
+    my @data = (
+        "1 1\r\n",
+        "2 2\r\n",
+        "3 4\r\n", # Note that UID 3 is a simulated "deleted" message
+    );
+
+    if (!grep /^UIDL$/, @capabilities) {
+        sendcontrol "-ERR Unrecognized command\r\n";
+    }
+    else {
+        logmsg "retrieve a message UID list\n";
+
+        sendcontrol "+OK Listing starts\r\n";
+
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        # End with the magic 3-byte end of listing marker
+        sendcontrol ".\r\n";
+    }
+
+    return 0;
+}
+
+sub TOP_pop3 {
+    my ($args) = @_;
+    my ($msgid, $lines) = split(/ /, $args, 2);
+
+    logmsg "TOP_pop3 got $args\n";
+
+    if (!grep /^TOP$/, @capabilities) {
+        sendcontrol "-ERR Unrecognized command\r\n";
+    }
+    elsif (($msgid eq "") || ($lines eq "")) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        if ($lines == "0") {
+            logmsg "retrieve header of mail\n";
+        }
+        else {
+            logmsg "retrieve top $lines lines of mail\n";
+        }
+
+        my @data = getreplydata($msgid);
+
+        sendcontrol "+OK Mail transfer starts\r\n";
+
+        # Send mail content
+        for my $d (@data) {
+            sendcontrol $d;
+        }
+
+        # End with the magic 3-byte end of mail marker, assumes that the
+        # mail body ends with a CRLF!
+        sendcontrol ".\r\n";
+    }
+
+    return 0;
+}
+
+sub RSET_pop3 {
+    my ($args) = @_;
+
+    if ($args) {
+        sendcontrol "-ERR Protocol error\r\n";
+    }
+    else {
+        if (@deleted) {
+            logmsg "resetting @deleted message(s)\n";
+
+            @deleted = ();
+        }
+
+        sendcontrol "+OK\r\n";
+    }
+
+    return 0;
+}
+
+sub QUIT_pop3 {
+    if(@deleted) {
+        logmsg "deleting @deleted message(s)\n";
+
+        @deleted = ();
+    }
+
+    sendcontrol "+OK curl POP3 server signing off\r\n";
+
+    return 0;
+}
+
+################
+################ FTP commands
+################
+my $rest=0;
+sub REST_ftp {
+    $rest = $_[0];
+    logmsg "Set REST position to $rest\n"
+}
+
+sub switch_directory_goto {
+  my $target_dir = $_;
+
+  if(!$ftptargetdir) {
+    $ftptargetdir = "/";
+  }
+
+  if($target_dir eq "") {
+    $ftptargetdir = "/";
+  }
+  elsif($target_dir eq "..") {
+    if($ftptargetdir eq "/") {
+      $ftptargetdir = "/";
+    }
+    else {
+      $ftptargetdir =~ s/[[:alnum:]]+\/$//;
+    }
+  }
+  else {
+    $ftptargetdir .= $target_dir . "/";
+  }
+}
+
+sub switch_directory {
+    my $target_dir = $_[0];
+
+    if($target_dir =~ /^test-(\d+)/) {
+        $cwd_testno = $1;
+    }
+    elsif($target_dir eq "/") {
+        $ftptargetdir = "/";
+    }
+    else {
+        my @dirs = split("/", $target_dir);
+        for(@dirs) {
+          switch_directory_goto($_);
+        }
+    }
+}
+
+sub CWD_ftp {
+  my ($folder, $fullcommand) = $_[0];
+  switch_directory($folder);
+  if($ftptargetdir =~ /^\/fully_simulated/) {
+    $ftplistparserstate = "enabled";
+  }
+  else {
+    undef $ftplistparserstate;
+  }
+}
+
+sub PWD_ftp {
+    my $mydir;
+    $mydir = $ftptargetdir ? $ftptargetdir : "/";
+
+    if($mydir ne "/") {
+        $mydir =~ s/\/$//;
+    }
+    sendcontrol "257 \"$mydir\" is current directory\r\n";
+}
+
+sub LIST_ftp {
+    #  print "150 ASCII data connection for /bin/ls (193.15.23.1,59196) (0 bytes)\r\n";
+
+# this is a built-in fake-dir ;-)
+my @ftpdir=("total 20\r\n",
+"drwxr-xr-x   8 98       98           512 Oct 22 13:06 .\r\n",
+"drwxr-xr-x   8 98       98           512 Oct 22 13:06 ..\r\n",
+"drwxr-xr-x   2 98       98           512 May  2  1996 .NeXT\r\n",
+"-r--r--r--   1 0        1             35 Jul 16  1996 README\r\n",
+"lrwxrwxrwx   1 0        1              7 Dec  9  1999 bin -> usr/bin\r\n",
+"dr-xr-xr-x   2 0        1            512 Oct  1  1997 dev\r\n",
+"drwxrwxrwx   2 98       98           512 May 29 16:04 download.html\r\n",
+"dr-xr-xr-x   2 0        1            512 Nov 30  1995 etc\r\n",
+"drwxrwxrwx   2 98       1            512 Oct 30 14:33 pub\r\n",
+"dr-xr-xr-x   5 0        1            512 Oct  1  1997 usr\r\n");
+
+    if($datasockf_conn eq 'no') {
+        if($nodataconn425) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "425 Can't open data connection\r\n";
+        }
+        elsif($nodataconn421) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "421 Connection timed out\r\n";
+        }
+        elsif($nodataconn150) {
+            sendcontrol "150 Opening data connection\r\n";
+            # client shall timeout
+        }
+        else {
+            # client shall timeout
+        }
+        return 0;
+    }
+
+    if($ftplistparserstate) {
+      @ftpdir = ftp_contentlist($ftptargetdir);
+    }
+
+    logmsg "pass LIST data on data connection\n";
+
+    if($cwd_testno) {
+        loadtest("$srcdir/data/test$cwd_testno");
+
+        my @data = getpart("reply", "data");
+        for(@data) {
+            my $send = $_;
+            # convert all \n to \r\n for ASCII transfer
+            $send =~ s/\r\n/\n/g;
+            $send =~ s/\n/\r\n/g;
+            logmsg "send $send as data\n";
+            senddata $send;
+        }
+        $cwd_testno = 0; # forget it again
+    }
+    else {
+        # old hard-coded style
+        for(@ftpdir) {
+            senddata $_;
+        }
+    }
+    close_dataconn(0);
+    sendcontrol "226 ASCII transfer complete\r\n";
+    return 0;
+}
+
+sub NLST_ftp {
+    my @ftpdir=("file", "with space", "fake", "..", " ..", "funny", "README");
+
+    if($datasockf_conn eq 'no') {
+        if($nodataconn425) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "425 Can't open data connection\r\n";
+        }
+        elsif($nodataconn421) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "421 Connection timed out\r\n";
+        }
+        elsif($nodataconn150) {
+            sendcontrol "150 Opening data connection\r\n";
+            # client shall timeout
+        }
+        else {
+            # client shall timeout
+        }
+        return 0;
+    }
+
+    logmsg "pass NLST data on data connection\n";
+    for(@ftpdir) {
+        senddata "$_\r\n";
+    }
+    close_dataconn(0);
+    sendcontrol "226 ASCII transfer complete\r\n";
+    return 0;
+}
+
+sub MDTM_ftp {
+    my $testno = $_[0];
+    my $testpart = "";
+    if ($testno > 10000) {
+        $testpart = $testno % 10000;
+        $testno = int($testno / 10000);
+    }
+
+    loadtest("$srcdir/data/test$testno");
+
+    my @data = getpart("reply", "mdtm");
+
+    my $reply = $data[0];
+    chomp $reply if($reply);
+
+    if($reply && ($reply =~ /^[+-]?\d+$/) && ($reply < 0)) {
+        sendcontrol "550 $testno: no such file.\r\n";
+    }
+    elsif($reply) {
+        sendcontrol "$reply\r\n";
+    }
+    else {
+        sendcontrol "500 MDTM: no such command.\r\n";
+    }
+    return 0;
+}
+
+sub SIZE_ftp {
+    my $testno = $_[0];
+    if($ftplistparserstate) {
+        my $size = wildcard_filesize($ftptargetdir, $testno);
+        if($size == -1) {
+            sendcontrol "550 $testno: No such file or directory.\r\n";
+        }
+        else {
+            sendcontrol "213 $size\r\n";
+        }
+        return 0;
+    }
+
+    if($testno =~ /^verifiedserver$/) {
+        my $response = "WE ROOLZ: $$\r\n";
+        my $size = length($response);
+        sendcontrol "213 $size\r\n";
+        return 0;
+    }
+
+    if($testno =~ /(\d+)\/?$/) {
+        $testno = $1;
+    }
+    else {
+        print STDERR "SIZE_ftp: invalid test number: $testno\n";
+        return 1;
+    }
+
+    my $testpart = "";
+    if($testno > 10000) {
+        $testpart = $testno % 10000;
+        $testno = int($testno / 10000);
+    }
+
+    loadtest("$srcdir/data/test$testno");
+
+    my @data = getpart("reply", "size");
+
+    my $size = $data[0];
+
+    if($size) {
+        if($size > -1) {
+            sendcontrol "213 $size\r\n";
+        }
+        else {
+            sendcontrol "550 $testno: No such file or directory.\r\n";
+        }
+    }
+    else {
+        $size=0;
+        @data = getpart("reply", "data$testpart");
+        for(@data) {
+            $size += length($_);
+        }
+        if($size) {
+            sendcontrol "213 $size\r\n";
+        }
+        else {
+            sendcontrol "550 $testno: No such file or directory.\r\n";
+        }
+    }
+    return 0;
+}
+
+sub RETR_ftp {
+    my ($testno) = @_;
+
+    if($datasockf_conn eq 'no') {
+        if($nodataconn425) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "425 Can't open data connection\r\n";
+        }
+        elsif($nodataconn421) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "421 Connection timed out\r\n";
+        }
+        elsif($nodataconn150) {
+            sendcontrol "150 Opening data connection\r\n";
+            # client shall timeout
+        }
+        else {
+            # client shall timeout
+        }
+        return 0;
+    }
+
+    if($ftplistparserstate) {
+        my @content = wildcard_getfile($ftptargetdir, $testno);
+        if($content[0] == -1) {
+            #file not found
+        }
+        else {
+            my $size = length $content[1];
+            sendcontrol "150 Binary data connection for $testno ($size bytes).\r\n",
+            senddata $content[1];
+            close_dataconn(0);
+            sendcontrol "226 File transfer complete\r\n";
+        }
+        return 0;
+    }
+
+    if($testno =~ /^verifiedserver$/) {
+        # this is the secret command that verifies that this actually is
+        # the curl test server
+        my $response = "WE ROOLZ: $$\r\n";
+        my $len = length($response);
+        sendcontrol "150 Binary junk ($len bytes).\r\n";
+        senddata "WE ROOLZ: $$\r\n";
+        close_dataconn(0);
+        sendcontrol "226 File transfer complete\r\n";
+        if($verbose) {
+            print STDERR "FTPD: We returned proof we are the test server\n";
+        }
+        return 0;
+    }
+
+    $testno =~ s/^([^0-9]*)//;
+    my $testpart = "";
+    if ($testno > 10000) {
+        $testpart = $testno % 10000;
+        $testno = int($testno / 10000);
+    }
+
+    loadtest("$srcdir/data/test$testno");
+
+    my @data = getpart("reply", "data$testpart");
+
+    my $size=0;
+    for(@data) {
+        $size += length($_);
+    }
+
+    my %hash = getpartattr("reply", "data$testpart");
+
+    if($size || $hash{'sendzero'}) {
+
+        if($rest) {
+            # move read pointer forward
+            $size -= $rest;
+            logmsg "REST $rest was removed from size, makes $size left\n";
+            $rest = 0; # reset REST offset again
+        }
+        if($retrweirdo) {
+            sendcontrol "150 Binary data connection for $testno () ($size bytes).\r\n",
+            "226 File transfer complete\r\n";
+
+            for(@data) {
+                my $send = $_;
+                senddata $send;
+            }
+            close_dataconn(0);
+            $retrweirdo=0; # switch off the weirdo again!
+        }
+        else {
+            my $sz = "($size bytes)";
+            if($retrnosize) {
+                $sz = "size?";
+            }
+
+            sendcontrol "150 Binary data connection for $testno () $sz.\r\n";
+
+            for(@data) {
+                my $send = $_;
+                senddata $send;
+            }
+            close_dataconn(0);
+            sendcontrol "226 File transfer complete\r\n";
+        }
+    }
+    else {
+        sendcontrol "550 $testno: No such file or directory.\r\n";
+    }
+    return 0;
+}
+
+sub STOR_ftp {
+    my $testno=$_[0];
+
+    my $filename = "log/upload.$testno";
+
+    if($datasockf_conn eq 'no') {
+        if($nodataconn425) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "425 Can't open data connection\r\n";
+        }
+        elsif($nodataconn421) {
+            sendcontrol "150 Opening data connection\r\n";
+            sendcontrol "421 Connection timed out\r\n";
+        }
+        elsif($nodataconn150) {
+            sendcontrol "150 Opening data connection\r\n";
+            # client shall timeout
+        }
+        else {
+            # client shall timeout
+        }
+        return 0;
+    }
+
+    logmsg "STOR test number $testno in $filename\n";
+
+    sendcontrol "125 Gimme gimme gimme!\r\n";
+
+    open(FILE, ">$filename") ||
+        return 0; # failed to open output
+
+    my $line;
+    my $ulsize=0;
+    my $disc=0;
+    while (5 == (sysread DREAD, $line, 5)) {
+        if($line eq "DATA\n") {
+            my $i;
+            sysread DREAD, $i, 5;
+
+            my $size = 0;
+            if($i =~ /^([0-9a-fA-F]{4})\n/) {
+                $size = hex($1);
+            }
+
+            read_datasockf(\$line, $size);
+
+            #print STDERR "  GOT: $size bytes\n";
+
+            $ulsize += $size;
+            print FILE $line if(!$nosave);
+            logmsg "> Appending $size bytes to file\n";
+        }
+        elsif($line eq "DISC\n") {
+            # disconnect!
+            $disc=1;
+            last;
+        }
+        else {
+            logmsg "No support for: $line";
+            last;
+        }
+    }
+    if($nosave) {
+        print FILE "$ulsize bytes would've been stored here\n";
+    }
+    close(FILE);
+    close_dataconn($disc);
+    logmsg "received $ulsize bytes upload\n";
+    sendcontrol "226 File transfer complete\r\n";
+    return 0;
+}
+
+sub PASV_ftp {
+    my ($arg, $cmd)=@_;
+    my $pasvport;
+    my $bindonly = ($nodataconn) ? '--bindonly' : '';
+
+    # kill previous data connection sockfilt when alive
+    if($datasockf_runs eq 'yes') {
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt for $datasockf_mode data channel killed\n";
+    }
+    datasockf_state('STOPPED');
+
+    logmsg "====> Passive DATA channel requested by client\n";
+
+    logmsg "DATA sockfilt for passive data channel starting...\n";
+
+    # We fire up a new sockfilt to do the data transfer for us.
+    my $datasockfcmd = "./server/sockfilt " .
+        "--ipv$ipvnum $bindonly --port 0 " .
+        "--pidfile \"$datasockf_pidfile\" " .
+        "--logfile \"$datasockf_logfile\"";
+    $slavepid = open2(\*DREAD, \*DWRITE, $datasockfcmd);
+
+    if($nodataconn) {
+        datasockf_state('PASSIVE_NODATACONN');
+    }
+    else {
+        datasockf_state('PASSIVE');
+    }
+
+    print STDERR "$datasockfcmd\n" if($verbose);
+
+    print DWRITE "PING\n";
+    my $pong;
+    sysread_or_die(\*DREAD, \$pong, 5);
+
+    if($pong =~ /^FAIL/) {
+        logmsg "DATA sockfilt said: FAIL\n";
+        logmsg "DATA sockfilt for passive data channel failed\n";
+        logmsg "DATA sockfilt not running\n";
+        datasockf_state('STOPPED');
+        sendcontrol "500 no free ports!\r\n";
+        return;
+    }
+    elsif($pong !~ /^PONG/) {
+        logmsg "DATA sockfilt unexpected response: $pong\n";
+        logmsg "DATA sockfilt for passive data channel failed\n";
+        logmsg "DATA sockfilt killed now\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt not running\n";
+        datasockf_state('STOPPED');
+        sendcontrol "500 no free ports!\r\n";
+        return;
+    }
+
+    logmsg "DATA sockfilt for passive data channel started (pid $slavepid)\n";
+
+    # Find out on what port we listen on or have bound
+    my $i;
+    print DWRITE "PORT\n";
+
+    # READ the response code
+    sysread_or_die(\*DREAD, \$i, 5);
+
+    # READ the response size
+    sysread_or_die(\*DREAD, \$i, 5);
+
+    my $size = 0;
+    if($i =~ /^([0-9a-fA-F]{4})\n/) {
+        $size = hex($1);
+    }
+
+    # READ the response data
+    read_datasockf(\$i, $size);
+
+    # The data is in the format
+    # IPvX/NNN
+
+    if($i =~ /IPv(\d)\/(\d+)/) {
+        # FIX: deal with IP protocol version
+        $pasvport = $2;
+    }
+
+    if(!$pasvport) {
+        logmsg "DATA sockfilt unknown listener port\n";
+        logmsg "DATA sockfilt for passive data channel failed\n";
+        logmsg "DATA sockfilt killed now\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt not running\n";
+        datasockf_state('STOPPED');
+        sendcontrol "500 no free ports!\r\n";
+        return;
+    }
+
+    if($nodataconn) {
+        my $str = nodataconn_str();
+        logmsg "DATA sockfilt for passive data channel ($str) bound on port ".
+               "$pasvport\n";
+    }
+    else {
+        logmsg "DATA sockfilt for passive data channel listens on port ".
+               "$pasvport\n";
+    }
+
+    if($cmd ne "EPSV") {
+        # PASV reply
+        my $p=$listenaddr;
+        $p =~ s/\./,/g;
+        if($pasvbadip) {
+            $p="1,2,3,4";
+        }
+        sendcontrol sprintf("227 Entering Passive Mode ($p,%d,%d)\n",
+                            int($pasvport/256), int($pasvport%256));
+    }
+    else {
+        # EPSV reply
+        sendcontrol sprintf("229 Entering Passive Mode (|||%d|)\n", $pasvport);
+    }
+
+    logmsg "Client has been notified that DATA conn ".
+           "will be accepted on port $pasvport\n";
+
+    if($nodataconn) {
+        my $str = nodataconn_str();
+        logmsg "====> Client fooled ($str)\n";
+        return;
+    }
+
+    eval {
+        local $SIG{ALRM} = sub { die "alarm\n" };
+
+        # assume swift operations unless explicitly slow
+        alarm ($datadelay?20:10);
+
+        # Wait for 'CNCT'
+        my $input;
+
+        # FIX: Monitor ctrl conn for disconnect
+
+        while(sysread(DREAD, $input, 5)) {
+
+            if($input !~ /^CNCT/) {
+                # we wait for a connected client
+                logmsg "Odd, we got $input from client\n";
+                next;
+            }
+            logmsg "Client connects to port $pasvport\n";
+            last;
+        }
+        alarm 0;
+    };
+    if ($@) {
+        # timed out
+        logmsg "$srvrname server timed out awaiting data connection ".
+            "on port $pasvport\n";
+        logmsg "accept failed or connection not even attempted\n";
+        logmsg "DATA sockfilt killed now\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt not running\n";
+        datasockf_state('STOPPED');
+        return;
+    }
+    else {
+        logmsg "====> Client established passive DATA connection ".
+               "on port $pasvport\n";
+    }
+
+    return;
+}
+
+#
+# Support both PORT and EPRT here.
+#
+
+sub PORT_ftp {
+    my ($arg, $cmd) = @_;
+    my $port;
+    my $addr;
+
+    # kill previous data connection sockfilt when alive
+    if($datasockf_runs eq 'yes') {
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt for $datasockf_mode data channel killed\n";
+    }
+    datasockf_state('STOPPED');
+
+    logmsg "====> Active DATA channel requested by client\n";
+
+    # We always ignore the given IP and use localhost.
+
+    if($cmd eq "PORT") {
+        if($arg !~ /(\d+),(\d+),(\d+),(\d+),(\d+),(\d+)/) {
+            logmsg "DATA sockfilt for active data channel not started ".
+                   "(bad PORT-line: $arg)\n";
+            sendcontrol "500 silly you, go away\r\n";
+            return;
+        }
+        $port = ($5<<8)+$6;
+        $addr = "$1.$2.$3.$4";
+    }
+    # EPRT |2|::1|49706|
+    elsif($cmd eq "EPRT") {
+        if($arg !~ /(\d+)\|([^\|]+)\|(\d+)/) {
+            logmsg "DATA sockfilt for active data channel not started ".
+                   "(bad EPRT-line: $arg)\n";
+            sendcontrol "500 silly you, go away\r\n";
+            return;
+        }
+        sendcontrol "200 Thanks for dropping by. We contact you later\r\n";
+        $port = $3;
+        $addr = $2;
+    }
+    else {
+        logmsg "DATA sockfilt for active data channel not started ".
+               "(invalid command: $cmd)\n";
+        sendcontrol "500 we don't like $cmd now\r\n";
+        return;
+    }
+
+    if(!$port || $port > 65535) {
+        logmsg "DATA sockfilt for active data channel not started ".
+               "(illegal PORT number: $port)\n";
+        return;
+    }
+
+    if($nodataconn) {
+        my $str = nodataconn_str();
+        logmsg "DATA sockfilt for active data channel not started ($str)\n";
+        datasockf_state('ACTIVE_NODATACONN');
+        logmsg "====> Active DATA channel not established\n";
+        return;
+    }
+
+    logmsg "DATA sockfilt for active data channel starting...\n";
+
+    # We fire up a new sockfilt to do the data transfer for us.
+    my $datasockfcmd = "./server/sockfilt " .
+        "--ipv$ipvnum --connect $port --addr \"$addr\" " .
+        "--pidfile \"$datasockf_pidfile\" " .
+        "--logfile \"$datasockf_logfile\"";
+    $slavepid = open2(\*DREAD, \*DWRITE, $datasockfcmd);
+
+    datasockf_state('ACTIVE');
+
+    print STDERR "$datasockfcmd\n" if($verbose);
+
+    print DWRITE "PING\n";
+    my $pong;
+    sysread_or_die(\*DREAD, \$pong, 5);
+
+    if($pong =~ /^FAIL/) {
+        logmsg "DATA sockfilt said: FAIL\n";
+        logmsg "DATA sockfilt for active data channel failed\n";
+        logmsg "DATA sockfilt not running\n";
+        datasockf_state('STOPPED');
+        # client shall timeout awaiting connection from server
+        return;
+    }
+    elsif($pong !~ /^PONG/) {
+        logmsg "DATA sockfilt unexpected response: $pong\n";
+        logmsg "DATA sockfilt for active data channel failed\n";
+        logmsg "DATA sockfilt killed now\n";
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt not running\n";
+        datasockf_state('STOPPED');
+        # client shall timeout awaiting connection from server
+        return;
+    }
+
+    logmsg "DATA sockfilt for active data channel started (pid $slavepid)\n";
+
+    logmsg "====> Active DATA channel connected to client port $port\n";
+
+    return;
+}
+
+#**********************************************************************
+# datasockf_state is used to change variables that keep state info
+# relative to the FTP secondary or data sockfilt process as soon as
+# one of the five possible stable states is reached. Variables that
+# are modified by this sub may be checked independently but should
+# not be changed except by calling this sub.
+#
+sub datasockf_state {
+    my $state = $_[0];
+
+  if($state eq 'STOPPED') {
+    # Data sockfilter initial state, not running,
+    # not connected and not used.
+    $datasockf_state = $state;
+    $datasockf_mode = 'none';
+    $datasockf_runs = 'no';
+    $datasockf_conn = 'no';
+  }
+  elsif($state eq 'PASSIVE') {
+    # Data sockfilter accepted connection from client.
+    $datasockf_state = $state;
+    $datasockf_mode = 'passive';
+    $datasockf_runs = 'yes';
+    $datasockf_conn = 'yes';
+  }
+  elsif($state eq 'ACTIVE') {
+    # Data sockfilter has connected to client.
+    $datasockf_state = $state;
+    $datasockf_mode = 'active';
+    $datasockf_runs = 'yes';
+    $datasockf_conn = 'yes';
+  }
+  elsif($state eq 'PASSIVE_NODATACONN') {
+    # Data sockfilter bound port without listening,
+    # client won't be able to establish data connection.
+    $datasockf_state = $state;
+    $datasockf_mode = 'passive';
+    $datasockf_runs = 'yes';
+    $datasockf_conn = 'no';
+  }
+  elsif($state eq 'ACTIVE_NODATACONN') {
+    # Data sockfilter does not even run,
+    # client awaits data connection from server in vain.
+    $datasockf_state = $state;
+    $datasockf_mode = 'active';
+    $datasockf_runs = 'no';
+    $datasockf_conn = 'no';
+  }
+  else {
+      die "Internal error. Unknown datasockf state: $state!";
+  }
+}
+
+#**********************************************************************
+# nodataconn_str returns string of efective nodataconn command. Notice
+# that $nodataconn may be set alone or in addition to a $nodataconnXXX.
+#
+sub nodataconn_str {
+    my $str;
+    # order matters
+    $str = 'NODATACONN' if($nodataconn);
+    $str = 'NODATACONN425' if($nodataconn425);
+    $str = 'NODATACONN421' if($nodataconn421);
+    $str = 'NODATACONN150' if($nodataconn150);
+    return "$str";
+}
+
+#**********************************************************************
+# customize configures test server operation for each curl test, reading
+# configuration commands/parameters from server commands file each time
+# a new client control connection is established with the test server.
+# On success returns 1, otherwise zero.
+#
+sub customize {
+    $ctrldelay = 0;     # default is no throttling of the ctrl stream
+    $datadelay = 0;     # default is no throttling of the data stream
+    $retrweirdo = 0;    # default is no use of RETRWEIRDO
+    $retrnosize = 0;    # default is no use of RETRNOSIZE
+    $pasvbadip = 0;     # default is no use of PASVBADIP
+    $nosave = 0;        # default is to actually save uploaded data to file
+    $nodataconn = 0;    # default is to establish or accept data channel
+    $nodataconn425 = 0; # default is to not send 425 without data channel
+    $nodataconn421 = 0; # default is to not send 421 without data channel
+    $nodataconn150 = 0; # default is to not send 150 without data channel
+    @capabilities = (); # default is to not support capability commands
+    @auth_mechs = ();   # default is to not support authentication commands
+    %fulltextreply = ();#
+    %commandreply = (); #
+    %customcount = ();  #
+    %delayreply = ();   #
+
+    open(CUSTOM, "<log/ftpserver.cmd") ||
+        return 1;
+
+    logmsg "FTPD: Getting commands from log/ftpserver.cmd\n";
+
+    while(<CUSTOM>) {
+        if($_ =~ /REPLY \"([A-Z]+ [A-Za-z0-9+-\/=\*. ]+)\" (.*)/) {
+            $fulltextreply{$1}=eval "qq{$2}";
+            logmsg "FTPD: set custom reply for $1\n";
+        }
+        elsif($_ =~ /REPLY ([A-Za-z0-9+\/=\*]*) (.*)/) {
+            $commandreply{$1}=eval "qq{$2}";
+            if($1 eq "") {
+                logmsg "FTPD: set custom reply for empty command\n";
+            }
+            else {
+                logmsg "FTPD: set custom reply for $1 command\n";
+            }
+        }
+        elsif($_ =~ /COUNT ([A-Z]+) (.*)/) {
+            # we blank the custom reply for this command when having
+            # been used this number of times
+            $customcount{$1}=$2;
+            logmsg "FTPD: blank custom reply for $1 command after $2 uses\n";
+        }
+        elsif($_ =~ /DELAY ([A-Z]+) (\d*)/) {
+            $delayreply{$1}=$2;
+            logmsg "FTPD: delay reply for $1 with $2 seconds\n";
+        }
+        elsif($_ =~ /SLOWDOWN/) {
+            $ctrldelay=1;
+            $datadelay=1;
+            logmsg "FTPD: send response with 0.01 sec delay between each byte\n";
+        }
+        elsif($_ =~ /RETRWEIRDO/) {
+            logmsg "FTPD: instructed to use RETRWEIRDO\n";
+            $retrweirdo=1;
+        }
+        elsif($_ =~ /RETRNOSIZE/) {
+            logmsg "FTPD: instructed to use RETRNOSIZE\n";
+            $retrnosize=1;
+        }
+        elsif($_ =~ /PASVBADIP/) {
+            logmsg "FTPD: instructed to use PASVBADIP\n";
+            $pasvbadip=1;
+        }
+        elsif($_ =~ /NODATACONN425/) {
+            # applies to both active and passive FTP modes
+            logmsg "FTPD: instructed to use NODATACONN425\n";
+            $nodataconn425=1;
+            $nodataconn=1;
+        }
+        elsif($_ =~ /NODATACONN421/) {
+            # applies to both active and passive FTP modes
+            logmsg "FTPD: instructed to use NODATACONN421\n";
+            $nodataconn421=1;
+            $nodataconn=1;
+        }
+        elsif($_ =~ /NODATACONN150/) {
+            # applies to both active and passive FTP modes
+            logmsg "FTPD: instructed to use NODATACONN150\n";
+            $nodataconn150=1;
+            $nodataconn=1;
+        }
+        elsif($_ =~ /NODATACONN/) {
+            # applies to both active and passive FTP modes
+            logmsg "FTPD: instructed to use NODATACONN\n";
+            $nodataconn=1;
+        }
+        elsif($_ =~ /CAPA (.*)/) {
+            logmsg "FTPD: instructed to support CAPABILITY command\n";
+            @capabilities = split(/ (?!(?:[^" ]|[^"] [^"])+")/, $1);
+            foreach (@capabilities) {
+                $_ = $1 if /^"(.*)"$/;
+            }
+        }
+        elsif($_ =~ /AUTH (.*)/) {
+            logmsg "FTPD: instructed to support AUTHENTICATION command\n";
+            @auth_mechs = split(/ /, $1);
+        }
+        elsif($_ =~ /NOSAVE/) {
+            # don't actually store the file we upload - to be used when
+            # uploading insanely huge amounts
+            $nosave = 1;
+            logmsg "FTPD: NOSAVE prevents saving of uploaded data\n";
+        }
+    }
+    close(CUSTOM);
+}
+
+#----------------------------------------------------------------------
+#----------------------------------------------------------------------
+#---------------------------  END OF SUBS  ----------------------------
+#----------------------------------------------------------------------
+#----------------------------------------------------------------------
+
+#**********************************************************************
+# Parse command line options
+#
+# Options:
+#
+# --verbose   # verbose
+# --srcdir    # source directory
+# --id        # server instance number
+# --proto     # server protocol
+# --pidfile   # server pid file
+# --logfile   # server log file
+# --ipv4      # server IP version 4
+# --ipv6      # server IP version 6
+# --port      # server listener port
+# --addr      # server address for listener port binding
+#
+while(@ARGV) {
+    if($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    elsif($ARGV[0] eq '--srcdir') {
+        if($ARGV[1]) {
+            $srcdir = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--id') {
+        if($ARGV[1] && ($ARGV[1] =~ /^(\d+)$/)) {
+            $idnum = $1 if($1 > 0);
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--proto') {
+        if($ARGV[1] && ($ARGV[1] =~ /^(ftp|imap|pop3|smtp)$/)) {
+            $proto = $1;
+            shift @ARGV;
+        }
+        else {
+            die "unsupported protocol $ARGV[1]";
+        }
+    }
+    elsif($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--logfile') {
+        if($ARGV[1]) {
+            $logfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--ipv4') {
+        $ipvnum = 4;
+        $listenaddr = '127.0.0.1' if($listenaddr eq '::1');
+    }
+    elsif($ARGV[0] eq '--ipv6') {
+        $ipvnum = 6;
+        $listenaddr = '::1' if($listenaddr eq '127.0.0.1');
+    }
+    elsif($ARGV[0] eq '--port') {
+        if($ARGV[1] && ($ARGV[1] =~ /^(\d+)$/)) {
+            $port = $1 if($1 > 1024);
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--addr') {
+        if($ARGV[1]) {
+            my $tmpstr = $ARGV[1];
+            if($tmpstr =~ /^(\d\d?\d?)\.(\d\d?\d?)\.(\d\d?\d?)\.(\d\d?\d?)$/) {
+                $listenaddr = "$1.$2.$3.$4" if($ipvnum == 4);
+            }
+            elsif($ipvnum == 6) {
+                $listenaddr = $tmpstr;
+                $listenaddr =~ s/^\[(.*)\]$/$1/;
+            }
+            shift @ARGV;
+        }
+    }
+    else {
+        print STDERR "\nWarning: ftpserver.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+#***************************************************************************
+# Initialize command line option dependant variables
+#
+
+if(!$srcdir) {
+    $srcdir = $ENV{'srcdir'} || '.';
+}
+if(!$pidfile) {
+    $pidfile = "$path/". server_pidfilename($proto, $ipvnum, $idnum);
+}
+if(!$logfile) {
+    $logfile = server_logfilename($logdir, $proto, $ipvnum, $idnum);
+}
+
+$mainsockf_pidfile = "$path/".
+    mainsockf_pidfilename($proto, $ipvnum, $idnum);
+$mainsockf_logfile =
+    mainsockf_logfilename($logdir, $proto, $ipvnum, $idnum);
+
+if($proto eq 'ftp') {
+    $datasockf_pidfile = "$path/".
+        datasockf_pidfilename($proto, $ipvnum, $idnum);
+    $datasockf_logfile =
+        datasockf_logfilename($logdir, $proto, $ipvnum, $idnum);
+}
+
+$srvrname = servername_str($proto, $ipvnum, $idnum);
+
+$idstr = "$idnum" if($idnum > 1);
+
+protocolsetup($proto);
+
+$SIG{INT} = \&exit_signal_handler;
+$SIG{TERM} = \&exit_signal_handler;
+
+startsf();
+
+logmsg sprintf("%s server listens on port IPv${ipvnum}/${port}\n", uc($proto));
+
+open(PID, ">$pidfile");
+print PID $$."\n";
+close(PID);
+
+logmsg("logged pid $$ in $pidfile\n");
+
+
+while(1) {
+
+    # kill previous data connection sockfilt when alive
+    if($datasockf_runs eq 'yes') {
+        killsockfilters($proto, $ipvnum, $idnum, $verbose, 'data');
+        logmsg "DATA sockfilt for $datasockf_mode data channel killed now\n";
+    }
+    datasockf_state('STOPPED');
+
+    #
+    # We read 'sockfilt' commands.
+    #
+    my $input;
+
+    logmsg "Awaiting input\n";
+    sysread_or_die(\*SFREAD, \$input, 5);
+
+    if($input !~ /^CNCT/) {
+        # we wait for a connected client
+        logmsg "MAIN sockfilt said: $input";
+        next;
+    }
+    logmsg "====> Client connect\n";
+
+    set_advisor_read_lock($SERVERLOGS_LOCK);
+    $serverlogslocked = 1;
+
+    # flush data:
+    $| = 1;
+
+    &customize(); # read test control instructions
+
+    my $welcome = $commandreply{"welcome"};
+    if(!$welcome) {
+        $welcome = $displaytext{"welcome"};
+    }
+    else {
+        # clear it after use
+        $commandreply{"welcome"}="";
+        if($welcome !~ /\r\n\z/) {
+            $welcome .= "\r\n";
+        }
+    }
+    sendcontrol $welcome;
+
+    #remove global variables from last connection
+    if($ftplistparserstate) {
+      undef $ftplistparserstate;
+    }
+    if($ftptargetdir) {
+      undef $ftptargetdir;
+    }
+
+    if($verbose) {
+        print STDERR "OUT: $welcome";
+    }
+
+    my $full = "";
+
+    while(1) {
+        my $i;
+
+        # Now we expect to read DATA\n[hex size]\n[prot], where the [prot]
+        # part only is FTP lingo.
+
+        # COMMAND
+        sysread_or_die(\*SFREAD, \$i, 5);
+
+        if($i !~ /^DATA/) {
+            logmsg "MAIN sockfilt said $i";
+            if($i =~ /^DISC/) {
+                # disconnect
+                last;
+            }
+            next;
+        }
+
+        # SIZE of data
+        sysread_or_die(\*SFREAD, \$i, 5);
+
+        my $size = 0;
+        if($i =~ /^([0-9a-fA-F]{4})\n/) {
+            $size = hex($1);
+        }
+
+        # data
+        read_mainsockf(\$input, $size);
+
+        ftpmsg $input;
+
+        $full .= $input;
+
+        # Loop until command completion
+        next unless($full =~ /\r\n$/);
+
+        # Remove trailing CRLF.
+        $full =~ s/[\n\r]+$//;
+
+        my $FTPCMD;
+        my $FTPARG;
+        if($proto eq "imap") {
+            # IMAP is different with its identifier first on the command line
+            if(($full =~ /^([^ ]+) ([^ ]+) (.*)/) ||
+               ($full =~ /^([^ ]+) ([^ ]+)/)) {
+                $cmdid=$1; # set the global variable
+                $FTPCMD=$2;
+                $FTPARG=$3;
+            }
+            # IMAP authentication cancellation
+            elsif($full =~ /^\*$/) {
+                # Command id has already been set
+                $FTPCMD="*";
+                $FTPARG="";
+            }
+            # IMAP long "commands" are base64 authentication data
+            elsif($full =~ /^[A-Z0-9+\/]*={0,2}$/i) {
+                # Command id has already been set
+                $FTPCMD=$full;
+                $FTPARG="";
+            }
+            else {
+                sendcontrol "$full BAD Command\r\n";
+                last;
+            }
+        }
+        elsif($full =~ /^([A-Z]{3,4})(\s(.*))?$/i) {
+            $FTPCMD=$1;
+            $FTPARG=$3;
+        }
+        elsif($proto eq "pop3") {
+            # POP3 authentication cancellation
+            if($full =~ /^\*$/) {
+                $FTPCMD="*";
+                $FTPARG="";
+            }
+            # POP3 long "commands" are base64 authentication data
+            elsif($full =~ /^[A-Z0-9+\/]*={0,2}$/i) {
+                $FTPCMD=$full;
+                $FTPARG="";
+            }
+            else {
+                sendcontrol "-ERR Unrecognized command\r\n";
+                last;
+            }
+        }
+        elsif($proto eq "smtp") {
+            # SMTP authentication cancellation
+            if($full =~ /^\*$/) {
+                $FTPCMD="*";
+                $FTPARG="";
+            }
+            # SMTP long "commands" are base64 authentication data
+            elsif($full =~ /^[A-Z0-9+\/]{0,512}={0,2}$/i) {
+                $FTPCMD=$full;
+                $FTPARG="";
+            }
+            else {
+                sendcontrol "500 Unrecognized command\r\n";
+                last;
+            }
+        }
+        else {
+            sendcontrol "500 Unrecognized command\r\n";
+            last;
+        }
+
+        logmsg "< \"$full\"\n";
+
+        if($verbose) {
+            print STDERR "IN: $full\n";
+        }
+
+        $full = "";
+
+        my $delay = $delayreply{$FTPCMD};
+        if($delay) {
+            # just go sleep this many seconds!
+            logmsg("Sleep for $delay seconds\n");
+            my $twentieths = $delay * 20;
+            while($twentieths--) {
+                select(undef, undef, undef, 0.05) unless($got_exit_signal);
+            }
+        }
+
+        my $check = 1; # no response yet
+
+        # See if there is a custom reply for the full text
+        my $fulltext = $FTPARG ? $FTPCMD . " " . $FTPARG : $FTPCMD;
+        my $text = $fulltextreply{$fulltext};
+        if($text && ($text ne "")) {
+            sendcontrol "$text\r\n";
+            $check = 0;
+        }
+        else {
+            # See if there is a custom reply for the command
+            $text = $commandreply{$FTPCMD};
+            if($text && ($text ne "")) {
+                if($customcount{$FTPCMD} && (!--$customcount{$FTPCMD})) {
+                    # used enough times so blank the custom command reply
+                    $commandreply{$FTPCMD}="";
+                }
+
+                sendcontrol "$text\r\n";
+                $check = 0;
+            }
+            else {
+                # See if there is any display text for the command
+                $text = $displaytext{$FTPCMD};
+                if($text && ($text ne "")) {
+                    if($proto eq 'imap') {
+                        sendcontrol "$cmdid $text\r\n";
+                    }
+                    else {
+                        sendcontrol "$text\r\n";
+                    }
+
+                    $check = 0;
+                }
+
+                # only perform this if we're not faking a reply
+                my $func = $commandfunc{$FTPCMD};
+                if($func) {
+                    &$func($FTPARG, $FTPCMD);
+                    $check = 0;
+                }
+            }
+        }
+
+        if($check) {
+            logmsg "$FTPCMD wasn't handled!\n";
+            if($proto eq 'pop3') {
+                sendcontrol "-ERR $FTPCMD is not dealt with!\r\n";
+            }
+            elsif($proto eq 'imap') {
+                sendcontrol "$cmdid BAD $FTPCMD is not dealt with!\r\n";
+            }
+            else {
+                sendcontrol "500 $FTPCMD is not dealt with!\r\n";
+            }
+        }
+
+    } # while(1)
+    logmsg "====> Client disconnected\n";
+
+    if($serverlogslocked) {
+        $serverlogslocked = 0;
+        clear_advisor_read_lock($SERVERLOGS_LOCK);
+    }
+}
+
+killsockfilters($proto, $ipvnum, $idnum, $verbose);
+unlink($pidfile);
+if($serverlogslocked) {
+    $serverlogslocked = 0;
+    clear_advisor_read_lock($SERVERLOGS_LOCK);
+}
+
+exit;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/getpart.pm b/ap/lib/libcurl/curl-7.54.1/tests/getpart.pm
new file mode 100644
index 0000000..5198b5f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/getpart.pm
@@ -0,0 +1,294 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+#use strict;
+
+my @xml;
+
+my $warning=0;
+my $trace=0;
+
+sub decode_base64 {
+  tr:A-Za-z0-9+/::cd;                   # remove non-base64 chars
+  tr:A-Za-z0-9+/: -_:;                  # convert to uuencoded format
+  my $len = pack("c", 32 + 0.75*length);   # compute length byte
+  return unpack("u", $len . $_);         # uudecode and print
+}
+
+sub getpartattr {
+    # if $part is undefined (ie only one argument) then
+    # return the attributes of the section
+
+    my ($section, $part)=@_;
+
+    my %hash;
+    my $inside=0;
+
+ #   print "Section: $section, part: $part\n";
+
+    for(@xml) {
+ #       print "$inside: $_";
+        if(!$inside && ($_ =~ /^ *\<$section/)) {
+            $inside++;
+        }
+        if((1 ==$inside) && ( ($_ =~ /^ *\<$part([^>]*)/) ||
+                              !(defined($part)) )
+             ) {
+            $inside++;
+            my $attr=$1;
+
+            while($attr =~ s/ *([^=]*)= *(\"([^\"]*)\"|([^\> ]*))//) {
+                my ($var, $cont)=($1, $2);
+                $cont =~ s/^\"(.*)\"$/$1/;
+                $hash{$var}=$cont;
+            }
+            last;
+        }
+        # detect end of section when part wasn't found
+        elsif((1 ==$inside) && ($_ =~ /^ *\<\/$section\>/)) {
+            last;
+        }
+        elsif((2 ==$inside) && ($_ =~ /^ *\<\/$part/)) {
+            $inside--;
+        }
+    }
+    return %hash;
+}
+
+sub getpart {
+    my ($section, $part)=@_;
+
+    my @this;
+    my $inside=0;
+    my $base64=0;
+
+ #   print "Section: $section, part: $part\n";
+
+    for(@xml) {
+ #       print "$inside: $_";
+        if(!$inside && ($_ =~ /^ *\<$section/)) {
+            $inside++;
+        }
+        elsif(($inside >= 1) && ($_ =~ /^ *\<$part[ \>]/)) {
+            if($inside > 1) {
+                push @this, $_;
+            }
+            elsif($_ =~ /$part [^>]*base64=/) {
+                # attempt to detect our base64 encoded part
+                $base64=1;
+            }
+            $inside++;
+        }
+        elsif(($inside >= 2) && ($_ =~ /^ *\<\/$part[ \>]/)) {
+            if($inside > 2) {
+                push @this, $_;
+            }
+            $inside--;
+        }
+        elsif(($inside >= 1) && ($_ =~ /^ *\<\/$section/)) {
+            if($trace && @this) {
+                print STDERR "*** getpart.pm: $section/$part returned data!\n";
+            }
+            if($warning && !@this) {
+                print STDERR "*** getpart.pm: $section/$part returned empty!\n";
+            }
+            if($base64) {
+                # decode the whole array before returning it!
+                for(@this) {
+                    my $decoded = decode_base64($_);
+                    $_ = $decoded;
+                }
+            }
+            return @this;
+        }
+        elsif($inside >= 2) {
+            push @this, $_;
+        }
+    }
+    if($trace && @this) {
+        # section/part has data but end of section not detected,
+        # end of file implies end of section.
+        print STDERR "*** getpart.pm: $section/$part returned data!\n";
+    }
+    if($warning && !@this) {
+        # section/part does not exist or has no data without an end of
+        # section; end of file implies end of section.
+        print STDERR "*** getpart.pm: $section/$part returned empty!\n";
+    }
+    return @this;
+}
+
+sub partexists {
+    my ($section, $part)=@_;
+
+    my $inside = 0;
+
+    for(@xml) {
+        if(!$inside && ($_ =~ /^ *\<$section/)) {
+            $inside++;
+        }
+        elsif((1 == $inside) && ($_ =~ /^ *\<$part[ \>]/)) {
+            return 1; # exists
+        }
+        elsif((1 == $inside) && ($_ =~ /^ *\<\/$section/)) {
+            return 0; # does not exist
+        }
+    }
+    return 0; # does not exist
+}
+
+# Return entire document as list of lines
+sub getall {
+    return @xml;
+}
+
+sub loadtest {
+    my ($file)=@_;
+
+    undef @xml;
+
+    if(open(XML, "<$file")) {
+        binmode XML; # for crapage systems, use binary
+        while(<XML>) {
+            push @xml, $_;
+        }
+        close(XML);
+    }
+    else {
+        # failure
+        if($warning) {
+            print STDERR "file $file wouldn't open!\n";
+        }
+        return 1;
+    }
+    return 0;
+}
+
+#
+# Strip off all lines that match the specified pattern and return
+# the new array.
+#
+
+sub striparray {
+    my ($pattern, $arrayref) = @_;
+
+    my @array;
+
+    for(@$arrayref) {
+        if($_ !~ /$pattern/) {
+            push @array, $_;
+        }
+    }
+    return @array;
+}
+
+#
+# pass array *REFERENCES* !
+#
+sub compareparts {
+ my ($firstref, $secondref)=@_;
+
+ my $first = join("", @$firstref);
+ my $second = join("", @$secondref);
+
+ # we cannot compare arrays index per index since with the base64 chunks,
+ # they may not be "evenly" distributed
+
+ # NOTE: this no longer strips off carriage returns from the arrays. Is that
+ # really necessary? It ruins the testing of newlines. I believe it was once
+ # added to enable tests on win32.
+
+ if($first ne $second) {
+     return 1;
+ }
+
+ return 0;
+}
+
+#
+# Write a given array to the specified file
+#
+sub writearray {
+    my ($filename, $arrayref)=@_;
+
+    open(TEMP, ">$filename");
+    binmode(TEMP,":raw"); # cygwin fix by Kevin Roth
+    for(@$arrayref) {
+        print TEMP $_;
+    }
+    close(TEMP);
+}
+
+#
+# Load a specified file and return it as an array
+#
+sub loadarray {
+    my ($filename)=@_;
+    my @array;
+
+    open(TEMP, "<$filename");
+    while(<TEMP>) {
+        push @array, $_;
+    }
+    close(TEMP);
+    return @array;
+}
+
+# Given two array references, this function will store them in two temporary
+# files, run 'diff' on them, store the result and return the diff output!
+
+sub showdiff {
+    my ($logdir, $firstref, $secondref)=@_;
+
+    my $file1="$logdir/check-generated";
+    my $file2="$logdir/check-expected";
+
+    open(TEMP, ">$file1");
+    for(@$firstref) {
+        my $l = $_;
+        $l =~ s/\r/[CR]/g;
+        $l =~ s/\n/[LF]/g;
+        print TEMP $l;
+        print TEMP "\n";
+    }
+    close(TEMP);
+
+    open(TEMP, ">$file2");
+    for(@$secondref) {
+        my $l = $_;
+        $l =~ s/\r/[CR]/g;
+        $l =~ s/\n/[LF]/g;
+        print TEMP $l;
+        print TEMP "\n";
+    }
+    close(TEMP);
+    my @out = `diff -u $file2 $file1 2>/dev/null`;
+
+    if(!$out[0]) {
+        @out = `diff -c $file2 $file1 2>/dev/null`;
+    }
+
+    return @out;
+}
+
+
+1;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/http2-server.pl b/ap/lib/libcurl/curl-7.54.1/tests/http2-server.pl
new file mode 100755
index 0000000..086d5aa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/http2-server.pl
@@ -0,0 +1,83 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+# This script invokes nghttpx properly to have it serve HTTP/2 for us.
+# nghttpx runs as a proxy in front of our "actual" HTTP/1 server.
+
+my $pidfile = "log/nghttpx.pid";
+my $logfile = "log/http2.log";
+my $nghttpx = "nghttpx";
+my $listenport = 9015;
+my $connect = "127.0.0.1,8990";
+
+#***************************************************************************
+# Process command line options
+#
+while(@ARGV) {
+    if($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    elsif($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--nghttpx') {
+        if($ARGV[1]) {
+            $nghttpx = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--port') {
+        if($ARGV[1]) {
+            $listenport = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--connect') {
+        if($ARGV[1]) {
+            $connect = $ARGV[1];
+            $connect =~ s/:/,/;
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--logfile') {
+        if($ARGV[1]) {
+            $logfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    else {
+        print STDERR "\nWarning: http2-server.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+my $cmdline="$nghttpx --backend=$connect ".
+    "--frontend=\"*,$listenport;no-tls\" ".
+    "--log-level=INFO ".
+    "--pid-file=$pidfile ".
+    "--errorlog-file=$logfile";
+print "RUN: $cmdline\n" if($verbose);
+system("$cmdline 2>/dev/null");
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/http_pipe.py b/ap/lib/libcurl/curl-7.54.1/tests/http_pipe.py
new file mode 100755
index 0000000..bc32173
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/http_pipe.py
@@ -0,0 +1,441 @@
+#!/usr/bin/python
+
+# Copyright 2012 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# Modified by Linus Nielsen Feltzing for inclusion in the libcurl test
+# framework
+#
+try:
+    import socketserver
+except:
+    import SocketServer as socketserver
+import argparse
+import re
+import select
+import socket
+import time
+import pprint
+import os
+
+INFO_MESSAGE = '''
+This is a test server to test the libcurl pipelining functionality.
+It is a modified version if Google's HTTP pipelining test server. More
+information can be found here:
+
+https://dev.chromium.org/developers/design-documents/network-stack/http-pipelining
+
+Source code can be found here:
+
+https://code.google.com/archive/p/http-pipelining-test/
+'''
+MAX_REQUEST_SIZE = 1024  # bytes
+MIN_POLL_TIME = 0.01  # seconds. Minimum time to poll, in order to prevent
+                      # excessive looping because Python refuses to poll for
+                      # small timeouts.
+SEND_BUFFER_TIME = 0.5  # seconds
+TIMEOUT = 30  # seconds
+
+
+class Error(Exception):
+  pass
+
+
+class RequestTooLargeError(Error):
+  pass
+
+
+class ServeIndexError(Error):
+  pass
+
+
+class UnexpectedMethodError(Error):
+  pass
+
+
+class RequestParser(object):
+  """Parses an input buffer looking for HTTP GET requests."""
+
+  global logfile
+
+  LOOKING_FOR_GET = 1
+  READING_HEADERS = 2
+
+  HEADER_RE = re.compile('([^:]+):(.*)\n')
+  REQUEST_RE = re.compile('([^ ]+) ([^ ]+) HTTP/(\d+)\.(\d+)\n')
+
+  def __init__(self):
+    """Initializer."""
+    self._buffer = ""
+    self._pending_headers = {}
+    self._pending_request = ""
+    self._state = self.LOOKING_FOR_GET
+    self._were_all_requests_http_1_1 = True
+    self._valid_requests = []
+
+  def ParseAdditionalData(self, data):
+    """Finds HTTP requests in |data|.
+
+    Args:
+      data: (String) Newly received input data from the socket.
+
+    Returns:
+      (List of Tuples)
+        (String) The request path.
+        (Map of String to String) The header name and value.
+
+    Raises:
+      RequestTooLargeError: If the request exceeds MAX_REQUEST_SIZE.
+      UnexpectedMethodError: On a non-GET method.
+      Error: On a programming error.
+    """
+    logfile = open('log/server.input', 'a')
+    logfile.write(data)
+    logfile.close()
+    self._buffer += data.replace('\r', '')
+    should_continue_parsing = True
+    while should_continue_parsing:
+      if self._state == self.LOOKING_FOR_GET:
+        should_continue_parsing = self._DoLookForGet()
+      elif self._state == self.READING_HEADERS:
+        should_continue_parsing = self._DoReadHeader()
+      else:
+        raise Error('Unexpected state: ' + self._state)
+    if len(self._buffer) > MAX_REQUEST_SIZE:
+      raise RequestTooLargeError(
+          'Request is at least %d bytes' % len(self._buffer))
+    valid_requests = self._valid_requests
+    self._valid_requests = []
+    return valid_requests
+
+  @property
+  def were_all_requests_http_1_1(self):
+    return self._were_all_requests_http_1_1
+
+  def _DoLookForGet(self):
+    """Tries to parse an HTTTP request line.
+
+    Returns:
+      (Boolean) True if a request was found.
+
+    Raises:
+      UnexpectedMethodError: On a non-GET method.
+    """
+    m = self.REQUEST_RE.match(self._buffer)
+    if not m:
+      return False
+    method, path, http_major, http_minor = m.groups()
+
+    if method != 'GET':
+      raise UnexpectedMethodError('Unexpected method: ' + method)
+    if path in ['/', '/index.htm', '/index.html']:
+      raise ServeIndexError()
+
+    if http_major != '1' or http_minor != '1':
+      self._were_all_requests_http_1_1 = False
+
+#    print method, path
+
+    self._pending_request = path
+    self._buffer = self._buffer[m.end():]
+    self._state = self.READING_HEADERS
+    return True
+
+  def _DoReadHeader(self):
+    """Tries to parse a HTTP header.
+
+    Returns:
+      (Boolean) True if it found the end of the request or a HTTP header.
+    """
+    if self._buffer.startswith('\n'):
+      self._buffer = self._buffer[1:]
+      self._state = self.LOOKING_FOR_GET
+      self._valid_requests.append((self._pending_request,
+                                   self._pending_headers))
+      self._pending_headers = {}
+      self._pending_request = ""
+      return True
+
+    m = self.HEADER_RE.match(self._buffer)
+    if not m:
+      return False
+
+    header = m.group(1).lower()
+    value = m.group(2).strip().lower()
+    if header not in self._pending_headers:
+      self._pending_headers[header] = value
+    self._buffer = self._buffer[m.end():]
+    return True
+
+
+class ResponseBuilder(object):
+  """Builds HTTP responses for a list of accumulated requests."""
+
+  def __init__(self):
+    """Initializer."""
+    self._max_pipeline_depth = 0
+    self._requested_paths = []
+    self._processed_end = False
+    self._were_all_requests_http_1_1 = True
+
+  def QueueRequests(self, requested_paths, were_all_requests_http_1_1):
+    """Adds requests to the queue of requests.
+
+    Args:
+      requested_paths: (List of Strings) Requested paths.
+    """
+    self._requested_paths.extend(requested_paths)
+    self._were_all_requests_http_1_1 = were_all_requests_http_1_1
+
+  def Chunkify(self, data, chunksize):
+    """ Divides a string into chunks
+    """
+    return [hex(chunksize)[2:] + "\r\n" + data[i:i+chunksize] + "\r\n" for i in range(0, len(data), chunksize)]
+
+  def BuildResponses(self):
+    """Converts the queue of requests into responses.
+
+    Returns:
+      (String) Buffer containing all of the responses.
+    """
+    result = ""
+    self._max_pipeline_depth = max(self._max_pipeline_depth,
+                                   len(self._requested_paths))
+    for path, headers in self._requested_paths:
+      if path == '/verifiedserver':
+        body = "WE ROOLZ: {}\r\n".format(os.getpid());
+        result += self._BuildResponse(
+            '200 OK', ['Server: Apache',
+                       'Content-Length: {}'.format(len(body)),
+                       'Cache-Control: no-store'], body)
+
+      elif path == '/alphabet.txt':
+        body = 'abcdefghijklmnopqrstuvwxyz'
+        result += self._BuildResponse(
+            '200 OK', ['Server: Apache',
+                       'Content-Length: 26',
+                       'Cache-Control: no-store'], body)
+
+      elif path == '/reverse.txt':
+        body = 'zyxwvutsrqponmlkjihgfedcba'
+        result += self._BuildResponse(
+            '200 OK', ['Content-Length: 26', 'Cache-Control: no-store'], body)
+
+      elif path == '/chunked.txt':
+        body = ('7\r\nchunked\r\n'
+                '8\r\nencoding\r\n'
+                '2\r\nis\r\n'
+                '3\r\nfun\r\n'
+                '0\r\n\r\n')
+        result += self._BuildResponse(
+            '200 OK', ['Transfer-Encoding: chunked', 'Cache-Control: no-store'],
+            body)
+
+      elif path == '/cached.txt':
+        body = 'azbycxdwevfugthsirjqkplomn'
+        result += self._BuildResponse(
+            '200 OK', ['Content-Length: 26', 'Cache-Control: max-age=60'], body)
+
+      elif path == '/connection_close.txt':
+        body = 'azbycxdwevfugthsirjqkplomn'
+        result += self._BuildResponse(
+            '200 OK', ['Content-Length: 26', 'Cache-Control: max-age=60', 'Connection: close'], body)
+        self._processed_end = True
+
+      elif path == '/1k.txt':
+        body = '0123456789abcdef' * 64
+        result += self._BuildResponse(
+            '200 OK', ['Server: Apache',
+                       'Content-Length: 1024',
+                       'Cache-Control: max-age=60'], body)
+
+      elif path == '/10k.txt':
+        body = '0123456789abcdef' * 640
+        result += self._BuildResponse(
+            '200 OK', ['Server: Apache',
+                       'Content-Length: 10240',
+                       'Cache-Control: max-age=60'], body)
+
+      elif path == '/100k.txt':
+        body = '0123456789abcdef' * 6400
+        result += self._BuildResponse(
+            '200 OK',
+            ['Server: Apache',
+             'Content-Length: 102400',
+             'Cache-Control: max-age=60'],
+            body)
+
+      elif path == '/100k_chunked.txt':
+        body = self.Chunkify('0123456789abcdef' * 6400, 20480)
+        body.append('0\r\n\r\n')
+        body = ''.join(body)
+
+        result += self._BuildResponse(
+            '200 OK', ['Transfer-Encoding: chunked', 'Cache-Control: no-store'], body)
+
+      elif path == '/stats.txt':
+        results = {
+            'max_pipeline_depth': self._max_pipeline_depth,
+            'were_all_requests_http_1_1': int(self._were_all_requests_http_1_1),
+        }
+        body = ','.join(['%s:%s' % (k, v) for k, v in results.items()])
+        result += self._BuildResponse(
+            '200 OK',
+            ['Content-Length: %s' % len(body), 'Cache-Control: no-store'], body)
+        self._processed_end = True
+
+      else:
+        result += self._BuildResponse('404 Not Found', ['Content-Length: 7'], 'Go away')
+      if self._processed_end:
+          break
+    self._requested_paths = []
+    return result
+
+  def WriteError(self, status, error):
+    """Returns an HTTP response for the specified error.
+
+    Args:
+      status: (String) Response code and descrtion (e.g. "404 Not Found")
+
+    Returns:
+      (String) Text of HTTP response.
+    """
+    return self._BuildResponse(
+        status, ['Connection: close', 'Content-Type: text/plain'], error)
+
+  @property
+  def processed_end(self):
+    return self._processed_end
+
+  def _BuildResponse(self, status, headers, body):
+    """Builds an HTTP response.
+
+    Args:
+      status: (String) Response code and descrtion (e.g. "200 OK")
+      headers: (List of Strings) Headers (e.g. "Connection: close")
+      body: (String) Response body.
+
+    Returns:
+      (String) Text of HTTP response.
+    """
+    return ('HTTP/1.1 %s\r\n'
+            '%s\r\n'
+            '\r\n'
+            '%s' % (status, '\r\n'.join(headers), body))
+
+
+class PipelineRequestHandler(socketserver.BaseRequestHandler):
+  """Called on an incoming TCP connection."""
+
+  def _GetTimeUntilTimeout(self):
+    return self._start_time + TIMEOUT - time.time()
+
+  def _GetTimeUntilNextSend(self):
+    if not self._last_queued_time:
+      return TIMEOUT
+    return self._last_queued_time + SEND_BUFFER_TIME - time.time()
+
+  def handle(self):
+    self._request_parser = RequestParser()
+    self._response_builder = ResponseBuilder()
+    self._last_queued_time = 0
+    self._num_queued = 0
+    self._num_written = 0
+    self._send_buffer = ""
+    self._start_time = time.time()
+    try:
+      while not self._response_builder.processed_end or self._send_buffer:
+
+        time_left = self._GetTimeUntilTimeout()
+        time_until_next_send = self._GetTimeUntilNextSend()
+        max_poll_time = min(time_left, time_until_next_send) + MIN_POLL_TIME
+
+        rlist, wlist, xlist = [], [], []
+        fileno = self.request.fileno()
+        if max_poll_time > 0:
+          rlist.append(fileno)
+          if self._send_buffer:
+            wlist.append(fileno)
+          rlist, wlist, xlist = select.select(rlist, wlist, xlist, max_poll_time)
+
+        if self._GetTimeUntilTimeout() <= 0:
+          return
+
+        if self._GetTimeUntilNextSend() <= 0:
+          self._send_buffer += self._response_builder.BuildResponses()
+          self._num_written = self._num_queued
+          self._last_queued_time = 0
+
+        if fileno in rlist:
+          self.request.setblocking(False)
+          new_data = self.request.recv(MAX_REQUEST_SIZE)
+          self.request.setblocking(True)
+          if not new_data:
+            return
+          new_requests = self._request_parser.ParseAdditionalData(new_data)
+          self._response_builder.QueueRequests(
+              new_requests, self._request_parser.were_all_requests_http_1_1)
+          self._num_queued += len(new_requests)
+          self._last_queued_time = time.time()
+        elif fileno in wlist:
+          num_bytes_sent = self.request.send(self._send_buffer[0:4096])
+          self._send_buffer = self._send_buffer[num_bytes_sent:]
+          time.sleep(0.05)
+
+    except RequestTooLargeError as e:
+      self.request.send(self._response_builder.WriteError(
+          '413 Request Entity Too Large', e))
+      raise
+    except UnexpectedMethodError as e:
+      self.request.send(self._response_builder.WriteError(
+          '405 Method Not Allowed', e))
+      raise
+    except ServeIndexError:
+      self.request.send(self._response_builder.WriteError(
+          '200 OK', INFO_MESSAGE))
+    except Exception as e:
+      print(e)
+    self.request.close()
+
+
+class PipelineServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
+  pass
+
+
+parser = argparse.ArgumentParser()
+parser.add_argument("--port", action="store", default=0,
+                  type=int, help="port to listen on")
+parser.add_argument("--verbose", action="store", default=0,
+                  type=int, help="verbose output")
+parser.add_argument("--pidfile", action="store", default=0,
+                  help="file name for the PID")
+parser.add_argument("--logfile", action="store", default=0,
+                  help="file name for the log")
+parser.add_argument("--srcdir", action="store", default=0,
+                  help="test directory")
+parser.add_argument("--id", action="store", default=0,
+                  help="server ID")
+parser.add_argument("--ipv4", action="store_true", default=0,
+                  help="IPv4 flag")
+args = parser.parse_args()
+
+if args.pidfile:
+    pid = os.getpid()
+    f = open(args.pidfile, 'w')
+    f.write('{}'.format(pid))
+    f.close()
+
+server = PipelineServer(('0.0.0.0', args.port), PipelineRequestHandler)
+server.allow_reuse_address = True
+server.serve_forever()
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/httpserver.pl b/ap/lib/libcurl/curl-7.54.1/tests/httpserver.pl
new file mode 100755
index 0000000..7f6c86a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/httpserver.pl
@@ -0,0 +1,139 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+BEGIN {
+    push(@INC, $ENV{'srcdir'}) if(defined $ENV{'srcdir'});
+    push(@INC, ".");
+}
+
+use strict;
+use warnings;
+
+use serverhelp qw(
+    server_pidfilename
+    server_logfilename
+    );
+
+my $verbose = 0;     # set to 1 for debugging
+my $port = 8990;     # just a default
+my $unix_socket;     # location to place a listening Unix socket
+my $ipvnum = 4;      # default IP version of http server
+my $idnum = 1;       # default http server instance number
+my $proto = 'http';  # protocol the http server speaks
+my $pidfile;         # http server pid file
+my $logfile;         # http server log file
+my $connect;         # IP to connect to on CONNECT
+my $srcdir;
+my $gopher = 0;
+
+my $flags  = "";
+my $path   = '.';
+my $logdir = $path .'/log';
+
+while(@ARGV) {
+    if($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--logfile') {
+        if($ARGV[1]) {
+            $logfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--srcdir') {
+        if($ARGV[1]) {
+            $srcdir = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--ipv4') {
+        $ipvnum = 4;
+    }
+    elsif($ARGV[0] eq '--ipv6') {
+        $ipvnum = 6;
+    }
+    elsif($ARGV[0] eq '--unix-socket') {
+        $ipvnum = 'unix';
+        if($ARGV[1]) {
+            $unix_socket = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--gopher') {
+        $gopher = 1;
+    }
+    elsif($ARGV[0] eq '--port') {
+        if($ARGV[1] =~ /^(\d+)$/) {
+            $port = $1;
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--connect') {
+        if($ARGV[1]) {
+            $connect = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--id') {
+        if($ARGV[1] =~ /^(\d+)$/) {
+            $idnum = $1 if($1 > 0);
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    else {
+        print STDERR "\nWarning: httpserver.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+if(!$srcdir) {
+    $srcdir = $ENV{'srcdir'} || '.';
+}
+if(!$pidfile) {
+    $pidfile = "$path/". server_pidfilename($proto, $ipvnum, $idnum);
+}
+if(!$logfile) {
+    $logfile = server_logfilename($logdir, $proto, $ipvnum, $idnum);
+}
+
+$flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+$flags .= "--gopher " if($gopher);
+$flags .= "--connect $connect " if($connect);
+if($ipvnum eq 'unix') {
+    $flags .= "--unix-socket '$unix_socket' ";
+} else {
+    $flags .= "--ipv$ipvnum --port $port ";
+}
+$flags .= "--srcdir \"$srcdir\"";
+
+if($verbose) {
+    print STDERR "RUN: server/sws $flags\n";
+}
+
+exec("server/sws $flags");
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/CMakeLists.txt b/ap/lib/libcurl/curl-7.54.1/tests/libtest/CMakeLists.txt
new file mode 100644
index 0000000..a7449c3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/CMakeLists.txt
@@ -0,0 +1,126 @@
+set(TARGET_LABEL_PREFIX "Test ")
+
+function(SETUP_TEST TEST_NAME)          # ARGN are the files in the test
+  add_executable( ${TEST_NAME} ${ARGN} )
+  string(TOUPPER ${TEST_NAME} UPPER_TEST_NAME)
+
+  include_directories(
+    ${CURL_SOURCE_DIR}/lib          # To be able to reach "curl_setup_once.h"
+    ${CURL_BINARY_DIR}/lib          # To be able to reach "curl_config.h"
+    ${CURL_BINARY_DIR}/include      # To be able to reach "curl/curlbuild.h"
+    )
+  if(USE_ARES)
+    include_directories(${CARES_INCLUDE_DIR})
+  endif()
+
+  target_link_libraries( ${TEST_NAME} libcurl ${CURL_LIBS})
+
+  set_target_properties(${TEST_NAME}
+    PROPERTIES COMPILE_DEFINITIONS ${UPPER_TEST_NAME})
+  set_target_properties(${TEST_NAME}
+    PROPERTIES PROJECT_LABEL "${TARGET_LABEL_PREFIX}${TEST_NAME}")
+
+  # Add the postfix to the executable since it is
+  # not added automatically as for modules and shared libraries
+  set_target_properties(${TEST_NAME}
+    PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
+
+endfunction()
+
+
+transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
+include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
+
+foreach(TEST_NAME ${noinst_PROGRAMS})
+  setup_test(${TEST_NAME} ${${TEST_NAME}_SOURCES})
+endforeach()
+
+# Allows for hostname override to make tests machine independent.
+# TODO this cmake build assumes a shared build, detect static linking here!
+if(NOT WIN32)
+  add_library(hostname MODULE sethostname.c sethostname.h)
+  # Output to .libs for compatibility with autotools, the test data expects a
+  # library at (tests)/libtest/.libs/libhostname.so
+  set_target_properties(hostname PROPERTIES
+      LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/.libs)
+  if(HIDES_CURL_PRIVATE_SYMBOLS)
+    set_property(TARGET hostname APPEND PROPERTY COMPILE_DEFINITIONS "CURL_HIDDEN_SYMBOLS")
+    set_property(TARGET hostname APPEND PROPERTY COMPILE_FLAGS ${CURL_CFLAG_SYMBOLS_HIDE})
+  endif()
+endif()
+
+# # files used only in some libcurl test programs
+# SET(TESTUTIL testutil.c testutil.h)
+
+# # these files are used in every single test program below
+# SET(SUPPORTFILES first.c test.h)
+
+# # These are all libcurl test programs
+# SET(noinst_PROGRAMS
+# lib500 lib501 lib502 lib503 lib504 lib505 lib506
+# lib507 lib508 lib510 lib511 lib512 lib513 lib514 lib515 lib516
+# lib517 lib518 lib519 lib520 lib521 lib523 lib524 lib525 lib526
+# #lib527
+# #lib529
+# lib530
+# #lib532
+# lib533 lib536 lib537 lib540 lib541 lib542 lib543
+# lib544
+# #lib545
+# lib547
+# #lib548
+# lib549 lib552 lib553 lib554 lib555 lib556
+# lib539 lib557
+# lib560
+# )
+
+# SET(noinst_PROGRAMS_USE_TESTUTIL
+# lib502 lib503 lib504
+# lib507
+# lib525 lib526 lib527
+# lib529
+# lib530
+# lib532
+# lib533 lib536
+# lib555
+# )
+
+# MACRO(ADD_TESTUTIL_IF_NECESSARY TEST_NAME)
+# LIST(FIND noinst_PROGRAMS_USE_TESTUTIL ${TEST_NAME} USES_TESTUTIL)
+# IF(NOT ${USES_TESTUTIL} EQUAL -1)
+# LIST(APPEND SOURCE ${TESTUTIL})               # Need TestUtil
+# ENDIF()
+# ENDMACRO()
+
+# # General case
+# FOREACH(TEST_NAME ${noinst_PROGRAMS})
+# SET(SOURCE "${TEST_NAME}.c" ${SUPPORTFILES})
+# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
+# SETUP_TEST(${TEST_NAME} ${SOURCE})
+# ENDFOREACH()
+
+# # Special cases
+# SET(TEST_NAME lib527)
+# SET(SOURCE "lib526.c" ${SUPPORTFILES})
+# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
+# SETUP_TEST(${TEST_NAME} ${SOURCE})
+
+# SET(TEST_NAME lib529)
+# SET(SOURCE "lib525.c" ${SUPPORTFILES})
+# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
+# SETUP_TEST(${TEST_NAME} ${SOURCE})
+
+# SET(TEST_NAME lib532)
+# SET(SOURCE "lib526.c" ${SUPPORTFILES})
+# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
+# SETUP_TEST(${TEST_NAME} ${SOURCE})
+
+# SET(TEST_NAME lib545)
+# SET(SOURCE "lib544.c" ${SUPPORTFILES})
+# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
+# SETUP_TEST(${TEST_NAME} ${SOURCE})
+
+# SET(TEST_NAME lib548)
+# SET(SOURCE "lib547.c" ${SUPPORTFILES})
+# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
+# SETUP_TEST(${TEST_NAME} ${SOURCE})
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.am
new file mode 100644
index 0000000..ee29ab7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.am
@@ -0,0 +1,119 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign nostdinc
+
+# Specify our include paths here, and do it relative to $(top_srcdir) and
+# $(top_builddir), to ensure that these paths which belong to the library
+# being currently built and tested are searched before the library which
+# might possibly already be installed in the system.
+#
+# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
+# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h
+# $(top_srcdir)/include is for libcurl's external include files
+# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
+# $(top_srcdir)/ares is for in-tree c-ares's external include files
+
+if USE_EMBEDDED_ARES
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_srcdir)/lib            \
+              -I$(top_builddir)/ares         \
+              -I$(top_srcdir)/ares
+else
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_srcdir)/lib
+endif
+
+EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl	\
+test1022.pl Makefile.inc notexists.pl CMakeLists.txt
+
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+
+if USE_EXPLICIT_LIB_DEPS
+SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
+TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
+else
+SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_LIBS@ @NSS_LIBS@
+TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_AND_TIME_LIBS@ @NSS_LIBS@
+endif
+
+# Dependencies (may need to be overridden)
+LDADD = $(SUPPORTFILES_LIBS)
+
+# Makefile.inc provides the source defines (TESTUTIL, SUPPORTFILES,
+# noinst_PROGRAMS, lib*_SOURCES, and lib*_CFLAGS)
+include Makefile.inc
+
+# Preloading of libhostname allows host name overriding,
+# this is used to make some tests machine independent.
+
+if BUILD_LIBHOSTNAME
+noinst_LTLIBRARIES = libhostname.la
+else
+noinst_LTLIBRARIES =
+endif
+
+if USE_CPPFLAG_CURL_STATICLIB
+AM_CPPFLAGS += -DCURL_STATICLIB
+endif
+
+AM_LDFLAGS =
+AM_CFLAGS =
+
+libhostname_la_CPPFLAGS_EXTRA =
+libhostname_la_LDFLAGS_EXTRA = -module -avoid-version -rpath /nowhere
+libhostname_la_CFLAGS_EXTRA =
+
+if CURL_LT_SHLIB_USE_NO_UNDEFINED
+libhostname_la_LDFLAGS_EXTRA += -no-undefined
+endif
+
+if CURL_LT_SHLIB_USE_MIMPURE_TEXT
+libhostname_la_LDFLAGS_EXTRA += -mimpure-text
+endif
+
+if DOING_CURL_SYMBOL_HIDING
+libhostname_la_CPPFLAGS_EXTRA += -DCURL_HIDDEN_SYMBOLS
+libhostname_la_CFLAGS_EXTRA += $(CFLAG_CURL_SYMBOL_HIDING)
+endif
+
+libhostname_la_CPPFLAGS = $(AM_CPPFLAGS) $(libhostname_la_CPPFLAGS_EXTRA)
+libhostname_la_LDFLAGS = $(AM_LDFLAGS) $(libhostname_la_LDFLAGS_EXTRA)
+libhostname_la_CFLAGS = $(AM_CFLAGS) $(libhostname_la_CFLAGS_EXTRA)
+
+libhostname_la_SOURCES = sethostname.c sethostname.h
+
+libhostname_la_LIBADD =
+libhostname_la_DEPENDENCIES =
+
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.in
new file mode 100644
index 0000000..df04d82
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.in
@@ -0,0 +1,7897 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+noinst_PROGRAMS = chkhostname$(EXEEXT) libauthretry$(EXEEXT) \
+	libntlmconnect$(EXEEXT) lib500$(EXEEXT) lib501$(EXEEXT) \
+	lib502$(EXEEXT) lib503$(EXEEXT) lib504$(EXEEXT) \
+	lib505$(EXEEXT) lib506$(EXEEXT) lib507$(EXEEXT) \
+	lib508$(EXEEXT) lib509$(EXEEXT) lib510$(EXEEXT) \
+	lib511$(EXEEXT) lib512$(EXEEXT) lib513$(EXEEXT) \
+	lib514$(EXEEXT) lib515$(EXEEXT) lib516$(EXEEXT) \
+	lib517$(EXEEXT) lib518$(EXEEXT) lib519$(EXEEXT) \
+	lib520$(EXEEXT) lib521$(EXEEXT) lib523$(EXEEXT) \
+	lib524$(EXEEXT) lib525$(EXEEXT) lib526$(EXEEXT) \
+	lib527$(EXEEXT) lib529$(EXEEXT) lib530$(EXEEXT) \
+	lib532$(EXEEXT) lib533$(EXEEXT) lib536$(EXEEXT) \
+	lib537$(EXEEXT) lib539$(EXEEXT) lib540$(EXEEXT) \
+	lib541$(EXEEXT) lib542$(EXEEXT) lib543$(EXEEXT) \
+	lib544$(EXEEXT) lib545$(EXEEXT) lib547$(EXEEXT) \
+	lib548$(EXEEXT) lib549$(EXEEXT) lib552$(EXEEXT) \
+	lib553$(EXEEXT) lib554$(EXEEXT) lib555$(EXEEXT) \
+	lib556$(EXEEXT) lib557$(EXEEXT) lib558$(EXEEXT) \
+	lib559$(EXEEXT) lib560$(EXEEXT) lib562$(EXEEXT) \
+	lib564$(EXEEXT) lib565$(EXEEXT) lib566$(EXEEXT) \
+	lib567$(EXEEXT) lib568$(EXEEXT) lib569$(EXEEXT) \
+	lib570$(EXEEXT) lib571$(EXEEXT) lib572$(EXEEXT) \
+	lib573$(EXEEXT) lib574$(EXEEXT) lib575$(EXEEXT) \
+	lib576$(EXEEXT) lib578$(EXEEXT) lib579$(EXEEXT) \
+	lib582$(EXEEXT) lib583$(EXEEXT) lib585$(EXEEXT) \
+	lib586$(EXEEXT) lib587$(EXEEXT) lib590$(EXEEXT) \
+	lib591$(EXEEXT) lib597$(EXEEXT) lib598$(EXEEXT) \
+	lib599$(EXEEXT) lib1500$(EXEEXT) lib1501$(EXEEXT) \
+	lib1502$(EXEEXT) lib1503$(EXEEXT) lib1504$(EXEEXT) \
+	lib1505$(EXEEXT) lib1506$(EXEEXT) lib1507$(EXEEXT) \
+	lib1508$(EXEEXT) lib1509$(EXEEXT) lib1510$(EXEEXT) \
+	lib1511$(EXEEXT) lib1512$(EXEEXT) lib1513$(EXEEXT) \
+	lib1514$(EXEEXT) lib1515$(EXEEXT) lib1517$(EXEEXT) \
+	lib1520$(EXEEXT) lib1521$(EXEEXT) lib1525$(EXEEXT) \
+	lib1526$(EXEEXT) lib1527$(EXEEXT) lib1528$(EXEEXT) \
+	lib1529$(EXEEXT) lib1530$(EXEEXT) lib1531$(EXEEXT) \
+	lib1532$(EXEEXT) lib1533$(EXEEXT) lib1534$(EXEEXT) \
+	lib1535$(EXEEXT) lib1536$(EXEEXT) lib1537$(EXEEXT) \
+	lib1538$(EXEEXT) lib1540$(EXEEXT) lib1541$(EXEEXT) \
+	lib1900$(EXEEXT) lib2033$(EXEEXT)
+@USE_CPPFLAG_CURL_STATICLIB_TRUE@am__append_1 = -DCURL_STATICLIB
+@CURL_LT_SHLIB_USE_NO_UNDEFINED_TRUE@am__append_2 = -no-undefined
+@CURL_LT_SHLIB_USE_MIMPURE_TEXT_TRUE@am__append_3 = -mimpure-text
+@DOING_CURL_SYMBOL_HIDING_TRUE@am__append_4 = -DCURL_HIDDEN_SYMBOLS
+@DOING_CURL_SYMBOL_HIDING_TRUE@am__append_5 = $(CFLAG_CURL_SYMBOL_HIDING)
+subdir = tests/libtest
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+LTLIBRARIES = $(noinst_LTLIBRARIES)
+am_libhostname_la_OBJECTS = libhostname_la-sethostname.lo
+libhostname_la_OBJECTS = $(am_libhostname_la_OBJECTS)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+libhostname_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(libhostname_la_CFLAGS) $(CFLAGS) $(libhostname_la_LDFLAGS) \
+	$(LDFLAGS) -o $@
+@BUILD_LIBHOSTNAME_TRUE@am_libhostname_la_rpath =
+PROGRAMS = $(noinst_PROGRAMS)
+am__dirstamp = $(am__leading_dot)dirstamp
+am_chkhostname_OBJECTS = chkhostname-chkhostname.$(OBJEXT) \
+	../../lib/chkhostname-curl_gethostname.$(OBJEXT)
+chkhostname_OBJECTS = $(am_chkhostname_OBJECTS)
+am__objects_1 = lib1500-first.$(OBJEXT)
+am__objects_2 = lib1500-testutil.$(OBJEXT)
+am_lib1500_OBJECTS = lib1500-lib1500.$(OBJEXT) $(am__objects_1) \
+	$(am__objects_2)
+lib1500_OBJECTS = $(am_lib1500_OBJECTS)
+@USE_EXPLICIT_LIB_DEPS_FALSE@am__DEPENDENCIES_1 =  \
+@USE_EXPLICIT_LIB_DEPS_FALSE@	$(top_builddir)/lib/libcurl.la
+@USE_EXPLICIT_LIB_DEPS_TRUE@am__DEPENDENCIES_1 =  \
+@USE_EXPLICIT_LIB_DEPS_TRUE@	$(top_builddir)/lib/libcurl.la
+lib1500_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_3 = lib1501-first.$(OBJEXT)
+am__objects_4 = lib1501-testutil.$(OBJEXT)
+am__objects_5 = ../../lib/lib1501-warnless.$(OBJEXT)
+am_lib1501_OBJECTS = lib1501-lib1501.$(OBJEXT) $(am__objects_3) \
+	$(am__objects_4) $(am__objects_5)
+lib1501_OBJECTS = $(am_lib1501_OBJECTS)
+lib1501_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_6 = lib1502-first.$(OBJEXT)
+am__objects_7 = lib1502-testutil.$(OBJEXT)
+am__objects_8 = ../../lib/lib1502-warnless.$(OBJEXT)
+am_lib1502_OBJECTS = lib1502-lib1502.$(OBJEXT) $(am__objects_6) \
+	$(am__objects_7) $(am__objects_8)
+lib1502_OBJECTS = $(am_lib1502_OBJECTS)
+lib1502_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_9 = lib1503-first.$(OBJEXT)
+am__objects_10 = lib1503-testutil.$(OBJEXT)
+am__objects_11 = ../../lib/lib1503-warnless.$(OBJEXT)
+am_lib1503_OBJECTS = lib1503-lib1502.$(OBJEXT) $(am__objects_9) \
+	$(am__objects_10) $(am__objects_11)
+lib1503_OBJECTS = $(am_lib1503_OBJECTS)
+lib1503_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_12 = lib1504-first.$(OBJEXT)
+am__objects_13 = lib1504-testutil.$(OBJEXT)
+am__objects_14 = ../../lib/lib1504-warnless.$(OBJEXT)
+am_lib1504_OBJECTS = lib1504-lib1502.$(OBJEXT) $(am__objects_12) \
+	$(am__objects_13) $(am__objects_14)
+lib1504_OBJECTS = $(am_lib1504_OBJECTS)
+lib1504_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_15 = lib1505-first.$(OBJEXT)
+am__objects_16 = lib1505-testutil.$(OBJEXT)
+am__objects_17 = ../../lib/lib1505-warnless.$(OBJEXT)
+am_lib1505_OBJECTS = lib1505-lib1502.$(OBJEXT) $(am__objects_15) \
+	$(am__objects_16) $(am__objects_17)
+lib1505_OBJECTS = $(am_lib1505_OBJECTS)
+lib1505_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_18 = lib1506-first.$(OBJEXT)
+am__objects_19 = lib1506-testutil.$(OBJEXT)
+am__objects_20 = ../../lib/lib1506-warnless.$(OBJEXT)
+am_lib1506_OBJECTS = lib1506-lib1506.$(OBJEXT) $(am__objects_18) \
+	$(am__objects_19) $(am__objects_20)
+lib1506_OBJECTS = $(am_lib1506_OBJECTS)
+lib1506_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_21 = lib1507-first.$(OBJEXT)
+am__objects_22 = lib1507-testutil.$(OBJEXT)
+am__objects_23 = ../../lib/lib1507-warnless.$(OBJEXT)
+am_lib1507_OBJECTS = lib1507-lib1507.$(OBJEXT) $(am__objects_21) \
+	$(am__objects_22) $(am__objects_23)
+lib1507_OBJECTS = $(am_lib1507_OBJECTS)
+lib1507_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_24 = lib1508-first.$(OBJEXT)
+am__objects_25 = lib1508-testutil.$(OBJEXT)
+am__objects_26 = ../../lib/lib1508-warnless.$(OBJEXT)
+am_lib1508_OBJECTS = lib1508-lib1508.$(OBJEXT) $(am__objects_24) \
+	$(am__objects_25) $(am__objects_26)
+lib1508_OBJECTS = $(am_lib1508_OBJECTS)
+lib1508_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_27 = lib1509-first.$(OBJEXT)
+am__objects_28 = lib1509-testutil.$(OBJEXT)
+am__objects_29 = ../../lib/lib1509-warnless.$(OBJEXT)
+am_lib1509_OBJECTS = lib1509-lib1509.$(OBJEXT) $(am__objects_27) \
+	$(am__objects_28) $(am__objects_29)
+lib1509_OBJECTS = $(am_lib1509_OBJECTS)
+lib1509_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_30 = lib1510-first.$(OBJEXT)
+am__objects_31 = lib1510-testutil.$(OBJEXT)
+am__objects_32 = ../../lib/lib1510-warnless.$(OBJEXT)
+am_lib1510_OBJECTS = lib1510-lib1510.$(OBJEXT) $(am__objects_30) \
+	$(am__objects_31) $(am__objects_32)
+lib1510_OBJECTS = $(am_lib1510_OBJECTS)
+lib1510_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_33 = lib1511-first.$(OBJEXT)
+am__objects_34 = lib1511-testutil.$(OBJEXT)
+am__objects_35 = ../../lib/lib1511-warnless.$(OBJEXT)
+am_lib1511_OBJECTS = lib1511-lib1511.$(OBJEXT) $(am__objects_33) \
+	$(am__objects_34) $(am__objects_35)
+lib1511_OBJECTS = $(am_lib1511_OBJECTS)
+lib1511_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_36 = lib1512-first.$(OBJEXT)
+am__objects_37 = lib1512-testutil.$(OBJEXT)
+am__objects_38 = ../../lib/lib1512-warnless.$(OBJEXT)
+am_lib1512_OBJECTS = lib1512-lib1512.$(OBJEXT) $(am__objects_36) \
+	$(am__objects_37) $(am__objects_38)
+lib1512_OBJECTS = $(am_lib1512_OBJECTS)
+lib1512_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_39 = lib1513-first.$(OBJEXT)
+am__objects_40 = lib1513-testutil.$(OBJEXT)
+am__objects_41 = ../../lib/lib1513-warnless.$(OBJEXT)
+am_lib1513_OBJECTS = lib1513-lib1513.$(OBJEXT) $(am__objects_39) \
+	$(am__objects_40) $(am__objects_41)
+lib1513_OBJECTS = $(am_lib1513_OBJECTS)
+lib1513_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_42 = lib1514-first.$(OBJEXT)
+am__objects_43 = lib1514-testutil.$(OBJEXT)
+am__objects_44 = ../../lib/lib1514-warnless.$(OBJEXT)
+am_lib1514_OBJECTS = lib1514-lib1514.$(OBJEXT) $(am__objects_42) \
+	$(am__objects_43) $(am__objects_44)
+lib1514_OBJECTS = $(am_lib1514_OBJECTS)
+lib1514_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_45 = lib1515-first.$(OBJEXT)
+am__objects_46 = lib1515-testutil.$(OBJEXT)
+am__objects_47 = ../../lib/lib1515-warnless.$(OBJEXT)
+am_lib1515_OBJECTS = lib1515-lib1515.$(OBJEXT) $(am__objects_45) \
+	$(am__objects_46) $(am__objects_47)
+lib1515_OBJECTS = $(am_lib1515_OBJECTS)
+lib1515_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_48 = lib1517-first.$(OBJEXT)
+am_lib1517_OBJECTS = lib1517-lib1517.$(OBJEXT) $(am__objects_48)
+lib1517_OBJECTS = $(am_lib1517_OBJECTS)
+lib1517_LDADD = $(LDADD)
+lib1517_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_49 = lib1520-first.$(OBJEXT)
+am_lib1520_OBJECTS = lib1520-lib1520.$(OBJEXT) $(am__objects_49)
+lib1520_OBJECTS = $(am_lib1520_OBJECTS)
+lib1520_LDADD = $(LDADD)
+lib1520_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_50 = lib1521-first.$(OBJEXT)
+am_lib1521_OBJECTS = lib1521-lib1521.$(OBJEXT) $(am__objects_50)
+lib1521_OBJECTS = $(am_lib1521_OBJECTS)
+lib1521_LDADD = $(LDADD)
+lib1521_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_51 = lib1525-first.$(OBJEXT)
+am__objects_52 = lib1525-testutil.$(OBJEXT)
+am__objects_53 = ../../lib/lib1525-warnless.$(OBJEXT)
+am_lib1525_OBJECTS = lib1525-lib1525.$(OBJEXT) $(am__objects_51) \
+	$(am__objects_52) $(am__objects_53)
+lib1525_OBJECTS = $(am_lib1525_OBJECTS)
+lib1525_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_54 = lib1526-first.$(OBJEXT)
+am__objects_55 = lib1526-testutil.$(OBJEXT)
+am__objects_56 = ../../lib/lib1526-warnless.$(OBJEXT)
+am_lib1526_OBJECTS = lib1526-lib1526.$(OBJEXT) $(am__objects_54) \
+	$(am__objects_55) $(am__objects_56)
+lib1526_OBJECTS = $(am_lib1526_OBJECTS)
+lib1526_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_57 = lib1527-first.$(OBJEXT)
+am__objects_58 = lib1527-testutil.$(OBJEXT)
+am__objects_59 = ../../lib/lib1527-warnless.$(OBJEXT)
+am_lib1527_OBJECTS = lib1527-lib1527.$(OBJEXT) $(am__objects_57) \
+	$(am__objects_58) $(am__objects_59)
+lib1527_OBJECTS = $(am_lib1527_OBJECTS)
+lib1527_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_60 = lib1528-first.$(OBJEXT)
+am__objects_61 = lib1528-testutil.$(OBJEXT)
+am__objects_62 = ../../lib/lib1528-warnless.$(OBJEXT)
+am_lib1528_OBJECTS = lib1528-lib1528.$(OBJEXT) $(am__objects_60) \
+	$(am__objects_61) $(am__objects_62)
+lib1528_OBJECTS = $(am_lib1528_OBJECTS)
+lib1528_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_63 = lib1529-first.$(OBJEXT)
+am__objects_64 = lib1529-testutil.$(OBJEXT)
+am__objects_65 = ../../lib/lib1529-warnless.$(OBJEXT)
+am_lib1529_OBJECTS = lib1529-lib1529.$(OBJEXT) $(am__objects_63) \
+	$(am__objects_64) $(am__objects_65)
+lib1529_OBJECTS = $(am_lib1529_OBJECTS)
+lib1529_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_66 = lib1530-first.$(OBJEXT)
+am__objects_67 = lib1530-testutil.$(OBJEXT)
+am__objects_68 = ../../lib/lib1530-warnless.$(OBJEXT)
+am_lib1530_OBJECTS = lib1530-lib1530.$(OBJEXT) $(am__objects_66) \
+	$(am__objects_67) $(am__objects_68)
+lib1530_OBJECTS = $(am_lib1530_OBJECTS)
+lib1530_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_69 = lib1531-first.$(OBJEXT)
+am__objects_70 = lib1531-testutil.$(OBJEXT)
+am__objects_71 = ../../lib/lib1531-warnless.$(OBJEXT)
+am_lib1531_OBJECTS = lib1531-lib1531.$(OBJEXT) $(am__objects_69) \
+	$(am__objects_70) $(am__objects_71)
+lib1531_OBJECTS = $(am_lib1531_OBJECTS)
+lib1531_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_72 = lib1532-first.$(OBJEXT)
+am__objects_73 = lib1532-testutil.$(OBJEXT)
+am__objects_74 = ../../lib/lib1532-warnless.$(OBJEXT)
+am_lib1532_OBJECTS = lib1532-lib1532.$(OBJEXT) $(am__objects_72) \
+	$(am__objects_73) $(am__objects_74)
+lib1532_OBJECTS = $(am_lib1532_OBJECTS)
+lib1532_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_75 = lib1533-first.$(OBJEXT)
+am__objects_76 = lib1533-testutil.$(OBJEXT)
+am__objects_77 = ../../lib/lib1533-warnless.$(OBJEXT)
+am_lib1533_OBJECTS = lib1533-lib1533.$(OBJEXT) $(am__objects_75) \
+	$(am__objects_76) $(am__objects_77)
+lib1533_OBJECTS = $(am_lib1533_OBJECTS)
+lib1533_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_78 = lib1534-first.$(OBJEXT)
+am__objects_79 = lib1534-testutil.$(OBJEXT)
+am__objects_80 = ../../lib/lib1534-warnless.$(OBJEXT)
+am_lib1534_OBJECTS = lib1534-lib1534.$(OBJEXT) $(am__objects_78) \
+	$(am__objects_79) $(am__objects_80)
+lib1534_OBJECTS = $(am_lib1534_OBJECTS)
+lib1534_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_81 = lib1535-first.$(OBJEXT)
+am__objects_82 = lib1535-testutil.$(OBJEXT)
+am__objects_83 = ../../lib/lib1535-warnless.$(OBJEXT)
+am_lib1535_OBJECTS = lib1535-lib1535.$(OBJEXT) $(am__objects_81) \
+	$(am__objects_82) $(am__objects_83)
+lib1535_OBJECTS = $(am_lib1535_OBJECTS)
+lib1535_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_84 = lib1536-first.$(OBJEXT)
+am__objects_85 = lib1536-testutil.$(OBJEXT)
+am__objects_86 = ../../lib/lib1536-warnless.$(OBJEXT)
+am_lib1536_OBJECTS = lib1536-lib1536.$(OBJEXT) $(am__objects_84) \
+	$(am__objects_85) $(am__objects_86)
+lib1536_OBJECTS = $(am_lib1536_OBJECTS)
+lib1536_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_87 = lib1537-first.$(OBJEXT)
+am__objects_88 = lib1537-testutil.$(OBJEXT)
+am__objects_89 = ../../lib/lib1537-warnless.$(OBJEXT)
+am_lib1537_OBJECTS = lib1537-lib1537.$(OBJEXT) $(am__objects_87) \
+	$(am__objects_88) $(am__objects_89)
+lib1537_OBJECTS = $(am_lib1537_OBJECTS)
+lib1537_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_90 = lib1538-first.$(OBJEXT)
+am__objects_91 = lib1538-testutil.$(OBJEXT)
+am__objects_92 = ../../lib/lib1538-warnless.$(OBJEXT)
+am_lib1538_OBJECTS = lib1538-lib1538.$(OBJEXT) $(am__objects_90) \
+	$(am__objects_91) $(am__objects_92)
+lib1538_OBJECTS = $(am_lib1538_OBJECTS)
+lib1538_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_93 = lib1540-first.$(OBJEXT)
+am__objects_94 = lib1540-testutil.$(OBJEXT)
+am__objects_95 = ../../lib/lib1540-warnless.$(OBJEXT)
+am_lib1540_OBJECTS = lib1540-lib1540.$(OBJEXT) $(am__objects_93) \
+	$(am__objects_94) $(am__objects_95)
+lib1540_OBJECTS = $(am_lib1540_OBJECTS)
+lib1540_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_96 = lib1541-first.$(OBJEXT)
+am__objects_97 = lib1541-testutil.$(OBJEXT)
+am__objects_98 = ../../lib/lib1541-warnless.$(OBJEXT)
+am_lib1541_OBJECTS = lib1541-lib1541.$(OBJEXT) $(am__objects_96) \
+	$(am__objects_97) $(am__objects_98)
+lib1541_OBJECTS = $(am_lib1541_OBJECTS)
+lib1541_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_99 = lib1900-first.$(OBJEXT)
+am__objects_100 = lib1900-testutil.$(OBJEXT)
+am__objects_101 = ../../lib/lib1900-warnless.$(OBJEXT)
+am_lib1900_OBJECTS = lib1900-lib1900.$(OBJEXT) $(am__objects_99) \
+	$(am__objects_100) $(am__objects_101)
+lib1900_OBJECTS = $(am_lib1900_OBJECTS)
+lib1900_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_102 = lib2033-first.$(OBJEXT)
+am__objects_103 = lib2033-testutil.$(OBJEXT)
+am__objects_104 = ../../lib/lib2033-warnless.$(OBJEXT)
+am_lib2033_OBJECTS = lib2033-libntlmconnect.$(OBJEXT) \
+	$(am__objects_102) $(am__objects_103) $(am__objects_104)
+lib2033_OBJECTS = $(am_lib2033_OBJECTS)
+lib2033_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_105 = lib500-first.$(OBJEXT)
+am__objects_106 = lib500-testutil.$(OBJEXT)
+am__objects_107 = lib500-testtrace.$(OBJEXT)
+am_lib500_OBJECTS = lib500-lib500.$(OBJEXT) $(am__objects_105) \
+	$(am__objects_106) $(am__objects_107)
+lib500_OBJECTS = $(am_lib500_OBJECTS)
+lib500_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_108 = lib501-first.$(OBJEXT)
+am_lib501_OBJECTS = lib501-lib501.$(OBJEXT) $(am__objects_108)
+lib501_OBJECTS = $(am_lib501_OBJECTS)
+lib501_LDADD = $(LDADD)
+lib501_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_109 = lib502-first.$(OBJEXT)
+am__objects_110 = lib502-testutil.$(OBJEXT)
+am__objects_111 = ../../lib/lib502-warnless.$(OBJEXT)
+am_lib502_OBJECTS = lib502-lib502.$(OBJEXT) $(am__objects_109) \
+	$(am__objects_110) $(am__objects_111)
+lib502_OBJECTS = $(am_lib502_OBJECTS)
+lib502_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_112 = lib503-first.$(OBJEXT)
+am__objects_113 = lib503-testutil.$(OBJEXT)
+am__objects_114 = ../../lib/lib503-warnless.$(OBJEXT)
+am_lib503_OBJECTS = lib503-lib503.$(OBJEXT) $(am__objects_112) \
+	$(am__objects_113) $(am__objects_114)
+lib503_OBJECTS = $(am_lib503_OBJECTS)
+lib503_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_115 = lib504-first.$(OBJEXT)
+am__objects_116 = lib504-testutil.$(OBJEXT)
+am__objects_117 = ../../lib/lib504-warnless.$(OBJEXT)
+am_lib504_OBJECTS = lib504-lib504.$(OBJEXT) $(am__objects_115) \
+	$(am__objects_116) $(am__objects_117)
+lib504_OBJECTS = $(am_lib504_OBJECTS)
+lib504_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_118 = lib505-first.$(OBJEXT)
+am_lib505_OBJECTS = lib505-lib505.$(OBJEXT) $(am__objects_118)
+lib505_OBJECTS = $(am_lib505_OBJECTS)
+lib505_LDADD = $(LDADD)
+lib505_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_119 = lib506-first.$(OBJEXT)
+am_lib506_OBJECTS = lib506-lib506.$(OBJEXT) $(am__objects_119)
+lib506_OBJECTS = $(am_lib506_OBJECTS)
+lib506_LDADD = $(LDADD)
+lib506_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_120 = lib507-first.$(OBJEXT)
+am__objects_121 = lib507-testutil.$(OBJEXT)
+am__objects_122 = ../../lib/lib507-warnless.$(OBJEXT)
+am_lib507_OBJECTS = lib507-lib507.$(OBJEXT) $(am__objects_120) \
+	$(am__objects_121) $(am__objects_122)
+lib507_OBJECTS = $(am_lib507_OBJECTS)
+lib507_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_123 = lib508-first.$(OBJEXT)
+am_lib508_OBJECTS = lib508-lib508.$(OBJEXT) $(am__objects_123)
+lib508_OBJECTS = $(am_lib508_OBJECTS)
+lib508_LDADD = $(LDADD)
+lib508_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_124 = lib509-first.$(OBJEXT)
+am_lib509_OBJECTS = lib509-lib509.$(OBJEXT) $(am__objects_124)
+lib509_OBJECTS = $(am_lib509_OBJECTS)
+lib509_LDADD = $(LDADD)
+lib509_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_125 = lib510-first.$(OBJEXT)
+am_lib510_OBJECTS = lib510-lib510.$(OBJEXT) $(am__objects_125)
+lib510_OBJECTS = $(am_lib510_OBJECTS)
+lib510_LDADD = $(LDADD)
+lib510_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_126 = lib511-first.$(OBJEXT)
+am_lib511_OBJECTS = lib511-lib511.$(OBJEXT) $(am__objects_126)
+lib511_OBJECTS = $(am_lib511_OBJECTS)
+lib511_LDADD = $(LDADD)
+lib511_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_127 = lib512-first.$(OBJEXT)
+am_lib512_OBJECTS = lib512-lib512.$(OBJEXT) $(am__objects_127)
+lib512_OBJECTS = $(am_lib512_OBJECTS)
+lib512_LDADD = $(LDADD)
+lib512_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_128 = lib513-first.$(OBJEXT)
+am_lib513_OBJECTS = lib513-lib513.$(OBJEXT) $(am__objects_128)
+lib513_OBJECTS = $(am_lib513_OBJECTS)
+lib513_LDADD = $(LDADD)
+lib513_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_129 = lib514-first.$(OBJEXT)
+am_lib514_OBJECTS = lib514-lib514.$(OBJEXT) $(am__objects_129)
+lib514_OBJECTS = $(am_lib514_OBJECTS)
+lib514_LDADD = $(LDADD)
+lib514_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_130 = lib515-first.$(OBJEXT)
+am_lib515_OBJECTS = lib515-lib515.$(OBJEXT) $(am__objects_130)
+lib515_OBJECTS = $(am_lib515_OBJECTS)
+lib515_LDADD = $(LDADD)
+lib515_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_131 = lib516-first.$(OBJEXT)
+am_lib516_OBJECTS = lib516-lib516.$(OBJEXT) $(am__objects_131)
+lib516_OBJECTS = $(am_lib516_OBJECTS)
+lib516_LDADD = $(LDADD)
+lib516_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_132 = lib517-first.$(OBJEXT)
+am_lib517_OBJECTS = lib517-lib517.$(OBJEXT) $(am__objects_132)
+lib517_OBJECTS = $(am_lib517_OBJECTS)
+lib517_LDADD = $(LDADD)
+lib517_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_133 = lib518-first.$(OBJEXT)
+am__objects_134 = ../../lib/lib518-warnless.$(OBJEXT)
+am_lib518_OBJECTS = lib518-lib518.$(OBJEXT) $(am__objects_133) \
+	$(am__objects_134)
+lib518_OBJECTS = $(am_lib518_OBJECTS)
+lib518_LDADD = $(LDADD)
+lib518_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_135 = lib519-first.$(OBJEXT)
+am_lib519_OBJECTS = lib519-lib519.$(OBJEXT) $(am__objects_135)
+lib519_OBJECTS = $(am_lib519_OBJECTS)
+lib519_LDADD = $(LDADD)
+lib519_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_136 = lib520-first.$(OBJEXT)
+am_lib520_OBJECTS = lib520-lib520.$(OBJEXT) $(am__objects_136)
+lib520_OBJECTS = $(am_lib520_OBJECTS)
+lib520_LDADD = $(LDADD)
+lib520_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_137 = lib521-first.$(OBJEXT)
+am_lib521_OBJECTS = lib521-lib521.$(OBJEXT) $(am__objects_137)
+lib521_OBJECTS = $(am_lib521_OBJECTS)
+lib521_LDADD = $(LDADD)
+lib521_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_138 = lib523-first.$(OBJEXT)
+am_lib523_OBJECTS = lib523-lib523.$(OBJEXT) $(am__objects_138)
+lib523_OBJECTS = $(am_lib523_OBJECTS)
+lib523_LDADD = $(LDADD)
+lib523_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_139 = lib524-first.$(OBJEXT)
+am_lib524_OBJECTS = lib524-lib524.$(OBJEXT) $(am__objects_139)
+lib524_OBJECTS = $(am_lib524_OBJECTS)
+lib524_LDADD = $(LDADD)
+lib524_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_140 = lib525-first.$(OBJEXT)
+am__objects_141 = lib525-testutil.$(OBJEXT)
+am__objects_142 = ../../lib/lib525-warnless.$(OBJEXT)
+am_lib525_OBJECTS = lib525-lib525.$(OBJEXT) $(am__objects_140) \
+	$(am__objects_141) $(am__objects_142)
+lib525_OBJECTS = $(am_lib525_OBJECTS)
+lib525_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_143 = lib526-first.$(OBJEXT)
+am__objects_144 = lib526-testutil.$(OBJEXT)
+am__objects_145 = ../../lib/lib526-warnless.$(OBJEXT)
+am_lib526_OBJECTS = lib526-lib526.$(OBJEXT) $(am__objects_143) \
+	$(am__objects_144) $(am__objects_145)
+lib526_OBJECTS = $(am_lib526_OBJECTS)
+lib526_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_146 = lib527-first.$(OBJEXT)
+am__objects_147 = lib527-testutil.$(OBJEXT)
+am__objects_148 = ../../lib/lib527-warnless.$(OBJEXT)
+am_lib527_OBJECTS = lib527-lib526.$(OBJEXT) $(am__objects_146) \
+	$(am__objects_147) $(am__objects_148)
+lib527_OBJECTS = $(am_lib527_OBJECTS)
+lib527_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_149 = lib529-first.$(OBJEXT)
+am__objects_150 = lib529-testutil.$(OBJEXT)
+am__objects_151 = ../../lib/lib529-warnless.$(OBJEXT)
+am_lib529_OBJECTS = lib529-lib525.$(OBJEXT) $(am__objects_149) \
+	$(am__objects_150) $(am__objects_151)
+lib529_OBJECTS = $(am_lib529_OBJECTS)
+lib529_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_152 = lib530-first.$(OBJEXT)
+am__objects_153 = lib530-testutil.$(OBJEXT)
+am__objects_154 = ../../lib/lib530-warnless.$(OBJEXT)
+am_lib530_OBJECTS = lib530-lib530.$(OBJEXT) $(am__objects_152) \
+	$(am__objects_153) $(am__objects_154)
+lib530_OBJECTS = $(am_lib530_OBJECTS)
+lib530_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_155 = lib532-first.$(OBJEXT)
+am__objects_156 = lib532-testutil.$(OBJEXT)
+am__objects_157 = ../../lib/lib532-warnless.$(OBJEXT)
+am_lib532_OBJECTS = lib532-lib526.$(OBJEXT) $(am__objects_155) \
+	$(am__objects_156) $(am__objects_157)
+lib532_OBJECTS = $(am_lib532_OBJECTS)
+lib532_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_158 = lib533-first.$(OBJEXT)
+am__objects_159 = lib533-testutil.$(OBJEXT)
+am__objects_160 = ../../lib/lib533-warnless.$(OBJEXT)
+am_lib533_OBJECTS = lib533-lib533.$(OBJEXT) $(am__objects_158) \
+	$(am__objects_159) $(am__objects_160)
+lib533_OBJECTS = $(am_lib533_OBJECTS)
+lib533_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_161 = lib536-first.$(OBJEXT)
+am__objects_162 = lib536-testutil.$(OBJEXT)
+am__objects_163 = ../../lib/lib536-warnless.$(OBJEXT)
+am_lib536_OBJECTS = lib536-lib536.$(OBJEXT) $(am__objects_161) \
+	$(am__objects_162) $(am__objects_163)
+lib536_OBJECTS = $(am_lib536_OBJECTS)
+lib536_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_164 = lib537-first.$(OBJEXT)
+am__objects_165 = ../../lib/lib537-warnless.$(OBJEXT)
+am_lib537_OBJECTS = lib537-lib537.$(OBJEXT) $(am__objects_164) \
+	$(am__objects_165)
+lib537_OBJECTS = $(am_lib537_OBJECTS)
+lib537_LDADD = $(LDADD)
+lib537_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_166 = lib539-first.$(OBJEXT)
+am_lib539_OBJECTS = lib539-lib539.$(OBJEXT) $(am__objects_166)
+lib539_OBJECTS = $(am_lib539_OBJECTS)
+lib539_LDADD = $(LDADD)
+lib539_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_167 = lib540-first.$(OBJEXT)
+am__objects_168 = lib540-testutil.$(OBJEXT)
+am__objects_169 = ../../lib/lib540-warnless.$(OBJEXT)
+am_lib540_OBJECTS = lib540-lib540.$(OBJEXT) $(am__objects_167) \
+	$(am__objects_168) $(am__objects_169)
+lib540_OBJECTS = $(am_lib540_OBJECTS)
+lib540_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_170 = lib541-first.$(OBJEXT)
+am_lib541_OBJECTS = lib541-lib541.$(OBJEXT) $(am__objects_170)
+lib541_OBJECTS = $(am_lib541_OBJECTS)
+lib541_LDADD = $(LDADD)
+lib541_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_171 = lib542-first.$(OBJEXT)
+am_lib542_OBJECTS = lib542-lib542.$(OBJEXT) $(am__objects_171)
+lib542_OBJECTS = $(am_lib542_OBJECTS)
+lib542_LDADD = $(LDADD)
+lib542_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_172 = lib543-first.$(OBJEXT)
+am_lib543_OBJECTS = lib543-lib543.$(OBJEXT) $(am__objects_172)
+lib543_OBJECTS = $(am_lib543_OBJECTS)
+lib543_LDADD = $(LDADD)
+lib543_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_173 = lib544-first.$(OBJEXT)
+am_lib544_OBJECTS = lib544-lib544.$(OBJEXT) $(am__objects_173)
+lib544_OBJECTS = $(am_lib544_OBJECTS)
+lib544_LDADD = $(LDADD)
+lib544_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_174 = lib545-first.$(OBJEXT)
+am_lib545_OBJECTS = lib545-lib544.$(OBJEXT) $(am__objects_174)
+lib545_OBJECTS = $(am_lib545_OBJECTS)
+lib545_LDADD = $(LDADD)
+lib545_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_175 = lib547-first.$(OBJEXT)
+am_lib547_OBJECTS = lib547-lib547.$(OBJEXT) $(am__objects_175)
+lib547_OBJECTS = $(am_lib547_OBJECTS)
+lib547_LDADD = $(LDADD)
+lib547_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_176 = lib548-first.$(OBJEXT)
+am_lib548_OBJECTS = lib548-lib547.$(OBJEXT) $(am__objects_176)
+lib548_OBJECTS = $(am_lib548_OBJECTS)
+lib548_LDADD = $(LDADD)
+lib548_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_177 = lib549-first.$(OBJEXT)
+am_lib549_OBJECTS = lib549-lib549.$(OBJEXT) $(am__objects_177)
+lib549_OBJECTS = $(am_lib549_OBJECTS)
+lib549_LDADD = $(LDADD)
+lib549_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_178 = lib552-first.$(OBJEXT)
+am__objects_179 = ../../lib/lib552-warnless.$(OBJEXT)
+am_lib552_OBJECTS = lib552-lib552.$(OBJEXT) $(am__objects_178) \
+	$(am__objects_179)
+lib552_OBJECTS = $(am_lib552_OBJECTS)
+lib552_LDADD = $(LDADD)
+lib552_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_180 = lib553-first.$(OBJEXT)
+am_lib553_OBJECTS = lib553-lib553.$(OBJEXT) $(am__objects_180)
+lib553_OBJECTS = $(am_lib553_OBJECTS)
+lib553_LDADD = $(LDADD)
+lib553_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_181 = lib554-first.$(OBJEXT)
+am_lib554_OBJECTS = lib554-lib554.$(OBJEXT) $(am__objects_181)
+lib554_OBJECTS = $(am_lib554_OBJECTS)
+lib554_LDADD = $(LDADD)
+lib554_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_182 = lib555-first.$(OBJEXT)
+am__objects_183 = lib555-testutil.$(OBJEXT)
+am__objects_184 = ../../lib/lib555-warnless.$(OBJEXT)
+am_lib555_OBJECTS = lib555-lib555.$(OBJEXT) $(am__objects_182) \
+	$(am__objects_183) $(am__objects_184)
+lib555_OBJECTS = $(am_lib555_OBJECTS)
+lib555_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_185 = lib556-first.$(OBJEXT)
+am__objects_186 = ../../lib/lib556-warnless.$(OBJEXT)
+am_lib556_OBJECTS = lib556-lib556.$(OBJEXT) $(am__objects_185) \
+	$(am__objects_186)
+lib556_OBJECTS = $(am_lib556_OBJECTS)
+lib556_LDADD = $(LDADD)
+lib556_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_187 = lib557-first.$(OBJEXT)
+am_lib557_OBJECTS = lib557-lib557.$(OBJEXT) $(am__objects_187)
+lib557_OBJECTS = $(am_lib557_OBJECTS)
+lib557_LDADD = $(LDADD)
+lib557_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_188 = lib558-first.$(OBJEXT)
+am_lib558_OBJECTS = lib558-lib558.$(OBJEXT) $(am__objects_188)
+lib558_OBJECTS = $(am_lib558_OBJECTS)
+lib558_LDADD = $(LDADD)
+lib558_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_189 = lib559-first.$(OBJEXT)
+am_lib559_OBJECTS = lib559-lib559.$(OBJEXT) $(am__objects_189)
+lib559_OBJECTS = $(am_lib559_OBJECTS)
+lib559_LDADD = $(LDADD)
+lib559_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_190 = lib560-first.$(OBJEXT)
+am__objects_191 = lib560-testutil.$(OBJEXT)
+am__objects_192 = ../../lib/lib560-warnless.$(OBJEXT)
+am_lib560_OBJECTS = lib560-lib560.$(OBJEXT) $(am__objects_190) \
+	$(am__objects_191) $(am__objects_192)
+lib560_OBJECTS = $(am_lib560_OBJECTS)
+lib560_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_193 = lib562-first.$(OBJEXT)
+am_lib562_OBJECTS = lib562-lib562.$(OBJEXT) $(am__objects_193)
+lib562_OBJECTS = $(am_lib562_OBJECTS)
+lib562_LDADD = $(LDADD)
+lib562_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_194 = lib564-first.$(OBJEXT)
+am__objects_195 = lib564-testutil.$(OBJEXT)
+am__objects_196 = ../../lib/lib564-warnless.$(OBJEXT)
+am_lib564_OBJECTS = lib564-lib564.$(OBJEXT) $(am__objects_194) \
+	$(am__objects_195) $(am__objects_196)
+lib564_OBJECTS = $(am_lib564_OBJECTS)
+lib564_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_197 = lib565-first.$(OBJEXT)
+am_lib565_OBJECTS = lib565-lib510.$(OBJEXT) $(am__objects_197)
+lib565_OBJECTS = $(am_lib565_OBJECTS)
+lib565_LDADD = $(LDADD)
+lib565_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_198 = lib566-first.$(OBJEXT)
+am_lib566_OBJECTS = lib566-lib566.$(OBJEXT) $(am__objects_198)
+lib566_OBJECTS = $(am_lib566_OBJECTS)
+lib566_LDADD = $(LDADD)
+lib566_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_199 = lib567-first.$(OBJEXT)
+am_lib567_OBJECTS = lib567-lib567.$(OBJEXT) $(am__objects_199)
+lib567_OBJECTS = $(am_lib567_OBJECTS)
+lib567_LDADD = $(LDADD)
+lib567_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_200 = lib568-first.$(OBJEXT)
+am_lib568_OBJECTS = lib568-lib568.$(OBJEXT) $(am__objects_200)
+lib568_OBJECTS = $(am_lib568_OBJECTS)
+lib568_LDADD = $(LDADD)
+lib568_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_201 = lib569-first.$(OBJEXT)
+am_lib569_OBJECTS = lib569-lib569.$(OBJEXT) $(am__objects_201)
+lib569_OBJECTS = $(am_lib569_OBJECTS)
+lib569_LDADD = $(LDADD)
+lib569_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_202 = lib570-first.$(OBJEXT)
+am_lib570_OBJECTS = lib570-lib570.$(OBJEXT) $(am__objects_202)
+lib570_OBJECTS = $(am_lib570_OBJECTS)
+lib570_LDADD = $(LDADD)
+lib570_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_203 = lib571-first.$(OBJEXT)
+am__objects_204 = ../../lib/lib571-warnless.$(OBJEXT)
+am_lib571_OBJECTS = lib571-lib571.$(OBJEXT) $(am__objects_203) \
+	$(am__objects_204)
+lib571_OBJECTS = $(am_lib571_OBJECTS)
+lib571_LDADD = $(LDADD)
+lib571_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_205 = lib572-first.$(OBJEXT)
+am_lib572_OBJECTS = lib572-lib572.$(OBJEXT) $(am__objects_205)
+lib572_OBJECTS = $(am_lib572_OBJECTS)
+lib572_LDADD = $(LDADD)
+lib572_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_206 = lib573-first.$(OBJEXT)
+am__objects_207 = lib573-testutil.$(OBJEXT)
+am__objects_208 = ../../lib/lib573-warnless.$(OBJEXT)
+am__objects_209 = lib573-testtrace.$(OBJEXT)
+am_lib573_OBJECTS = lib573-lib573.$(OBJEXT) $(am__objects_206) \
+	$(am__objects_207) $(am__objects_208) $(am__objects_209)
+lib573_OBJECTS = $(am_lib573_OBJECTS)
+lib573_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_210 = lib574-first.$(OBJEXT)
+am_lib574_OBJECTS = lib574-lib574.$(OBJEXT) $(am__objects_210)
+lib574_OBJECTS = $(am_lib574_OBJECTS)
+lib574_LDADD = $(LDADD)
+lib574_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_211 = lib575-first.$(OBJEXT)
+am__objects_212 = lib575-testutil.$(OBJEXT)
+am__objects_213 = ../../lib/lib575-warnless.$(OBJEXT)
+am_lib575_OBJECTS = lib575-lib575.$(OBJEXT) $(am__objects_211) \
+	$(am__objects_212) $(am__objects_213)
+lib575_OBJECTS = $(am_lib575_OBJECTS)
+lib575_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_214 = lib576-first.$(OBJEXT)
+am_lib576_OBJECTS = lib576-lib576.$(OBJEXT) $(am__objects_214)
+lib576_OBJECTS = $(am_lib576_OBJECTS)
+lib576_LDADD = $(LDADD)
+lib576_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_215 = lib578-first.$(OBJEXT)
+am_lib578_OBJECTS = lib578-lib578.$(OBJEXT) $(am__objects_215)
+lib578_OBJECTS = $(am_lib578_OBJECTS)
+lib578_LDADD = $(LDADD)
+lib578_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_216 = lib579-first.$(OBJEXT)
+am_lib579_OBJECTS = lib579-lib579.$(OBJEXT) $(am__objects_216)
+lib579_OBJECTS = $(am_lib579_OBJECTS)
+lib579_LDADD = $(LDADD)
+lib579_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_217 = lib582-first.$(OBJEXT)
+am__objects_218 = lib582-testutil.$(OBJEXT)
+am__objects_219 = ../../lib/lib582-warnless.$(OBJEXT)
+am_lib582_OBJECTS = lib582-lib582.$(OBJEXT) $(am__objects_217) \
+	$(am__objects_218) $(am__objects_219)
+lib582_OBJECTS = $(am_lib582_OBJECTS)
+lib582_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_220 = lib583-first.$(OBJEXT)
+am_lib583_OBJECTS = lib583-lib583.$(OBJEXT) $(am__objects_220)
+lib583_OBJECTS = $(am_lib583_OBJECTS)
+lib583_LDADD = $(LDADD)
+lib583_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_221 = lib585-first.$(OBJEXT)
+am__objects_222 = lib585-testutil.$(OBJEXT)
+am__objects_223 = lib585-testtrace.$(OBJEXT)
+am_lib585_OBJECTS = lib585-lib500.$(OBJEXT) $(am__objects_221) \
+	$(am__objects_222) $(am__objects_223)
+lib585_OBJECTS = $(am_lib585_OBJECTS)
+lib585_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_224 = lib586-first.$(OBJEXT)
+am_lib586_OBJECTS = lib586-lib586.$(OBJEXT) $(am__objects_224)
+lib586_OBJECTS = $(am_lib586_OBJECTS)
+lib586_LDADD = $(LDADD)
+lib586_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_225 = lib587-first.$(OBJEXT)
+am_lib587_OBJECTS = lib587-lib554.$(OBJEXT) $(am__objects_225)
+lib587_OBJECTS = $(am_lib587_OBJECTS)
+lib587_LDADD = $(LDADD)
+lib587_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_226 = lib590-first.$(OBJEXT)
+am_lib590_OBJECTS = lib590-lib590.$(OBJEXT) $(am__objects_226)
+lib590_OBJECTS = $(am_lib590_OBJECTS)
+lib590_LDADD = $(LDADD)
+lib590_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_227 = lib591-first.$(OBJEXT)
+am__objects_228 = lib591-testutil.$(OBJEXT)
+am__objects_229 = ../../lib/lib591-warnless.$(OBJEXT)
+am_lib591_OBJECTS = lib591-lib591.$(OBJEXT) $(am__objects_227) \
+	$(am__objects_228) $(am__objects_229)
+lib591_OBJECTS = $(am_lib591_OBJECTS)
+lib591_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_230 = lib597-first.$(OBJEXT)
+am__objects_231 = lib597-testutil.$(OBJEXT)
+am__objects_232 = ../../lib/lib597-warnless.$(OBJEXT)
+am_lib597_OBJECTS = lib597-lib597.$(OBJEXT) $(am__objects_230) \
+	$(am__objects_231) $(am__objects_232)
+lib597_OBJECTS = $(am_lib597_OBJECTS)
+lib597_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_233 = lib598-first.$(OBJEXT)
+am_lib598_OBJECTS = lib598-lib598.$(OBJEXT) $(am__objects_233)
+lib598_OBJECTS = $(am_lib598_OBJECTS)
+lib598_LDADD = $(LDADD)
+lib598_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_234 = lib599-first.$(OBJEXT)
+am_lib599_OBJECTS = lib599-lib599.$(OBJEXT) $(am__objects_234)
+lib599_OBJECTS = $(am_lib599_OBJECTS)
+lib599_LDADD = $(LDADD)
+lib599_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_235 = libauthretry-first.$(OBJEXT)
+am_libauthretry_OBJECTS = libauthretry-libauthretry.$(OBJEXT) \
+	$(am__objects_235)
+libauthretry_OBJECTS = $(am_libauthretry_OBJECTS)
+libauthretry_LDADD = $(LDADD)
+libauthretry_DEPENDENCIES = $(am__DEPENDENCIES_1)
+am__objects_236 = libntlmconnect-first.$(OBJEXT)
+am__objects_237 = libntlmconnect-testutil.$(OBJEXT)
+am__objects_238 = ../../lib/libntlmconnect-warnless.$(OBJEXT)
+am_libntlmconnect_OBJECTS = libntlmconnect-libntlmconnect.$(OBJEXT) \
+	$(am__objects_236) $(am__objects_237) $(am__objects_238)
+libntlmconnect_OBJECTS = $(am_libntlmconnect_OBJECTS)
+libntlmconnect_DEPENDENCIES = $(am__DEPENDENCIES_1)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+DEFAULT_INCLUDES = 
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo "  CC      " $@;
+am__v_CC_1 = 
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo "  CCLD    " $@;
+am__v_CCLD_1 = 
+SOURCES = $(libhostname_la_SOURCES) $(chkhostname_SOURCES) \
+	$(lib1500_SOURCES) $(lib1501_SOURCES) $(lib1502_SOURCES) \
+	$(lib1503_SOURCES) $(lib1504_SOURCES) $(lib1505_SOURCES) \
+	$(lib1506_SOURCES) $(lib1507_SOURCES) $(lib1508_SOURCES) \
+	$(lib1509_SOURCES) $(lib1510_SOURCES) $(lib1511_SOURCES) \
+	$(lib1512_SOURCES) $(lib1513_SOURCES) $(lib1514_SOURCES) \
+	$(lib1515_SOURCES) $(lib1517_SOURCES) $(lib1520_SOURCES) \
+	$(lib1521_SOURCES) $(lib1525_SOURCES) $(lib1526_SOURCES) \
+	$(lib1527_SOURCES) $(lib1528_SOURCES) $(lib1529_SOURCES) \
+	$(lib1530_SOURCES) $(lib1531_SOURCES) $(lib1532_SOURCES) \
+	$(lib1533_SOURCES) $(lib1534_SOURCES) $(lib1535_SOURCES) \
+	$(lib1536_SOURCES) $(lib1537_SOURCES) $(lib1538_SOURCES) \
+	$(lib1540_SOURCES) $(lib1541_SOURCES) $(lib1900_SOURCES) \
+	$(lib2033_SOURCES) $(lib500_SOURCES) $(lib501_SOURCES) \
+	$(lib502_SOURCES) $(lib503_SOURCES) $(lib504_SOURCES) \
+	$(lib505_SOURCES) $(lib506_SOURCES) $(lib507_SOURCES) \
+	$(lib508_SOURCES) $(lib509_SOURCES) $(lib510_SOURCES) \
+	$(lib511_SOURCES) $(lib512_SOURCES) $(lib513_SOURCES) \
+	$(lib514_SOURCES) $(lib515_SOURCES) $(lib516_SOURCES) \
+	$(lib517_SOURCES) $(lib518_SOURCES) $(lib519_SOURCES) \
+	$(lib520_SOURCES) $(lib521_SOURCES) $(lib523_SOURCES) \
+	$(lib524_SOURCES) $(lib525_SOURCES) $(lib526_SOURCES) \
+	$(lib527_SOURCES) $(lib529_SOURCES) $(lib530_SOURCES) \
+	$(lib532_SOURCES) $(lib533_SOURCES) $(lib536_SOURCES) \
+	$(lib537_SOURCES) $(lib539_SOURCES) $(lib540_SOURCES) \
+	$(lib541_SOURCES) $(lib542_SOURCES) $(lib543_SOURCES) \
+	$(lib544_SOURCES) $(lib545_SOURCES) $(lib547_SOURCES) \
+	$(lib548_SOURCES) $(lib549_SOURCES) $(lib552_SOURCES) \
+	$(lib553_SOURCES) $(lib554_SOURCES) $(lib555_SOURCES) \
+	$(lib556_SOURCES) $(lib557_SOURCES) $(lib558_SOURCES) \
+	$(lib559_SOURCES) $(lib560_SOURCES) $(lib562_SOURCES) \
+	$(lib564_SOURCES) $(lib565_SOURCES) $(lib566_SOURCES) \
+	$(lib567_SOURCES) $(lib568_SOURCES) $(lib569_SOURCES) \
+	$(lib570_SOURCES) $(lib571_SOURCES) $(lib572_SOURCES) \
+	$(lib573_SOURCES) $(lib574_SOURCES) $(lib575_SOURCES) \
+	$(lib576_SOURCES) $(lib578_SOURCES) $(lib579_SOURCES) \
+	$(lib582_SOURCES) $(lib583_SOURCES) $(lib585_SOURCES) \
+	$(lib586_SOURCES) $(lib587_SOURCES) $(lib590_SOURCES) \
+	$(lib591_SOURCES) $(lib597_SOURCES) $(lib598_SOURCES) \
+	$(lib599_SOURCES) $(libauthretry_SOURCES) \
+	$(libntlmconnect_SOURCES)
+DIST_SOURCES = $(libhostname_la_SOURCES) $(chkhostname_SOURCES) \
+	$(lib1500_SOURCES) $(lib1501_SOURCES) $(lib1502_SOURCES) \
+	$(lib1503_SOURCES) $(lib1504_SOURCES) $(lib1505_SOURCES) \
+	$(lib1506_SOURCES) $(lib1507_SOURCES) $(lib1508_SOURCES) \
+	$(lib1509_SOURCES) $(lib1510_SOURCES) $(lib1511_SOURCES) \
+	$(lib1512_SOURCES) $(lib1513_SOURCES) $(lib1514_SOURCES) \
+	$(lib1515_SOURCES) $(lib1517_SOURCES) $(lib1520_SOURCES) \
+	$(lib1521_SOURCES) $(lib1525_SOURCES) $(lib1526_SOURCES) \
+	$(lib1527_SOURCES) $(lib1528_SOURCES) $(lib1529_SOURCES) \
+	$(lib1530_SOURCES) $(lib1531_SOURCES) $(lib1532_SOURCES) \
+	$(lib1533_SOURCES) $(lib1534_SOURCES) $(lib1535_SOURCES) \
+	$(lib1536_SOURCES) $(lib1537_SOURCES) $(lib1538_SOURCES) \
+	$(lib1540_SOURCES) $(lib1541_SOURCES) $(lib1900_SOURCES) \
+	$(lib2033_SOURCES) $(lib500_SOURCES) $(lib501_SOURCES) \
+	$(lib502_SOURCES) $(lib503_SOURCES) $(lib504_SOURCES) \
+	$(lib505_SOURCES) $(lib506_SOURCES) $(lib507_SOURCES) \
+	$(lib508_SOURCES) $(lib509_SOURCES) $(lib510_SOURCES) \
+	$(lib511_SOURCES) $(lib512_SOURCES) $(lib513_SOURCES) \
+	$(lib514_SOURCES) $(lib515_SOURCES) $(lib516_SOURCES) \
+	$(lib517_SOURCES) $(lib518_SOURCES) $(lib519_SOURCES) \
+	$(lib520_SOURCES) $(lib521_SOURCES) $(lib523_SOURCES) \
+	$(lib524_SOURCES) $(lib525_SOURCES) $(lib526_SOURCES) \
+	$(lib527_SOURCES) $(lib529_SOURCES) $(lib530_SOURCES) \
+	$(lib532_SOURCES) $(lib533_SOURCES) $(lib536_SOURCES) \
+	$(lib537_SOURCES) $(lib539_SOURCES) $(lib540_SOURCES) \
+	$(lib541_SOURCES) $(lib542_SOURCES) $(lib543_SOURCES) \
+	$(lib544_SOURCES) $(lib545_SOURCES) $(lib547_SOURCES) \
+	$(lib548_SOURCES) $(lib549_SOURCES) $(lib552_SOURCES) \
+	$(lib553_SOURCES) $(lib554_SOURCES) $(lib555_SOURCES) \
+	$(lib556_SOURCES) $(lib557_SOURCES) $(lib558_SOURCES) \
+	$(lib559_SOURCES) $(lib560_SOURCES) $(lib562_SOURCES) \
+	$(lib564_SOURCES) $(lib565_SOURCES) $(lib566_SOURCES) \
+	$(lib567_SOURCES) $(lib568_SOURCES) $(lib569_SOURCES) \
+	$(lib570_SOURCES) $(lib571_SOURCES) $(lib572_SOURCES) \
+	$(lib573_SOURCES) $(lib574_SOURCES) $(lib575_SOURCES) \
+	$(lib576_SOURCES) $(lib578_SOURCES) $(lib579_SOURCES) \
+	$(lib582_SOURCES) $(lib583_SOURCES) $(lib585_SOURCES) \
+	$(lib586_SOURCES) $(lib587_SOURCES) $(lib590_SOURCES) \
+	$(lib591_SOURCES) $(lib597_SOURCES) $(lib598_SOURCES) \
+	$(lib599_SOURCES) $(libauthretry_SOURCES) \
+	$(libntlmconnect_SOURCES)
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
+	$(top_srcdir)/depcomp
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign nostdinc
+@USE_EMBEDDED_ARES_FALSE@AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_builddir)/include \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/include \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_builddir)/lib \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/lib $(am__append_1)
+
+# Specify our include paths here, and do it relative to $(top_srcdir) and
+# $(top_builddir), to ensure that these paths which belong to the library
+# being currently built and tested are searched before the library which
+# might possibly already be installed in the system.
+#
+# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
+# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h
+# $(top_srcdir)/include is for libcurl's external include files
+# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
+# $(top_srcdir)/ares is for in-tree c-ares's external include files
+@USE_EMBEDDED_ARES_TRUE@AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/include \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/include \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/lib \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/lib \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/ares \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/ares $(am__append_1)
+EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl	\
+test1022.pl Makefile.inc notexists.pl CMakeLists.txt
+
+@USE_EXPLICIT_LIB_DEPS_FALSE@SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_LIBS@ @NSS_LIBS@
+@USE_EXPLICIT_LIB_DEPS_TRUE@SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
+@USE_EXPLICIT_LIB_DEPS_FALSE@TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_AND_TIME_LIBS@ @NSS_LIBS@
+@USE_EXPLICIT_LIB_DEPS_TRUE@TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
+
+# Dependencies (may need to be overridden)
+LDADD = $(SUPPORTFILES_LIBS)
+
+# files used only in some libcurl test programs
+TESTUTIL = testutil.c testutil.h
+
+# files used only in some libcurl test programs
+TSTTRACE = testtrace.c testtrace.h
+
+# files used only in some libcurl test programs
+WARNLESS = ../../lib/warnless.c ../../lib/warnless.h
+
+# these files are used in every single test program below
+SUPPORTFILES = first.c test.h
+chkhostname_SOURCES = chkhostname.c ../../lib/curl_gethostname.c
+chkhostname_LDADD = @CURL_NETWORK_LIBS@
+chkhostname_DEPENDENCIES = 
+chkhostname_CPPFLAGS = $(AM_CPPFLAGS)
+libntlmconnect_SOURCES = libntlmconnect.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+libntlmconnect_LDADD = $(TESTUTIL_LIBS)
+libntlmconnect_CPPFLAGS = $(AM_CPPFLAGS)
+libauthretry_SOURCES = libauthretry.c $(SUPPORTFILES)
+libauthretry_CPPFLAGS = $(AM_CPPFLAGS)
+lib500_SOURCES = lib500.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE)
+lib500_LDADD = $(TESTUTIL_LIBS)
+lib500_CPPFLAGS = $(AM_CPPFLAGS)
+lib501_SOURCES = lib501.c $(SUPPORTFILES)
+lib501_CPPFLAGS = $(AM_CPPFLAGS)
+lib502_SOURCES = lib502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib502_LDADD = $(TESTUTIL_LIBS)
+lib502_CPPFLAGS = $(AM_CPPFLAGS)
+lib503_SOURCES = lib503.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib503_LDADD = $(TESTUTIL_LIBS)
+lib503_CPPFLAGS = $(AM_CPPFLAGS)
+lib504_SOURCES = lib504.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib504_LDADD = $(TESTUTIL_LIBS)
+lib504_CPPFLAGS = $(AM_CPPFLAGS)
+lib505_SOURCES = lib505.c $(SUPPORTFILES)
+lib505_CPPFLAGS = $(AM_CPPFLAGS)
+lib506_SOURCES = lib506.c $(SUPPORTFILES)
+lib506_CPPFLAGS = $(AM_CPPFLAGS)
+lib507_SOURCES = lib507.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib507_LDADD = $(TESTUTIL_LIBS)
+lib507_CPPFLAGS = $(AM_CPPFLAGS)
+lib508_SOURCES = lib508.c $(SUPPORTFILES)
+lib508_CPPFLAGS = $(AM_CPPFLAGS)
+lib509_SOURCES = lib509.c $(SUPPORTFILES)
+lib509_CPPFLAGS = $(AM_CPPFLAGS)
+lib510_SOURCES = lib510.c $(SUPPORTFILES)
+lib510_CPPFLAGS = $(AM_CPPFLAGS)
+lib511_SOURCES = lib511.c $(SUPPORTFILES)
+lib511_CPPFLAGS = $(AM_CPPFLAGS)
+lib512_SOURCES = lib512.c $(SUPPORTFILES)
+lib512_CPPFLAGS = $(AM_CPPFLAGS)
+lib513_SOURCES = lib513.c $(SUPPORTFILES)
+lib513_CPPFLAGS = $(AM_CPPFLAGS)
+lib514_SOURCES = lib514.c $(SUPPORTFILES)
+lib514_CPPFLAGS = $(AM_CPPFLAGS)
+lib515_SOURCES = lib515.c $(SUPPORTFILES)
+lib515_CPPFLAGS = $(AM_CPPFLAGS)
+lib516_SOURCES = lib516.c $(SUPPORTFILES)
+lib516_CPPFLAGS = $(AM_CPPFLAGS)
+lib517_SOURCES = lib517.c $(SUPPORTFILES)
+lib517_CPPFLAGS = $(AM_CPPFLAGS)
+lib518_SOURCES = lib518.c $(SUPPORTFILES) $(WARNLESS)
+lib518_CPPFLAGS = $(AM_CPPFLAGS)
+lib519_SOURCES = lib519.c $(SUPPORTFILES)
+lib519_CPPFLAGS = $(AM_CPPFLAGS)
+lib520_SOURCES = lib520.c $(SUPPORTFILES)
+lib520_CPPFLAGS = $(AM_CPPFLAGS)
+lib521_SOURCES = lib521.c $(SUPPORTFILES)
+lib521_CPPFLAGS = $(AM_CPPFLAGS)
+lib523_SOURCES = lib523.c $(SUPPORTFILES)
+lib523_CPPFLAGS = $(AM_CPPFLAGS)
+lib524_SOURCES = lib524.c $(SUPPORTFILES)
+lib524_CPPFLAGS = $(AM_CPPFLAGS)
+lib525_SOURCES = lib525.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib525_LDADD = $(TESTUTIL_LIBS)
+lib525_CPPFLAGS = $(AM_CPPFLAGS)
+lib526_SOURCES = lib526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib526_LDADD = $(TESTUTIL_LIBS)
+lib526_CPPFLAGS = $(AM_CPPFLAGS) -DLIB526
+lib527_SOURCES = lib526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib527_LDADD = $(TESTUTIL_LIBS)
+lib527_CPPFLAGS = $(AM_CPPFLAGS) -DLIB527
+lib529_SOURCES = lib525.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib529_LDADD = $(TESTUTIL_LIBS)
+lib529_CPPFLAGS = $(AM_CPPFLAGS) -DLIB529
+lib530_SOURCES = lib530.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib530_LDADD = $(TESTUTIL_LIBS)
+lib530_CPPFLAGS = $(AM_CPPFLAGS) -DLIB530
+lib532_SOURCES = lib526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib532_LDADD = $(TESTUTIL_LIBS)
+lib532_CPPFLAGS = $(AM_CPPFLAGS) -DLIB532
+lib533_SOURCES = lib533.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib533_LDADD = $(TESTUTIL_LIBS)
+lib533_CPPFLAGS = $(AM_CPPFLAGS)
+lib536_SOURCES = lib536.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib536_LDADD = $(TESTUTIL_LIBS)
+lib536_CPPFLAGS = $(AM_CPPFLAGS)
+lib537_SOURCES = lib537.c $(SUPPORTFILES) $(WARNLESS)
+lib537_CPPFLAGS = $(AM_CPPFLAGS)
+lib539_SOURCES = lib539.c $(SUPPORTFILES)
+lib539_CPPFLAGS = $(AM_CPPFLAGS)
+lib540_SOURCES = lib540.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib540_LDADD = $(TESTUTIL_LIBS)
+lib540_CPPFLAGS = $(AM_CPPFLAGS)
+lib541_SOURCES = lib541.c $(SUPPORTFILES)
+lib541_CPPFLAGS = $(AM_CPPFLAGS)
+lib542_SOURCES = lib542.c $(SUPPORTFILES)
+lib542_CPPFLAGS = $(AM_CPPFLAGS)
+lib543_SOURCES = lib543.c $(SUPPORTFILES)
+lib543_CPPFLAGS = $(AM_CPPFLAGS)
+lib544_SOURCES = lib544.c $(SUPPORTFILES)
+lib544_CPPFLAGS = $(AM_CPPFLAGS)
+lib545_SOURCES = lib544.c $(SUPPORTFILES)
+lib545_CPPFLAGS = $(AM_CPPFLAGS) -DLIB545
+lib547_SOURCES = lib547.c $(SUPPORTFILES)
+lib547_CPPFLAGS = $(AM_CPPFLAGS)
+lib548_SOURCES = lib547.c $(SUPPORTFILES)
+lib548_CPPFLAGS = $(AM_CPPFLAGS) -DLIB548
+lib549_SOURCES = lib549.c $(SUPPORTFILES)
+lib549_CPPFLAGS = $(AM_CPPFLAGS)
+lib552_SOURCES = lib552.c $(SUPPORTFILES) $(WARNLESS)
+lib552_CPPFLAGS = $(AM_CPPFLAGS)
+lib553_SOURCES = lib553.c $(SUPPORTFILES)
+lib553_CPPFLAGS = $(AM_CPPFLAGS)
+lib554_SOURCES = lib554.c $(SUPPORTFILES)
+lib554_CPPFLAGS = $(AM_CPPFLAGS)
+lib555_SOURCES = lib555.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib555_LDADD = $(TESTUTIL_LIBS)
+lib555_CPPFLAGS = $(AM_CPPFLAGS)
+lib556_SOURCES = lib556.c $(SUPPORTFILES) $(WARNLESS)
+lib556_CPPFLAGS = $(AM_CPPFLAGS)
+lib557_SOURCES = lib557.c $(SUPPORTFILES)
+lib557_CPPFLAGS = $(AM_CPPFLAGS)
+lib558_SOURCES = lib558.c $(SUPPORTFILES)
+lib558_CPPFLAGS = $(AM_CPPFLAGS)
+lib559_SOURCES = lib559.c $(SUPPORTFILES)
+lib559_CPPFLAGS = $(AM_CPPFLAGS)
+lib560_SOURCES = lib560.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib560_LDADD = $(TESTUTIL_LIBS)
+lib560_CPPFLAGS = $(AM_CPPFLAGS)
+lib562_SOURCES = lib562.c $(SUPPORTFILES)
+lib562_CPPFLAGS = $(AM_CPPFLAGS)
+lib564_SOURCES = lib564.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib564_LDADD = $(TESTUTIL_LIBS)
+lib564_CPPFLAGS = $(AM_CPPFLAGS)
+lib565_SOURCES = lib510.c $(SUPPORTFILES)
+lib565_CPPFLAGS = $(AM_CPPFLAGS) -DLIB565
+lib566_SOURCES = lib566.c $(SUPPORTFILES)
+lib566_CPPFLAGS = $(AM_CPPFLAGS)
+lib567_SOURCES = lib567.c $(SUPPORTFILES)
+lib567_CPPFLAGS = $(AM_CPPFLAGS)
+lib568_SOURCES = lib568.c $(SUPPORTFILES)
+lib568_CPPFLAGS = $(AM_CPPFLAGS)
+lib569_SOURCES = lib569.c $(SUPPORTFILES)
+lib569_CPPFLAGS = $(AM_CPPFLAGS)
+lib570_SOURCES = lib570.c $(SUPPORTFILES)
+lib570_CPPFLAGS = $(AM_CPPFLAGS)
+lib571_SOURCES = lib571.c $(SUPPORTFILES) $(WARNLESS)
+lib571_CPPFLAGS = $(AM_CPPFLAGS)
+lib572_SOURCES = lib572.c $(SUPPORTFILES)
+lib572_CPPFLAGS = $(AM_CPPFLAGS)
+lib573_SOURCES = lib573.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS) $(TSTTRACE)
+lib573_LDADD = $(TESTUTIL_LIBS)
+lib573_CPPFLAGS = $(AM_CPPFLAGS)
+lib574_SOURCES = lib574.c $(SUPPORTFILES)
+lib574_CPPFLAGS = $(AM_CPPFLAGS)
+lib575_SOURCES = lib575.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib575_LDADD = $(TESTUTIL_LIBS)
+lib575_CPPFLAGS = $(AM_CPPFLAGS)
+lib576_SOURCES = lib576.c $(SUPPORTFILES)
+lib576_CPPFLAGS = $(AM_CPPFLAGS)
+lib578_SOURCES = lib578.c $(SUPPORTFILES)
+lib578_CPPFLAGS = $(AM_CPPFLAGS)
+lib579_SOURCES = lib579.c $(SUPPORTFILES)
+lib579_CPPFLAGS = $(AM_CPPFLAGS)
+lib582_SOURCES = lib582.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib582_LDADD = $(TESTUTIL_LIBS)
+lib582_CPPFLAGS = $(AM_CPPFLAGS)
+lib583_SOURCES = lib583.c $(SUPPORTFILES)
+lib583_CPPFLAGS = $(AM_CPPFLAGS)
+lib585_SOURCES = lib500.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE)
+lib585_LDADD = $(TESTUTIL_LIBS)
+lib585_CPPFLAGS = $(AM_CPPFLAGS) -DLIB585
+lib586_SOURCES = lib586.c $(SUPPORTFILES)
+lib586_CPPFLAGS = $(AM_CPPFLAGS)
+lib587_SOURCES = lib554.c $(SUPPORTFILES)
+lib587_CPPFLAGS = $(AM_CPPFLAGS) -DLIB587
+lib590_SOURCES = lib590.c $(SUPPORTFILES)
+lib590_CPPFLAGS = $(AM_CPPFLAGS)
+lib591_SOURCES = lib591.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib591_LDADD = $(TESTUTIL_LIBS)
+lib591_CPPFLAGS = $(AM_CPPFLAGS)
+lib597_SOURCES = lib597.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib597_LDADD = $(TESTUTIL_LIBS)
+lib597_CPPFLAGS = $(AM_CPPFLAGS)
+lib598_SOURCES = lib598.c $(SUPPORTFILES)
+lib598_CPPFLAGS = $(AM_CPPFLAGS)
+lib599_SOURCES = lib599.c $(SUPPORTFILES)
+lib599_CPPFLAGS = $(AM_CPPFLAGS)
+lib1500_SOURCES = lib1500.c $(SUPPORTFILES) $(TESTUTIL)
+lib1500_LDADD = $(TESTUTIL_LIBS)
+lib1500_CPPFLAGS = $(AM_CPPFLAGS)
+lib1501_SOURCES = lib1501.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1501_LDADD = $(TESTUTIL_LIBS)
+lib1501_CPPFLAGS = $(AM_CPPFLAGS)
+lib1502_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1502_LDADD = $(TESTUTIL_LIBS)
+lib1502_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1502
+lib1503_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1503_LDADD = $(TESTUTIL_LIBS)
+lib1503_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1503
+lib1504_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1504_LDADD = $(TESTUTIL_LIBS)
+lib1504_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1504
+lib1505_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1505_LDADD = $(TESTUTIL_LIBS)
+lib1505_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1505
+lib1506_SOURCES = lib1506.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1506_LDADD = $(TESTUTIL_LIBS)
+lib1506_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1506
+lib1507_SOURCES = lib1507.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1507_LDADD = $(TESTUTIL_LIBS)
+lib1507_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1507
+lib1508_SOURCES = lib1508.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1508_LDADD = $(TESTUTIL_LIBS)
+lib1508_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1508
+lib1509_SOURCES = lib1509.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1509_LDADD = $(TESTUTIL_LIBS)
+lib1509_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1509
+lib1510_SOURCES = lib1510.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1510_LDADD = $(TESTUTIL_LIBS)
+lib1510_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1510
+lib1511_SOURCES = lib1511.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1511_LDADD = $(TESTUTIL_LIBS)
+lib1511_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1511
+lib1512_SOURCES = lib1512.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1512_LDADD = $(TESTUTIL_LIBS)
+lib1512_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1512
+lib1513_SOURCES = lib1513.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1513_LDADD = $(TESTUTIL_LIBS)
+lib1513_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1513
+lib1514_SOURCES = lib1514.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1514_LDADD = $(TESTUTIL_LIBS)
+lib1514_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1514
+lib1515_SOURCES = lib1515.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1515_LDADD = $(TESTUTIL_LIBS)
+lib1515_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1515
+lib1517_SOURCES = lib1517.c $(SUPPORTFILES)
+lib1517_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1517
+lib1520_SOURCES = lib1520.c $(SUPPORTFILES)
+lib1520_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1520
+lib1521_SOURCES = lib1521.c $(SUPPORTFILES)
+lib1521_CPPFLAGS = $(AM_CPPFLAGS)
+lib1525_SOURCES = lib1525.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1525_LDADD = $(TESTUTIL_LIBS)
+lib1525_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1525
+lib1526_SOURCES = lib1526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1526_LDADD = $(TESTUTIL_LIBS)
+lib1526_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1526
+lib1527_SOURCES = lib1527.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1527_LDADD = $(TESTUTIL_LIBS)
+lib1527_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1527
+lib1528_SOURCES = lib1528.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1528_LDADD = $(TESTUTIL_LIBS)
+lib1528_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1528
+lib1529_SOURCES = lib1529.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1529_LDADD = $(TESTUTIL_LIBS)
+lib1529_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1529
+lib1530_SOURCES = lib1530.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1530_LDADD = $(TESTUTIL_LIBS)
+lib1530_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1530
+lib1531_SOURCES = lib1531.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1531_LDADD = $(TESTUTIL_LIBS)
+lib1531_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1531
+lib1532_SOURCES = lib1532.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1532_LDADD = $(TESTUTIL_LIBS)
+lib1532_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1532
+lib1533_SOURCES = lib1533.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1533_LDADD = $(TESTUTIL_LIBS)
+lib1533_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1533
+lib1534_SOURCES = lib1534.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1534_LDADD = $(TESTUTIL_LIBS)
+lib1534_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1534
+lib1535_SOURCES = lib1535.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1535_LDADD = $(TESTUTIL_LIBS)
+lib1535_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1535
+lib1536_SOURCES = lib1536.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1536_LDADD = $(TESTUTIL_LIBS)
+lib1536_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1536
+lib1537_SOURCES = lib1537.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1537_LDADD = $(TESTUTIL_LIBS)
+lib1537_CPPFLAGS = $(AM_CPPFLAGS)
+lib1538_SOURCES = lib1538.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1538_LDADD = $(TESTUTIL_LIBS)
+lib1538_CPPFLAGS = $(AM_CPPFLAGS)
+lib1540_SOURCES = lib1540.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1540_LDADD = $(TESTUTIL_LIBS)
+lib1540_CPPFLAGS = $(AM_CPPFLAGS)
+lib1541_SOURCES = lib1541.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1541_LDADD = $(TESTUTIL_LIBS)
+lib1541_CPPFLAGS = $(AM_CPPFLAGS)
+lib1900_SOURCES = lib1900.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1900_LDADD = $(TESTUTIL_LIBS)
+lib1900_CPPFLAGS = $(AM_CPPFLAGS)
+lib2033_SOURCES = libntlmconnect.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib2033_LDADD = $(TESTUTIL_LIBS)
+lib2033_CPPFLAGS = $(AM_CPPFLAGS) -DUSE_PIPELINING
+@BUILD_LIBHOSTNAME_FALSE@noinst_LTLIBRARIES = 
+
+# Makefile.inc provides the source defines (TESTUTIL, SUPPORTFILES,
+# noinst_PROGRAMS, lib*_SOURCES, and lib*_CFLAGS)
+
+# Preloading of libhostname allows host name overriding,
+# this is used to make some tests machine independent.
+@BUILD_LIBHOSTNAME_TRUE@noinst_LTLIBRARIES = libhostname.la
+AM_LDFLAGS = 
+AM_CFLAGS = 
+libhostname_la_CPPFLAGS_EXTRA = $(am__append_4)
+libhostname_la_LDFLAGS_EXTRA = -module -avoid-version -rpath /nowhere \
+	$(am__append_2) $(am__append_3)
+libhostname_la_CFLAGS_EXTRA = $(am__append_5)
+libhostname_la_CPPFLAGS = $(AM_CPPFLAGS) $(libhostname_la_CPPFLAGS_EXTRA)
+libhostname_la_LDFLAGS = $(AM_LDFLAGS) $(libhostname_la_LDFLAGS_EXTRA)
+libhostname_la_CFLAGS = $(AM_CFLAGS) $(libhostname_la_CFLAGS_EXTRA)
+libhostname_la_SOURCES = sethostname.c sethostname.h
+libhostname_la_LIBADD = 
+libhostname_la_DEPENDENCIES = 
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/libtest/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/libtest/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+$(srcdir)/Makefile.inc $(am__empty):
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstLTLIBRARIES:
+	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
+	@list='$(noinst_LTLIBRARIES)'; \
+	locs=`for p in $$list; do echo $$p; done | \
+	      sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
+	      sort -u`; \
+	test -z "$$locs" || { \
+	  echo rm -f $${locs}; \
+	  rm -f $${locs}; \
+	}
+
+libhostname.la: $(libhostname_la_OBJECTS) $(libhostname_la_DEPENDENCIES) $(EXTRA_libhostname_la_DEPENDENCIES) 
+	$(AM_V_CCLD)$(libhostname_la_LINK) $(am_libhostname_la_rpath) $(libhostname_la_OBJECTS) $(libhostname_la_LIBADD) $(LIBS)
+
+clean-noinstPROGRAMS:
+	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+	echo " rm -f" $$list; \
+	rm -f $$list || exit $$?; \
+	test -n "$(EXEEXT)" || exit 0; \
+	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+	echo " rm -f" $$list; \
+	rm -f $$list
+../../lib/$(am__dirstamp):
+	@$(MKDIR_P) ../../lib
+	@: > ../../lib/$(am__dirstamp)
+../../lib/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ../../lib/$(DEPDIR)
+	@: > ../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/chkhostname-curl_gethostname.$(OBJEXT):  \
+	../../lib/$(am__dirstamp) ../../lib/$(DEPDIR)/$(am__dirstamp)
+
+chkhostname$(EXEEXT): $(chkhostname_OBJECTS) $(chkhostname_DEPENDENCIES) $(EXTRA_chkhostname_DEPENDENCIES) 
+	@rm -f chkhostname$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(chkhostname_OBJECTS) $(chkhostname_LDADD) $(LIBS)
+
+lib1500$(EXEEXT): $(lib1500_OBJECTS) $(lib1500_DEPENDENCIES) $(EXTRA_lib1500_DEPENDENCIES) 
+	@rm -f lib1500$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1500_OBJECTS) $(lib1500_LDADD) $(LIBS)
+../../lib/lib1501-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1501$(EXEEXT): $(lib1501_OBJECTS) $(lib1501_DEPENDENCIES) $(EXTRA_lib1501_DEPENDENCIES) 
+	@rm -f lib1501$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1501_OBJECTS) $(lib1501_LDADD) $(LIBS)
+../../lib/lib1502-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1502$(EXEEXT): $(lib1502_OBJECTS) $(lib1502_DEPENDENCIES) $(EXTRA_lib1502_DEPENDENCIES) 
+	@rm -f lib1502$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1502_OBJECTS) $(lib1502_LDADD) $(LIBS)
+../../lib/lib1503-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1503$(EXEEXT): $(lib1503_OBJECTS) $(lib1503_DEPENDENCIES) $(EXTRA_lib1503_DEPENDENCIES) 
+	@rm -f lib1503$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1503_OBJECTS) $(lib1503_LDADD) $(LIBS)
+../../lib/lib1504-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1504$(EXEEXT): $(lib1504_OBJECTS) $(lib1504_DEPENDENCIES) $(EXTRA_lib1504_DEPENDENCIES) 
+	@rm -f lib1504$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1504_OBJECTS) $(lib1504_LDADD) $(LIBS)
+../../lib/lib1505-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1505$(EXEEXT): $(lib1505_OBJECTS) $(lib1505_DEPENDENCIES) $(EXTRA_lib1505_DEPENDENCIES) 
+	@rm -f lib1505$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1505_OBJECTS) $(lib1505_LDADD) $(LIBS)
+../../lib/lib1506-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1506$(EXEEXT): $(lib1506_OBJECTS) $(lib1506_DEPENDENCIES) $(EXTRA_lib1506_DEPENDENCIES) 
+	@rm -f lib1506$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1506_OBJECTS) $(lib1506_LDADD) $(LIBS)
+../../lib/lib1507-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1507$(EXEEXT): $(lib1507_OBJECTS) $(lib1507_DEPENDENCIES) $(EXTRA_lib1507_DEPENDENCIES) 
+	@rm -f lib1507$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1507_OBJECTS) $(lib1507_LDADD) $(LIBS)
+../../lib/lib1508-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1508$(EXEEXT): $(lib1508_OBJECTS) $(lib1508_DEPENDENCIES) $(EXTRA_lib1508_DEPENDENCIES) 
+	@rm -f lib1508$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1508_OBJECTS) $(lib1508_LDADD) $(LIBS)
+../../lib/lib1509-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1509$(EXEEXT): $(lib1509_OBJECTS) $(lib1509_DEPENDENCIES) $(EXTRA_lib1509_DEPENDENCIES) 
+	@rm -f lib1509$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1509_OBJECTS) $(lib1509_LDADD) $(LIBS)
+../../lib/lib1510-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1510$(EXEEXT): $(lib1510_OBJECTS) $(lib1510_DEPENDENCIES) $(EXTRA_lib1510_DEPENDENCIES) 
+	@rm -f lib1510$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1510_OBJECTS) $(lib1510_LDADD) $(LIBS)
+../../lib/lib1511-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1511$(EXEEXT): $(lib1511_OBJECTS) $(lib1511_DEPENDENCIES) $(EXTRA_lib1511_DEPENDENCIES) 
+	@rm -f lib1511$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1511_OBJECTS) $(lib1511_LDADD) $(LIBS)
+../../lib/lib1512-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1512$(EXEEXT): $(lib1512_OBJECTS) $(lib1512_DEPENDENCIES) $(EXTRA_lib1512_DEPENDENCIES) 
+	@rm -f lib1512$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1512_OBJECTS) $(lib1512_LDADD) $(LIBS)
+../../lib/lib1513-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1513$(EXEEXT): $(lib1513_OBJECTS) $(lib1513_DEPENDENCIES) $(EXTRA_lib1513_DEPENDENCIES) 
+	@rm -f lib1513$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1513_OBJECTS) $(lib1513_LDADD) $(LIBS)
+../../lib/lib1514-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1514$(EXEEXT): $(lib1514_OBJECTS) $(lib1514_DEPENDENCIES) $(EXTRA_lib1514_DEPENDENCIES) 
+	@rm -f lib1514$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1514_OBJECTS) $(lib1514_LDADD) $(LIBS)
+../../lib/lib1515-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1515$(EXEEXT): $(lib1515_OBJECTS) $(lib1515_DEPENDENCIES) $(EXTRA_lib1515_DEPENDENCIES) 
+	@rm -f lib1515$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1515_OBJECTS) $(lib1515_LDADD) $(LIBS)
+
+lib1517$(EXEEXT): $(lib1517_OBJECTS) $(lib1517_DEPENDENCIES) $(EXTRA_lib1517_DEPENDENCIES) 
+	@rm -f lib1517$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1517_OBJECTS) $(lib1517_LDADD) $(LIBS)
+
+lib1520$(EXEEXT): $(lib1520_OBJECTS) $(lib1520_DEPENDENCIES) $(EXTRA_lib1520_DEPENDENCIES) 
+	@rm -f lib1520$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1520_OBJECTS) $(lib1520_LDADD) $(LIBS)
+
+lib1521$(EXEEXT): $(lib1521_OBJECTS) $(lib1521_DEPENDENCIES) $(EXTRA_lib1521_DEPENDENCIES) 
+	@rm -f lib1521$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1521_OBJECTS) $(lib1521_LDADD) $(LIBS)
+../../lib/lib1525-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1525$(EXEEXT): $(lib1525_OBJECTS) $(lib1525_DEPENDENCIES) $(EXTRA_lib1525_DEPENDENCIES) 
+	@rm -f lib1525$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1525_OBJECTS) $(lib1525_LDADD) $(LIBS)
+../../lib/lib1526-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1526$(EXEEXT): $(lib1526_OBJECTS) $(lib1526_DEPENDENCIES) $(EXTRA_lib1526_DEPENDENCIES) 
+	@rm -f lib1526$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1526_OBJECTS) $(lib1526_LDADD) $(LIBS)
+../../lib/lib1527-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1527$(EXEEXT): $(lib1527_OBJECTS) $(lib1527_DEPENDENCIES) $(EXTRA_lib1527_DEPENDENCIES) 
+	@rm -f lib1527$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1527_OBJECTS) $(lib1527_LDADD) $(LIBS)
+../../lib/lib1528-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1528$(EXEEXT): $(lib1528_OBJECTS) $(lib1528_DEPENDENCIES) $(EXTRA_lib1528_DEPENDENCIES) 
+	@rm -f lib1528$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1528_OBJECTS) $(lib1528_LDADD) $(LIBS)
+../../lib/lib1529-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1529$(EXEEXT): $(lib1529_OBJECTS) $(lib1529_DEPENDENCIES) $(EXTRA_lib1529_DEPENDENCIES) 
+	@rm -f lib1529$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1529_OBJECTS) $(lib1529_LDADD) $(LIBS)
+../../lib/lib1530-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1530$(EXEEXT): $(lib1530_OBJECTS) $(lib1530_DEPENDENCIES) $(EXTRA_lib1530_DEPENDENCIES) 
+	@rm -f lib1530$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1530_OBJECTS) $(lib1530_LDADD) $(LIBS)
+../../lib/lib1531-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1531$(EXEEXT): $(lib1531_OBJECTS) $(lib1531_DEPENDENCIES) $(EXTRA_lib1531_DEPENDENCIES) 
+	@rm -f lib1531$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1531_OBJECTS) $(lib1531_LDADD) $(LIBS)
+../../lib/lib1532-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1532$(EXEEXT): $(lib1532_OBJECTS) $(lib1532_DEPENDENCIES) $(EXTRA_lib1532_DEPENDENCIES) 
+	@rm -f lib1532$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1532_OBJECTS) $(lib1532_LDADD) $(LIBS)
+../../lib/lib1533-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1533$(EXEEXT): $(lib1533_OBJECTS) $(lib1533_DEPENDENCIES) $(EXTRA_lib1533_DEPENDENCIES) 
+	@rm -f lib1533$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1533_OBJECTS) $(lib1533_LDADD) $(LIBS)
+../../lib/lib1534-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1534$(EXEEXT): $(lib1534_OBJECTS) $(lib1534_DEPENDENCIES) $(EXTRA_lib1534_DEPENDENCIES) 
+	@rm -f lib1534$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1534_OBJECTS) $(lib1534_LDADD) $(LIBS)
+../../lib/lib1535-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1535$(EXEEXT): $(lib1535_OBJECTS) $(lib1535_DEPENDENCIES) $(EXTRA_lib1535_DEPENDENCIES) 
+	@rm -f lib1535$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1535_OBJECTS) $(lib1535_LDADD) $(LIBS)
+../../lib/lib1536-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1536$(EXEEXT): $(lib1536_OBJECTS) $(lib1536_DEPENDENCIES) $(EXTRA_lib1536_DEPENDENCIES) 
+	@rm -f lib1536$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1536_OBJECTS) $(lib1536_LDADD) $(LIBS)
+../../lib/lib1537-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1537$(EXEEXT): $(lib1537_OBJECTS) $(lib1537_DEPENDENCIES) $(EXTRA_lib1537_DEPENDENCIES) 
+	@rm -f lib1537$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1537_OBJECTS) $(lib1537_LDADD) $(LIBS)
+../../lib/lib1538-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1538$(EXEEXT): $(lib1538_OBJECTS) $(lib1538_DEPENDENCIES) $(EXTRA_lib1538_DEPENDENCIES) 
+	@rm -f lib1538$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1538_OBJECTS) $(lib1538_LDADD) $(LIBS)
+../../lib/lib1540-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1540$(EXEEXT): $(lib1540_OBJECTS) $(lib1540_DEPENDENCIES) $(EXTRA_lib1540_DEPENDENCIES) 
+	@rm -f lib1540$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1540_OBJECTS) $(lib1540_LDADD) $(LIBS)
+../../lib/lib1541-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1541$(EXEEXT): $(lib1541_OBJECTS) $(lib1541_DEPENDENCIES) $(EXTRA_lib1541_DEPENDENCIES) 
+	@rm -f lib1541$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1541_OBJECTS) $(lib1541_LDADD) $(LIBS)
+../../lib/lib1900-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib1900$(EXEEXT): $(lib1900_OBJECTS) $(lib1900_DEPENDENCIES) $(EXTRA_lib1900_DEPENDENCIES) 
+	@rm -f lib1900$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib1900_OBJECTS) $(lib1900_LDADD) $(LIBS)
+../../lib/lib2033-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib2033$(EXEEXT): $(lib2033_OBJECTS) $(lib2033_DEPENDENCIES) $(EXTRA_lib2033_DEPENDENCIES) 
+	@rm -f lib2033$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib2033_OBJECTS) $(lib2033_LDADD) $(LIBS)
+
+lib500$(EXEEXT): $(lib500_OBJECTS) $(lib500_DEPENDENCIES) $(EXTRA_lib500_DEPENDENCIES) 
+	@rm -f lib500$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib500_OBJECTS) $(lib500_LDADD) $(LIBS)
+
+lib501$(EXEEXT): $(lib501_OBJECTS) $(lib501_DEPENDENCIES) $(EXTRA_lib501_DEPENDENCIES) 
+	@rm -f lib501$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib501_OBJECTS) $(lib501_LDADD) $(LIBS)
+../../lib/lib502-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib502$(EXEEXT): $(lib502_OBJECTS) $(lib502_DEPENDENCIES) $(EXTRA_lib502_DEPENDENCIES) 
+	@rm -f lib502$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib502_OBJECTS) $(lib502_LDADD) $(LIBS)
+../../lib/lib503-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib503$(EXEEXT): $(lib503_OBJECTS) $(lib503_DEPENDENCIES) $(EXTRA_lib503_DEPENDENCIES) 
+	@rm -f lib503$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib503_OBJECTS) $(lib503_LDADD) $(LIBS)
+../../lib/lib504-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib504$(EXEEXT): $(lib504_OBJECTS) $(lib504_DEPENDENCIES) $(EXTRA_lib504_DEPENDENCIES) 
+	@rm -f lib504$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib504_OBJECTS) $(lib504_LDADD) $(LIBS)
+
+lib505$(EXEEXT): $(lib505_OBJECTS) $(lib505_DEPENDENCIES) $(EXTRA_lib505_DEPENDENCIES) 
+	@rm -f lib505$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib505_OBJECTS) $(lib505_LDADD) $(LIBS)
+
+lib506$(EXEEXT): $(lib506_OBJECTS) $(lib506_DEPENDENCIES) $(EXTRA_lib506_DEPENDENCIES) 
+	@rm -f lib506$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib506_OBJECTS) $(lib506_LDADD) $(LIBS)
+../../lib/lib507-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib507$(EXEEXT): $(lib507_OBJECTS) $(lib507_DEPENDENCIES) $(EXTRA_lib507_DEPENDENCIES) 
+	@rm -f lib507$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib507_OBJECTS) $(lib507_LDADD) $(LIBS)
+
+lib508$(EXEEXT): $(lib508_OBJECTS) $(lib508_DEPENDENCIES) $(EXTRA_lib508_DEPENDENCIES) 
+	@rm -f lib508$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib508_OBJECTS) $(lib508_LDADD) $(LIBS)
+
+lib509$(EXEEXT): $(lib509_OBJECTS) $(lib509_DEPENDENCIES) $(EXTRA_lib509_DEPENDENCIES) 
+	@rm -f lib509$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib509_OBJECTS) $(lib509_LDADD) $(LIBS)
+
+lib510$(EXEEXT): $(lib510_OBJECTS) $(lib510_DEPENDENCIES) $(EXTRA_lib510_DEPENDENCIES) 
+	@rm -f lib510$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib510_OBJECTS) $(lib510_LDADD) $(LIBS)
+
+lib511$(EXEEXT): $(lib511_OBJECTS) $(lib511_DEPENDENCIES) $(EXTRA_lib511_DEPENDENCIES) 
+	@rm -f lib511$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib511_OBJECTS) $(lib511_LDADD) $(LIBS)
+
+lib512$(EXEEXT): $(lib512_OBJECTS) $(lib512_DEPENDENCIES) $(EXTRA_lib512_DEPENDENCIES) 
+	@rm -f lib512$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib512_OBJECTS) $(lib512_LDADD) $(LIBS)
+
+lib513$(EXEEXT): $(lib513_OBJECTS) $(lib513_DEPENDENCIES) $(EXTRA_lib513_DEPENDENCIES) 
+	@rm -f lib513$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib513_OBJECTS) $(lib513_LDADD) $(LIBS)
+
+lib514$(EXEEXT): $(lib514_OBJECTS) $(lib514_DEPENDENCIES) $(EXTRA_lib514_DEPENDENCIES) 
+	@rm -f lib514$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib514_OBJECTS) $(lib514_LDADD) $(LIBS)
+
+lib515$(EXEEXT): $(lib515_OBJECTS) $(lib515_DEPENDENCIES) $(EXTRA_lib515_DEPENDENCIES) 
+	@rm -f lib515$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib515_OBJECTS) $(lib515_LDADD) $(LIBS)
+
+lib516$(EXEEXT): $(lib516_OBJECTS) $(lib516_DEPENDENCIES) $(EXTRA_lib516_DEPENDENCIES) 
+	@rm -f lib516$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib516_OBJECTS) $(lib516_LDADD) $(LIBS)
+
+lib517$(EXEEXT): $(lib517_OBJECTS) $(lib517_DEPENDENCIES) $(EXTRA_lib517_DEPENDENCIES) 
+	@rm -f lib517$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib517_OBJECTS) $(lib517_LDADD) $(LIBS)
+../../lib/lib518-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib518$(EXEEXT): $(lib518_OBJECTS) $(lib518_DEPENDENCIES) $(EXTRA_lib518_DEPENDENCIES) 
+	@rm -f lib518$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib518_OBJECTS) $(lib518_LDADD) $(LIBS)
+
+lib519$(EXEEXT): $(lib519_OBJECTS) $(lib519_DEPENDENCIES) $(EXTRA_lib519_DEPENDENCIES) 
+	@rm -f lib519$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib519_OBJECTS) $(lib519_LDADD) $(LIBS)
+
+lib520$(EXEEXT): $(lib520_OBJECTS) $(lib520_DEPENDENCIES) $(EXTRA_lib520_DEPENDENCIES) 
+	@rm -f lib520$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib520_OBJECTS) $(lib520_LDADD) $(LIBS)
+
+lib521$(EXEEXT): $(lib521_OBJECTS) $(lib521_DEPENDENCIES) $(EXTRA_lib521_DEPENDENCIES) 
+	@rm -f lib521$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib521_OBJECTS) $(lib521_LDADD) $(LIBS)
+
+lib523$(EXEEXT): $(lib523_OBJECTS) $(lib523_DEPENDENCIES) $(EXTRA_lib523_DEPENDENCIES) 
+	@rm -f lib523$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib523_OBJECTS) $(lib523_LDADD) $(LIBS)
+
+lib524$(EXEEXT): $(lib524_OBJECTS) $(lib524_DEPENDENCIES) $(EXTRA_lib524_DEPENDENCIES) 
+	@rm -f lib524$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib524_OBJECTS) $(lib524_LDADD) $(LIBS)
+../../lib/lib525-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib525$(EXEEXT): $(lib525_OBJECTS) $(lib525_DEPENDENCIES) $(EXTRA_lib525_DEPENDENCIES) 
+	@rm -f lib525$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib525_OBJECTS) $(lib525_LDADD) $(LIBS)
+../../lib/lib526-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib526$(EXEEXT): $(lib526_OBJECTS) $(lib526_DEPENDENCIES) $(EXTRA_lib526_DEPENDENCIES) 
+	@rm -f lib526$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib526_OBJECTS) $(lib526_LDADD) $(LIBS)
+../../lib/lib527-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib527$(EXEEXT): $(lib527_OBJECTS) $(lib527_DEPENDENCIES) $(EXTRA_lib527_DEPENDENCIES) 
+	@rm -f lib527$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib527_OBJECTS) $(lib527_LDADD) $(LIBS)
+../../lib/lib529-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib529$(EXEEXT): $(lib529_OBJECTS) $(lib529_DEPENDENCIES) $(EXTRA_lib529_DEPENDENCIES) 
+	@rm -f lib529$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib529_OBJECTS) $(lib529_LDADD) $(LIBS)
+../../lib/lib530-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib530$(EXEEXT): $(lib530_OBJECTS) $(lib530_DEPENDENCIES) $(EXTRA_lib530_DEPENDENCIES) 
+	@rm -f lib530$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib530_OBJECTS) $(lib530_LDADD) $(LIBS)
+../../lib/lib532-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib532$(EXEEXT): $(lib532_OBJECTS) $(lib532_DEPENDENCIES) $(EXTRA_lib532_DEPENDENCIES) 
+	@rm -f lib532$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib532_OBJECTS) $(lib532_LDADD) $(LIBS)
+../../lib/lib533-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib533$(EXEEXT): $(lib533_OBJECTS) $(lib533_DEPENDENCIES) $(EXTRA_lib533_DEPENDENCIES) 
+	@rm -f lib533$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib533_OBJECTS) $(lib533_LDADD) $(LIBS)
+../../lib/lib536-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib536$(EXEEXT): $(lib536_OBJECTS) $(lib536_DEPENDENCIES) $(EXTRA_lib536_DEPENDENCIES) 
+	@rm -f lib536$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib536_OBJECTS) $(lib536_LDADD) $(LIBS)
+../../lib/lib537-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib537$(EXEEXT): $(lib537_OBJECTS) $(lib537_DEPENDENCIES) $(EXTRA_lib537_DEPENDENCIES) 
+	@rm -f lib537$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib537_OBJECTS) $(lib537_LDADD) $(LIBS)
+
+lib539$(EXEEXT): $(lib539_OBJECTS) $(lib539_DEPENDENCIES) $(EXTRA_lib539_DEPENDENCIES) 
+	@rm -f lib539$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib539_OBJECTS) $(lib539_LDADD) $(LIBS)
+../../lib/lib540-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib540$(EXEEXT): $(lib540_OBJECTS) $(lib540_DEPENDENCIES) $(EXTRA_lib540_DEPENDENCIES) 
+	@rm -f lib540$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib540_OBJECTS) $(lib540_LDADD) $(LIBS)
+
+lib541$(EXEEXT): $(lib541_OBJECTS) $(lib541_DEPENDENCIES) $(EXTRA_lib541_DEPENDENCIES) 
+	@rm -f lib541$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib541_OBJECTS) $(lib541_LDADD) $(LIBS)
+
+lib542$(EXEEXT): $(lib542_OBJECTS) $(lib542_DEPENDENCIES) $(EXTRA_lib542_DEPENDENCIES) 
+	@rm -f lib542$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib542_OBJECTS) $(lib542_LDADD) $(LIBS)
+
+lib543$(EXEEXT): $(lib543_OBJECTS) $(lib543_DEPENDENCIES) $(EXTRA_lib543_DEPENDENCIES) 
+	@rm -f lib543$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib543_OBJECTS) $(lib543_LDADD) $(LIBS)
+
+lib544$(EXEEXT): $(lib544_OBJECTS) $(lib544_DEPENDENCIES) $(EXTRA_lib544_DEPENDENCIES) 
+	@rm -f lib544$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib544_OBJECTS) $(lib544_LDADD) $(LIBS)
+
+lib545$(EXEEXT): $(lib545_OBJECTS) $(lib545_DEPENDENCIES) $(EXTRA_lib545_DEPENDENCIES) 
+	@rm -f lib545$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib545_OBJECTS) $(lib545_LDADD) $(LIBS)
+
+lib547$(EXEEXT): $(lib547_OBJECTS) $(lib547_DEPENDENCIES) $(EXTRA_lib547_DEPENDENCIES) 
+	@rm -f lib547$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib547_OBJECTS) $(lib547_LDADD) $(LIBS)
+
+lib548$(EXEEXT): $(lib548_OBJECTS) $(lib548_DEPENDENCIES) $(EXTRA_lib548_DEPENDENCIES) 
+	@rm -f lib548$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib548_OBJECTS) $(lib548_LDADD) $(LIBS)
+
+lib549$(EXEEXT): $(lib549_OBJECTS) $(lib549_DEPENDENCIES) $(EXTRA_lib549_DEPENDENCIES) 
+	@rm -f lib549$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib549_OBJECTS) $(lib549_LDADD) $(LIBS)
+../../lib/lib552-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib552$(EXEEXT): $(lib552_OBJECTS) $(lib552_DEPENDENCIES) $(EXTRA_lib552_DEPENDENCIES) 
+	@rm -f lib552$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib552_OBJECTS) $(lib552_LDADD) $(LIBS)
+
+lib553$(EXEEXT): $(lib553_OBJECTS) $(lib553_DEPENDENCIES) $(EXTRA_lib553_DEPENDENCIES) 
+	@rm -f lib553$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib553_OBJECTS) $(lib553_LDADD) $(LIBS)
+
+lib554$(EXEEXT): $(lib554_OBJECTS) $(lib554_DEPENDENCIES) $(EXTRA_lib554_DEPENDENCIES) 
+	@rm -f lib554$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib554_OBJECTS) $(lib554_LDADD) $(LIBS)
+../../lib/lib555-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib555$(EXEEXT): $(lib555_OBJECTS) $(lib555_DEPENDENCIES) $(EXTRA_lib555_DEPENDENCIES) 
+	@rm -f lib555$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib555_OBJECTS) $(lib555_LDADD) $(LIBS)
+../../lib/lib556-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib556$(EXEEXT): $(lib556_OBJECTS) $(lib556_DEPENDENCIES) $(EXTRA_lib556_DEPENDENCIES) 
+	@rm -f lib556$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib556_OBJECTS) $(lib556_LDADD) $(LIBS)
+
+lib557$(EXEEXT): $(lib557_OBJECTS) $(lib557_DEPENDENCIES) $(EXTRA_lib557_DEPENDENCIES) 
+	@rm -f lib557$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib557_OBJECTS) $(lib557_LDADD) $(LIBS)
+
+lib558$(EXEEXT): $(lib558_OBJECTS) $(lib558_DEPENDENCIES) $(EXTRA_lib558_DEPENDENCIES) 
+	@rm -f lib558$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib558_OBJECTS) $(lib558_LDADD) $(LIBS)
+
+lib559$(EXEEXT): $(lib559_OBJECTS) $(lib559_DEPENDENCIES) $(EXTRA_lib559_DEPENDENCIES) 
+	@rm -f lib559$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib559_OBJECTS) $(lib559_LDADD) $(LIBS)
+../../lib/lib560-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib560$(EXEEXT): $(lib560_OBJECTS) $(lib560_DEPENDENCIES) $(EXTRA_lib560_DEPENDENCIES) 
+	@rm -f lib560$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib560_OBJECTS) $(lib560_LDADD) $(LIBS)
+
+lib562$(EXEEXT): $(lib562_OBJECTS) $(lib562_DEPENDENCIES) $(EXTRA_lib562_DEPENDENCIES) 
+	@rm -f lib562$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib562_OBJECTS) $(lib562_LDADD) $(LIBS)
+../../lib/lib564-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib564$(EXEEXT): $(lib564_OBJECTS) $(lib564_DEPENDENCIES) $(EXTRA_lib564_DEPENDENCIES) 
+	@rm -f lib564$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib564_OBJECTS) $(lib564_LDADD) $(LIBS)
+
+lib565$(EXEEXT): $(lib565_OBJECTS) $(lib565_DEPENDENCIES) $(EXTRA_lib565_DEPENDENCIES) 
+	@rm -f lib565$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib565_OBJECTS) $(lib565_LDADD) $(LIBS)
+
+lib566$(EXEEXT): $(lib566_OBJECTS) $(lib566_DEPENDENCIES) $(EXTRA_lib566_DEPENDENCIES) 
+	@rm -f lib566$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib566_OBJECTS) $(lib566_LDADD) $(LIBS)
+
+lib567$(EXEEXT): $(lib567_OBJECTS) $(lib567_DEPENDENCIES) $(EXTRA_lib567_DEPENDENCIES) 
+	@rm -f lib567$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib567_OBJECTS) $(lib567_LDADD) $(LIBS)
+
+lib568$(EXEEXT): $(lib568_OBJECTS) $(lib568_DEPENDENCIES) $(EXTRA_lib568_DEPENDENCIES) 
+	@rm -f lib568$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib568_OBJECTS) $(lib568_LDADD) $(LIBS)
+
+lib569$(EXEEXT): $(lib569_OBJECTS) $(lib569_DEPENDENCIES) $(EXTRA_lib569_DEPENDENCIES) 
+	@rm -f lib569$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib569_OBJECTS) $(lib569_LDADD) $(LIBS)
+
+lib570$(EXEEXT): $(lib570_OBJECTS) $(lib570_DEPENDENCIES) $(EXTRA_lib570_DEPENDENCIES) 
+	@rm -f lib570$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib570_OBJECTS) $(lib570_LDADD) $(LIBS)
+../../lib/lib571-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib571$(EXEEXT): $(lib571_OBJECTS) $(lib571_DEPENDENCIES) $(EXTRA_lib571_DEPENDENCIES) 
+	@rm -f lib571$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib571_OBJECTS) $(lib571_LDADD) $(LIBS)
+
+lib572$(EXEEXT): $(lib572_OBJECTS) $(lib572_DEPENDENCIES) $(EXTRA_lib572_DEPENDENCIES) 
+	@rm -f lib572$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib572_OBJECTS) $(lib572_LDADD) $(LIBS)
+../../lib/lib573-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib573$(EXEEXT): $(lib573_OBJECTS) $(lib573_DEPENDENCIES) $(EXTRA_lib573_DEPENDENCIES) 
+	@rm -f lib573$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib573_OBJECTS) $(lib573_LDADD) $(LIBS)
+
+lib574$(EXEEXT): $(lib574_OBJECTS) $(lib574_DEPENDENCIES) $(EXTRA_lib574_DEPENDENCIES) 
+	@rm -f lib574$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib574_OBJECTS) $(lib574_LDADD) $(LIBS)
+../../lib/lib575-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib575$(EXEEXT): $(lib575_OBJECTS) $(lib575_DEPENDENCIES) $(EXTRA_lib575_DEPENDENCIES) 
+	@rm -f lib575$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib575_OBJECTS) $(lib575_LDADD) $(LIBS)
+
+lib576$(EXEEXT): $(lib576_OBJECTS) $(lib576_DEPENDENCIES) $(EXTRA_lib576_DEPENDENCIES) 
+	@rm -f lib576$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib576_OBJECTS) $(lib576_LDADD) $(LIBS)
+
+lib578$(EXEEXT): $(lib578_OBJECTS) $(lib578_DEPENDENCIES) $(EXTRA_lib578_DEPENDENCIES) 
+	@rm -f lib578$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib578_OBJECTS) $(lib578_LDADD) $(LIBS)
+
+lib579$(EXEEXT): $(lib579_OBJECTS) $(lib579_DEPENDENCIES) $(EXTRA_lib579_DEPENDENCIES) 
+	@rm -f lib579$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib579_OBJECTS) $(lib579_LDADD) $(LIBS)
+../../lib/lib582-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib582$(EXEEXT): $(lib582_OBJECTS) $(lib582_DEPENDENCIES) $(EXTRA_lib582_DEPENDENCIES) 
+	@rm -f lib582$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib582_OBJECTS) $(lib582_LDADD) $(LIBS)
+
+lib583$(EXEEXT): $(lib583_OBJECTS) $(lib583_DEPENDENCIES) $(EXTRA_lib583_DEPENDENCIES) 
+	@rm -f lib583$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib583_OBJECTS) $(lib583_LDADD) $(LIBS)
+
+lib585$(EXEEXT): $(lib585_OBJECTS) $(lib585_DEPENDENCIES) $(EXTRA_lib585_DEPENDENCIES) 
+	@rm -f lib585$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib585_OBJECTS) $(lib585_LDADD) $(LIBS)
+
+lib586$(EXEEXT): $(lib586_OBJECTS) $(lib586_DEPENDENCIES) $(EXTRA_lib586_DEPENDENCIES) 
+	@rm -f lib586$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib586_OBJECTS) $(lib586_LDADD) $(LIBS)
+
+lib587$(EXEEXT): $(lib587_OBJECTS) $(lib587_DEPENDENCIES) $(EXTRA_lib587_DEPENDENCIES) 
+	@rm -f lib587$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib587_OBJECTS) $(lib587_LDADD) $(LIBS)
+
+lib590$(EXEEXT): $(lib590_OBJECTS) $(lib590_DEPENDENCIES) $(EXTRA_lib590_DEPENDENCIES) 
+	@rm -f lib590$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib590_OBJECTS) $(lib590_LDADD) $(LIBS)
+../../lib/lib591-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib591$(EXEEXT): $(lib591_OBJECTS) $(lib591_DEPENDENCIES) $(EXTRA_lib591_DEPENDENCIES) 
+	@rm -f lib591$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib591_OBJECTS) $(lib591_LDADD) $(LIBS)
+../../lib/lib597-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+lib597$(EXEEXT): $(lib597_OBJECTS) $(lib597_DEPENDENCIES) $(EXTRA_lib597_DEPENDENCIES) 
+	@rm -f lib597$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib597_OBJECTS) $(lib597_LDADD) $(LIBS)
+
+lib598$(EXEEXT): $(lib598_OBJECTS) $(lib598_DEPENDENCIES) $(EXTRA_lib598_DEPENDENCIES) 
+	@rm -f lib598$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib598_OBJECTS) $(lib598_LDADD) $(LIBS)
+
+lib599$(EXEEXT): $(lib599_OBJECTS) $(lib599_DEPENDENCIES) $(EXTRA_lib599_DEPENDENCIES) 
+	@rm -f lib599$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(lib599_OBJECTS) $(lib599_LDADD) $(LIBS)
+
+libauthretry$(EXEEXT): $(libauthretry_OBJECTS) $(libauthretry_DEPENDENCIES) $(EXTRA_libauthretry_DEPENDENCIES) 
+	@rm -f libauthretry$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(libauthretry_OBJECTS) $(libauthretry_LDADD) $(LIBS)
+../../lib/libntlmconnect-warnless.$(OBJEXT):  \
+	../../lib/$(am__dirstamp) ../../lib/$(DEPDIR)/$(am__dirstamp)
+
+libntlmconnect$(EXEEXT): $(libntlmconnect_OBJECTS) $(libntlmconnect_DEPENDENCIES) $(EXTRA_libntlmconnect_DEPENDENCIES) 
+	@rm -f libntlmconnect$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(libntlmconnect_OBJECTS) $(libntlmconnect_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+	-rm -f ../../lib/*.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1501-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1502-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1503-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1504-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1505-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1506-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1507-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1508-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1509-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1510-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1511-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1512-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1513-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1514-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1515-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1525-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1526-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1527-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1528-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1529-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1530-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1531-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1532-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1533-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1534-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1535-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1536-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1537-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1538-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1540-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1541-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1900-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib2033-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib502-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib503-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib504-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib507-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib518-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib525-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib526-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib527-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib529-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib530-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib532-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib533-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib536-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib537-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib540-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib552-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib555-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib556-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib560-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib564-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib571-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib573-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib575-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib582-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib591-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib597-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/libntlmconnect-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chkhostname-chkhostname.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1500-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1500-lib1500.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1500-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1501-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1501-lib1501.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1501-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1502-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1502-lib1502.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1502-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1503-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1503-lib1502.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1503-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1504-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1504-lib1502.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1504-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1505-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1505-lib1502.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1505-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1506-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1506-lib1506.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1506-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1507-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1507-lib1507.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1507-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1508-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1508-lib1508.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1508-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1509-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1509-lib1509.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1509-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1510-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1510-lib1510.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1510-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1511-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1511-lib1511.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1511-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1512-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1512-lib1512.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1512-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1513-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1513-lib1513.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1513-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1514-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1514-lib1514.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1514-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1515-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1515-lib1515.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1515-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1517-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1517-lib1517.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1520-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1520-lib1520.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1521-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1521-lib1521.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1525-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1525-lib1525.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1525-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1526-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1526-lib1526.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1526-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1527-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1527-lib1527.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1527-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1528-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1528-lib1528.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1528-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1529-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1529-lib1529.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1529-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1530-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1530-lib1530.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1530-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1531-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1531-lib1531.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1531-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1532-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1532-lib1532.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1532-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1533-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1533-lib1533.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1533-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1534-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1534-lib1534.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1534-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1535-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1535-lib1535.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1535-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1536-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1536-lib1536.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1536-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1537-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1537-lib1537.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1537-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1538-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1538-lib1538.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1538-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1540-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1540-lib1540.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1540-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1541-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1541-lib1541.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1541-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1900-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1900-lib1900.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1900-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib2033-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib2033-libntlmconnect.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib2033-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib500-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib500-lib500.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib500-testtrace.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib500-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib501-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib501-lib501.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib502-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib502-lib502.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib502-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib503-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib503-lib503.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib503-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib504-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib504-lib504.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib504-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib505-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib505-lib505.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib506-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib506-lib506.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib507-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib507-lib507.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib507-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib508-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib508-lib508.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib509-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib509-lib509.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib510-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib510-lib510.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib511-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib511-lib511.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib512-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib512-lib512.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib513-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib513-lib513.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib514-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib514-lib514.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib515-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib515-lib515.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib516-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib516-lib516.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib517-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib517-lib517.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib518-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib518-lib518.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib519-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib519-lib519.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib520-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib520-lib520.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib521-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib521-lib521.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib523-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib523-lib523.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib524-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib524-lib524.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib525-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib525-lib525.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib525-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib526-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib526-lib526.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib526-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib527-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib527-lib526.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib527-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib529-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib529-lib525.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib529-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib530-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib530-lib530.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib530-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib532-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib532-lib526.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib532-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib533-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib533-lib533.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib533-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib536-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib536-lib536.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib536-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib537-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib537-lib537.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib539-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib539-lib539.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib540-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib540-lib540.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib540-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib541-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib541-lib541.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib542-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib542-lib542.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib543-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib543-lib543.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib544-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib544-lib544.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib545-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib545-lib544.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib547-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib547-lib547.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib548-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib548-lib547.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib549-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib549-lib549.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib552-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib552-lib552.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib553-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib553-lib553.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib554-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib554-lib554.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib555-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib555-lib555.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib555-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib556-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib556-lib556.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib557-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib557-lib557.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib558-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib558-lib558.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib559-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib559-lib559.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib560-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib560-lib560.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib560-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib562-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib562-lib562.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib564-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib564-lib564.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib564-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib565-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib565-lib510.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib566-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib566-lib566.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib567-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib567-lib567.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib568-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib568-lib568.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib569-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib569-lib569.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib570-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib570-lib570.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib571-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib571-lib571.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib572-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib572-lib572.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib573-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib573-lib573.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib573-testtrace.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib573-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib574-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib574-lib574.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib575-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib575-lib575.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib575-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib576-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib576-lib576.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib578-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib578-lib578.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib579-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib579-lib579.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib582-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib582-lib582.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib582-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib583-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib583-lib583.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib585-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib585-lib500.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib585-testtrace.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib585-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib586-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib586-lib586.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib587-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib587-lib554.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib590-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib590-lib590.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib591-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib591-lib591.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib591-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib597-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib597-lib597.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib597-testutil.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib598-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib598-lib598.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib599-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib599-lib599.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libauthretry-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libauthretry-libauthretry.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libhostname_la-sethostname.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libntlmconnect-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libntlmconnect-libntlmconnect.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libntlmconnect-testutil.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+
+.c.obj:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+
+libhostname_la-sethostname.lo: sethostname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhostname_la_CPPFLAGS) $(CPPFLAGS) $(libhostname_la_CFLAGS) $(CFLAGS) -MT libhostname_la-sethostname.lo -MD -MP -MF $(DEPDIR)/libhostname_la-sethostname.Tpo -c -o libhostname_la-sethostname.lo `test -f 'sethostname.c' || echo '$(srcdir)/'`sethostname.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libhostname_la-sethostname.Tpo $(DEPDIR)/libhostname_la-sethostname.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sethostname.c' object='libhostname_la-sethostname.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libhostname_la_CPPFLAGS) $(CPPFLAGS) $(libhostname_la_CFLAGS) $(CFLAGS) -c -o libhostname_la-sethostname.lo `test -f 'sethostname.c' || echo '$(srcdir)/'`sethostname.c
+
+chkhostname-chkhostname.o: chkhostname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT chkhostname-chkhostname.o -MD -MP -MF $(DEPDIR)/chkhostname-chkhostname.Tpo -c -o chkhostname-chkhostname.o `test -f 'chkhostname.c' || echo '$(srcdir)/'`chkhostname.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/chkhostname-chkhostname.Tpo $(DEPDIR)/chkhostname-chkhostname.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='chkhostname.c' object='chkhostname-chkhostname.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o chkhostname-chkhostname.o `test -f 'chkhostname.c' || echo '$(srcdir)/'`chkhostname.c
+
+chkhostname-chkhostname.obj: chkhostname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT chkhostname-chkhostname.obj -MD -MP -MF $(DEPDIR)/chkhostname-chkhostname.Tpo -c -o chkhostname-chkhostname.obj `if test -f 'chkhostname.c'; then $(CYGPATH_W) 'chkhostname.c'; else $(CYGPATH_W) '$(srcdir)/chkhostname.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/chkhostname-chkhostname.Tpo $(DEPDIR)/chkhostname-chkhostname.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='chkhostname.c' object='chkhostname-chkhostname.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o chkhostname-chkhostname.obj `if test -f 'chkhostname.c'; then $(CYGPATH_W) 'chkhostname.c'; else $(CYGPATH_W) '$(srcdir)/chkhostname.c'; fi`
+
+../../lib/chkhostname-curl_gethostname.o: ../../lib/curl_gethostname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/chkhostname-curl_gethostname.o -MD -MP -MF ../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Tpo -c -o ../../lib/chkhostname-curl_gethostname.o `test -f '../../lib/curl_gethostname.c' || echo '$(srcdir)/'`../../lib/curl_gethostname.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Tpo ../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/curl_gethostname.c' object='../../lib/chkhostname-curl_gethostname.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/chkhostname-curl_gethostname.o `test -f '../../lib/curl_gethostname.c' || echo '$(srcdir)/'`../../lib/curl_gethostname.c
+
+../../lib/chkhostname-curl_gethostname.obj: ../../lib/curl_gethostname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/chkhostname-curl_gethostname.obj -MD -MP -MF ../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Tpo -c -o ../../lib/chkhostname-curl_gethostname.obj `if test -f '../../lib/curl_gethostname.c'; then $(CYGPATH_W) '../../lib/curl_gethostname.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/curl_gethostname.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Tpo ../../lib/$(DEPDIR)/chkhostname-curl_gethostname.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/curl_gethostname.c' object='../../lib/chkhostname-curl_gethostname.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chkhostname_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/chkhostname-curl_gethostname.obj `if test -f '../../lib/curl_gethostname.c'; then $(CYGPATH_W) '../../lib/curl_gethostname.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/curl_gethostname.c'; fi`
+
+lib1500-lib1500.o: lib1500.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1500-lib1500.o -MD -MP -MF $(DEPDIR)/lib1500-lib1500.Tpo -c -o lib1500-lib1500.o `test -f 'lib1500.c' || echo '$(srcdir)/'`lib1500.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1500-lib1500.Tpo $(DEPDIR)/lib1500-lib1500.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1500.c' object='lib1500-lib1500.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1500-lib1500.o `test -f 'lib1500.c' || echo '$(srcdir)/'`lib1500.c
+
+lib1500-lib1500.obj: lib1500.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1500-lib1500.obj -MD -MP -MF $(DEPDIR)/lib1500-lib1500.Tpo -c -o lib1500-lib1500.obj `if test -f 'lib1500.c'; then $(CYGPATH_W) 'lib1500.c'; else $(CYGPATH_W) '$(srcdir)/lib1500.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1500-lib1500.Tpo $(DEPDIR)/lib1500-lib1500.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1500.c' object='lib1500-lib1500.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1500-lib1500.obj `if test -f 'lib1500.c'; then $(CYGPATH_W) 'lib1500.c'; else $(CYGPATH_W) '$(srcdir)/lib1500.c'; fi`
+
+lib1500-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1500-first.o -MD -MP -MF $(DEPDIR)/lib1500-first.Tpo -c -o lib1500-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1500-first.Tpo $(DEPDIR)/lib1500-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1500-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1500-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1500-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1500-first.obj -MD -MP -MF $(DEPDIR)/lib1500-first.Tpo -c -o lib1500-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1500-first.Tpo $(DEPDIR)/lib1500-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1500-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1500-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1500-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1500-testutil.o -MD -MP -MF $(DEPDIR)/lib1500-testutil.Tpo -c -o lib1500-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1500-testutil.Tpo $(DEPDIR)/lib1500-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1500-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1500-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1500-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1500-testutil.obj -MD -MP -MF $(DEPDIR)/lib1500-testutil.Tpo -c -o lib1500-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1500-testutil.Tpo $(DEPDIR)/lib1500-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1500-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1500-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+lib1501-lib1501.o: lib1501.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1501-lib1501.o -MD -MP -MF $(DEPDIR)/lib1501-lib1501.Tpo -c -o lib1501-lib1501.o `test -f 'lib1501.c' || echo '$(srcdir)/'`lib1501.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1501-lib1501.Tpo $(DEPDIR)/lib1501-lib1501.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1501.c' object='lib1501-lib1501.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1501-lib1501.o `test -f 'lib1501.c' || echo '$(srcdir)/'`lib1501.c
+
+lib1501-lib1501.obj: lib1501.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1501-lib1501.obj -MD -MP -MF $(DEPDIR)/lib1501-lib1501.Tpo -c -o lib1501-lib1501.obj `if test -f 'lib1501.c'; then $(CYGPATH_W) 'lib1501.c'; else $(CYGPATH_W) '$(srcdir)/lib1501.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1501-lib1501.Tpo $(DEPDIR)/lib1501-lib1501.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1501.c' object='lib1501-lib1501.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1501-lib1501.obj `if test -f 'lib1501.c'; then $(CYGPATH_W) 'lib1501.c'; else $(CYGPATH_W) '$(srcdir)/lib1501.c'; fi`
+
+lib1501-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1501-first.o -MD -MP -MF $(DEPDIR)/lib1501-first.Tpo -c -o lib1501-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1501-first.Tpo $(DEPDIR)/lib1501-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1501-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1501-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1501-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1501-first.obj -MD -MP -MF $(DEPDIR)/lib1501-first.Tpo -c -o lib1501-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1501-first.Tpo $(DEPDIR)/lib1501-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1501-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1501-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1501-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1501-testutil.o -MD -MP -MF $(DEPDIR)/lib1501-testutil.Tpo -c -o lib1501-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1501-testutil.Tpo $(DEPDIR)/lib1501-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1501-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1501-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1501-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1501-testutil.obj -MD -MP -MF $(DEPDIR)/lib1501-testutil.Tpo -c -o lib1501-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1501-testutil.Tpo $(DEPDIR)/lib1501-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1501-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1501-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1501-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1501-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1501-warnless.Tpo -c -o ../../lib/lib1501-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1501-warnless.Tpo ../../lib/$(DEPDIR)/lib1501-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1501-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1501-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1501-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1501-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1501-warnless.Tpo -c -o ../../lib/lib1501-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1501-warnless.Tpo ../../lib/$(DEPDIR)/lib1501-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1501-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1501-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1502-lib1502.o: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1502-lib1502.o -MD -MP -MF $(DEPDIR)/lib1502-lib1502.Tpo -c -o lib1502-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1502-lib1502.Tpo $(DEPDIR)/lib1502-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1502-lib1502.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1502-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+
+lib1502-lib1502.obj: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1502-lib1502.obj -MD -MP -MF $(DEPDIR)/lib1502-lib1502.Tpo -c -o lib1502-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1502-lib1502.Tpo $(DEPDIR)/lib1502-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1502-lib1502.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1502-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+
+lib1502-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1502-first.o -MD -MP -MF $(DEPDIR)/lib1502-first.Tpo -c -o lib1502-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1502-first.Tpo $(DEPDIR)/lib1502-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1502-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1502-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1502-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1502-first.obj -MD -MP -MF $(DEPDIR)/lib1502-first.Tpo -c -o lib1502-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1502-first.Tpo $(DEPDIR)/lib1502-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1502-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1502-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1502-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1502-testutil.o -MD -MP -MF $(DEPDIR)/lib1502-testutil.Tpo -c -o lib1502-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1502-testutil.Tpo $(DEPDIR)/lib1502-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1502-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1502-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1502-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1502-testutil.obj -MD -MP -MF $(DEPDIR)/lib1502-testutil.Tpo -c -o lib1502-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1502-testutil.Tpo $(DEPDIR)/lib1502-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1502-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1502-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1502-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1502-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1502-warnless.Tpo -c -o ../../lib/lib1502-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1502-warnless.Tpo ../../lib/$(DEPDIR)/lib1502-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1502-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1502-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1502-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1502-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1502-warnless.Tpo -c -o ../../lib/lib1502-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1502-warnless.Tpo ../../lib/$(DEPDIR)/lib1502-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1502-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1502-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1503-lib1502.o: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1503-lib1502.o -MD -MP -MF $(DEPDIR)/lib1503-lib1502.Tpo -c -o lib1503-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1503-lib1502.Tpo $(DEPDIR)/lib1503-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1503-lib1502.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1503-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+
+lib1503-lib1502.obj: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1503-lib1502.obj -MD -MP -MF $(DEPDIR)/lib1503-lib1502.Tpo -c -o lib1503-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1503-lib1502.Tpo $(DEPDIR)/lib1503-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1503-lib1502.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1503-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+
+lib1503-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1503-first.o -MD -MP -MF $(DEPDIR)/lib1503-first.Tpo -c -o lib1503-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1503-first.Tpo $(DEPDIR)/lib1503-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1503-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1503-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1503-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1503-first.obj -MD -MP -MF $(DEPDIR)/lib1503-first.Tpo -c -o lib1503-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1503-first.Tpo $(DEPDIR)/lib1503-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1503-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1503-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1503-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1503-testutil.o -MD -MP -MF $(DEPDIR)/lib1503-testutil.Tpo -c -o lib1503-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1503-testutil.Tpo $(DEPDIR)/lib1503-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1503-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1503-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1503-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1503-testutil.obj -MD -MP -MF $(DEPDIR)/lib1503-testutil.Tpo -c -o lib1503-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1503-testutil.Tpo $(DEPDIR)/lib1503-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1503-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1503-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1503-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1503-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1503-warnless.Tpo -c -o ../../lib/lib1503-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1503-warnless.Tpo ../../lib/$(DEPDIR)/lib1503-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1503-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1503-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1503-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1503-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1503-warnless.Tpo -c -o ../../lib/lib1503-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1503-warnless.Tpo ../../lib/$(DEPDIR)/lib1503-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1503-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1503-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1504-lib1502.o: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1504-lib1502.o -MD -MP -MF $(DEPDIR)/lib1504-lib1502.Tpo -c -o lib1504-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1504-lib1502.Tpo $(DEPDIR)/lib1504-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1504-lib1502.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1504-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+
+lib1504-lib1502.obj: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1504-lib1502.obj -MD -MP -MF $(DEPDIR)/lib1504-lib1502.Tpo -c -o lib1504-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1504-lib1502.Tpo $(DEPDIR)/lib1504-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1504-lib1502.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1504-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+
+lib1504-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1504-first.o -MD -MP -MF $(DEPDIR)/lib1504-first.Tpo -c -o lib1504-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1504-first.Tpo $(DEPDIR)/lib1504-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1504-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1504-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1504-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1504-first.obj -MD -MP -MF $(DEPDIR)/lib1504-first.Tpo -c -o lib1504-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1504-first.Tpo $(DEPDIR)/lib1504-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1504-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1504-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1504-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1504-testutil.o -MD -MP -MF $(DEPDIR)/lib1504-testutil.Tpo -c -o lib1504-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1504-testutil.Tpo $(DEPDIR)/lib1504-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1504-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1504-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1504-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1504-testutil.obj -MD -MP -MF $(DEPDIR)/lib1504-testutil.Tpo -c -o lib1504-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1504-testutil.Tpo $(DEPDIR)/lib1504-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1504-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1504-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1504-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1504-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1504-warnless.Tpo -c -o ../../lib/lib1504-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1504-warnless.Tpo ../../lib/$(DEPDIR)/lib1504-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1504-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1504-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1504-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1504-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1504-warnless.Tpo -c -o ../../lib/lib1504-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1504-warnless.Tpo ../../lib/$(DEPDIR)/lib1504-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1504-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1504-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1505-lib1502.o: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1505-lib1502.o -MD -MP -MF $(DEPDIR)/lib1505-lib1502.Tpo -c -o lib1505-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1505-lib1502.Tpo $(DEPDIR)/lib1505-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1505-lib1502.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1505-lib1502.o `test -f 'lib1502.c' || echo '$(srcdir)/'`lib1502.c
+
+lib1505-lib1502.obj: lib1502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1505-lib1502.obj -MD -MP -MF $(DEPDIR)/lib1505-lib1502.Tpo -c -o lib1505-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1505-lib1502.Tpo $(DEPDIR)/lib1505-lib1502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1502.c' object='lib1505-lib1502.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1505-lib1502.obj `if test -f 'lib1502.c'; then $(CYGPATH_W) 'lib1502.c'; else $(CYGPATH_W) '$(srcdir)/lib1502.c'; fi`
+
+lib1505-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1505-first.o -MD -MP -MF $(DEPDIR)/lib1505-first.Tpo -c -o lib1505-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1505-first.Tpo $(DEPDIR)/lib1505-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1505-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1505-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1505-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1505-first.obj -MD -MP -MF $(DEPDIR)/lib1505-first.Tpo -c -o lib1505-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1505-first.Tpo $(DEPDIR)/lib1505-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1505-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1505-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1505-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1505-testutil.o -MD -MP -MF $(DEPDIR)/lib1505-testutil.Tpo -c -o lib1505-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1505-testutil.Tpo $(DEPDIR)/lib1505-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1505-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1505-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1505-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1505-testutil.obj -MD -MP -MF $(DEPDIR)/lib1505-testutil.Tpo -c -o lib1505-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1505-testutil.Tpo $(DEPDIR)/lib1505-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1505-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1505-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1505-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1505-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1505-warnless.Tpo -c -o ../../lib/lib1505-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1505-warnless.Tpo ../../lib/$(DEPDIR)/lib1505-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1505-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1505-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1505-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1505-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1505-warnless.Tpo -c -o ../../lib/lib1505-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1505-warnless.Tpo ../../lib/$(DEPDIR)/lib1505-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1505-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1505-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1506-lib1506.o: lib1506.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1506-lib1506.o -MD -MP -MF $(DEPDIR)/lib1506-lib1506.Tpo -c -o lib1506-lib1506.o `test -f 'lib1506.c' || echo '$(srcdir)/'`lib1506.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1506-lib1506.Tpo $(DEPDIR)/lib1506-lib1506.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1506.c' object='lib1506-lib1506.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1506-lib1506.o `test -f 'lib1506.c' || echo '$(srcdir)/'`lib1506.c
+
+lib1506-lib1506.obj: lib1506.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1506-lib1506.obj -MD -MP -MF $(DEPDIR)/lib1506-lib1506.Tpo -c -o lib1506-lib1506.obj `if test -f 'lib1506.c'; then $(CYGPATH_W) 'lib1506.c'; else $(CYGPATH_W) '$(srcdir)/lib1506.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1506-lib1506.Tpo $(DEPDIR)/lib1506-lib1506.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1506.c' object='lib1506-lib1506.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1506-lib1506.obj `if test -f 'lib1506.c'; then $(CYGPATH_W) 'lib1506.c'; else $(CYGPATH_W) '$(srcdir)/lib1506.c'; fi`
+
+lib1506-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1506-first.o -MD -MP -MF $(DEPDIR)/lib1506-first.Tpo -c -o lib1506-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1506-first.Tpo $(DEPDIR)/lib1506-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1506-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1506-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1506-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1506-first.obj -MD -MP -MF $(DEPDIR)/lib1506-first.Tpo -c -o lib1506-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1506-first.Tpo $(DEPDIR)/lib1506-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1506-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1506-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1506-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1506-testutil.o -MD -MP -MF $(DEPDIR)/lib1506-testutil.Tpo -c -o lib1506-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1506-testutil.Tpo $(DEPDIR)/lib1506-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1506-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1506-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1506-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1506-testutil.obj -MD -MP -MF $(DEPDIR)/lib1506-testutil.Tpo -c -o lib1506-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1506-testutil.Tpo $(DEPDIR)/lib1506-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1506-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1506-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1506-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1506-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1506-warnless.Tpo -c -o ../../lib/lib1506-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1506-warnless.Tpo ../../lib/$(DEPDIR)/lib1506-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1506-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1506-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1506-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1506-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1506-warnless.Tpo -c -o ../../lib/lib1506-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1506-warnless.Tpo ../../lib/$(DEPDIR)/lib1506-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1506-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1506-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1507-lib1507.o: lib1507.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1507-lib1507.o -MD -MP -MF $(DEPDIR)/lib1507-lib1507.Tpo -c -o lib1507-lib1507.o `test -f 'lib1507.c' || echo '$(srcdir)/'`lib1507.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1507-lib1507.Tpo $(DEPDIR)/lib1507-lib1507.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1507.c' object='lib1507-lib1507.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1507-lib1507.o `test -f 'lib1507.c' || echo '$(srcdir)/'`lib1507.c
+
+lib1507-lib1507.obj: lib1507.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1507-lib1507.obj -MD -MP -MF $(DEPDIR)/lib1507-lib1507.Tpo -c -o lib1507-lib1507.obj `if test -f 'lib1507.c'; then $(CYGPATH_W) 'lib1507.c'; else $(CYGPATH_W) '$(srcdir)/lib1507.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1507-lib1507.Tpo $(DEPDIR)/lib1507-lib1507.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1507.c' object='lib1507-lib1507.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1507-lib1507.obj `if test -f 'lib1507.c'; then $(CYGPATH_W) 'lib1507.c'; else $(CYGPATH_W) '$(srcdir)/lib1507.c'; fi`
+
+lib1507-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1507-first.o -MD -MP -MF $(DEPDIR)/lib1507-first.Tpo -c -o lib1507-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1507-first.Tpo $(DEPDIR)/lib1507-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1507-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1507-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1507-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1507-first.obj -MD -MP -MF $(DEPDIR)/lib1507-first.Tpo -c -o lib1507-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1507-first.Tpo $(DEPDIR)/lib1507-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1507-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1507-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1507-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1507-testutil.o -MD -MP -MF $(DEPDIR)/lib1507-testutil.Tpo -c -o lib1507-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1507-testutil.Tpo $(DEPDIR)/lib1507-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1507-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1507-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1507-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1507-testutil.obj -MD -MP -MF $(DEPDIR)/lib1507-testutil.Tpo -c -o lib1507-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1507-testutil.Tpo $(DEPDIR)/lib1507-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1507-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1507-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1507-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1507-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1507-warnless.Tpo -c -o ../../lib/lib1507-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1507-warnless.Tpo ../../lib/$(DEPDIR)/lib1507-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1507-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1507-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1507-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1507-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1507-warnless.Tpo -c -o ../../lib/lib1507-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1507-warnless.Tpo ../../lib/$(DEPDIR)/lib1507-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1507-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1507-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1508-lib1508.o: lib1508.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1508-lib1508.o -MD -MP -MF $(DEPDIR)/lib1508-lib1508.Tpo -c -o lib1508-lib1508.o `test -f 'lib1508.c' || echo '$(srcdir)/'`lib1508.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1508-lib1508.Tpo $(DEPDIR)/lib1508-lib1508.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1508.c' object='lib1508-lib1508.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1508-lib1508.o `test -f 'lib1508.c' || echo '$(srcdir)/'`lib1508.c
+
+lib1508-lib1508.obj: lib1508.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1508-lib1508.obj -MD -MP -MF $(DEPDIR)/lib1508-lib1508.Tpo -c -o lib1508-lib1508.obj `if test -f 'lib1508.c'; then $(CYGPATH_W) 'lib1508.c'; else $(CYGPATH_W) '$(srcdir)/lib1508.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1508-lib1508.Tpo $(DEPDIR)/lib1508-lib1508.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1508.c' object='lib1508-lib1508.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1508-lib1508.obj `if test -f 'lib1508.c'; then $(CYGPATH_W) 'lib1508.c'; else $(CYGPATH_W) '$(srcdir)/lib1508.c'; fi`
+
+lib1508-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1508-first.o -MD -MP -MF $(DEPDIR)/lib1508-first.Tpo -c -o lib1508-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1508-first.Tpo $(DEPDIR)/lib1508-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1508-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1508-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1508-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1508-first.obj -MD -MP -MF $(DEPDIR)/lib1508-first.Tpo -c -o lib1508-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1508-first.Tpo $(DEPDIR)/lib1508-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1508-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1508-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1508-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1508-testutil.o -MD -MP -MF $(DEPDIR)/lib1508-testutil.Tpo -c -o lib1508-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1508-testutil.Tpo $(DEPDIR)/lib1508-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1508-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1508-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1508-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1508-testutil.obj -MD -MP -MF $(DEPDIR)/lib1508-testutil.Tpo -c -o lib1508-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1508-testutil.Tpo $(DEPDIR)/lib1508-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1508-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1508-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1508-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1508-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1508-warnless.Tpo -c -o ../../lib/lib1508-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1508-warnless.Tpo ../../lib/$(DEPDIR)/lib1508-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1508-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1508-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1508-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1508-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1508-warnless.Tpo -c -o ../../lib/lib1508-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1508-warnless.Tpo ../../lib/$(DEPDIR)/lib1508-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1508-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1508-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1509-lib1509.o: lib1509.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1509-lib1509.o -MD -MP -MF $(DEPDIR)/lib1509-lib1509.Tpo -c -o lib1509-lib1509.o `test -f 'lib1509.c' || echo '$(srcdir)/'`lib1509.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1509-lib1509.Tpo $(DEPDIR)/lib1509-lib1509.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1509.c' object='lib1509-lib1509.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1509-lib1509.o `test -f 'lib1509.c' || echo '$(srcdir)/'`lib1509.c
+
+lib1509-lib1509.obj: lib1509.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1509-lib1509.obj -MD -MP -MF $(DEPDIR)/lib1509-lib1509.Tpo -c -o lib1509-lib1509.obj `if test -f 'lib1509.c'; then $(CYGPATH_W) 'lib1509.c'; else $(CYGPATH_W) '$(srcdir)/lib1509.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1509-lib1509.Tpo $(DEPDIR)/lib1509-lib1509.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1509.c' object='lib1509-lib1509.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1509-lib1509.obj `if test -f 'lib1509.c'; then $(CYGPATH_W) 'lib1509.c'; else $(CYGPATH_W) '$(srcdir)/lib1509.c'; fi`
+
+lib1509-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1509-first.o -MD -MP -MF $(DEPDIR)/lib1509-first.Tpo -c -o lib1509-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1509-first.Tpo $(DEPDIR)/lib1509-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1509-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1509-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1509-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1509-first.obj -MD -MP -MF $(DEPDIR)/lib1509-first.Tpo -c -o lib1509-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1509-first.Tpo $(DEPDIR)/lib1509-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1509-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1509-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1509-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1509-testutil.o -MD -MP -MF $(DEPDIR)/lib1509-testutil.Tpo -c -o lib1509-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1509-testutil.Tpo $(DEPDIR)/lib1509-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1509-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1509-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1509-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1509-testutil.obj -MD -MP -MF $(DEPDIR)/lib1509-testutil.Tpo -c -o lib1509-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1509-testutil.Tpo $(DEPDIR)/lib1509-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1509-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1509-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1509-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1509-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1509-warnless.Tpo -c -o ../../lib/lib1509-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1509-warnless.Tpo ../../lib/$(DEPDIR)/lib1509-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1509-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1509-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1509-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1509-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1509-warnless.Tpo -c -o ../../lib/lib1509-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1509-warnless.Tpo ../../lib/$(DEPDIR)/lib1509-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1509-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1509-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1510-lib1510.o: lib1510.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1510-lib1510.o -MD -MP -MF $(DEPDIR)/lib1510-lib1510.Tpo -c -o lib1510-lib1510.o `test -f 'lib1510.c' || echo '$(srcdir)/'`lib1510.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1510-lib1510.Tpo $(DEPDIR)/lib1510-lib1510.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1510.c' object='lib1510-lib1510.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1510-lib1510.o `test -f 'lib1510.c' || echo '$(srcdir)/'`lib1510.c
+
+lib1510-lib1510.obj: lib1510.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1510-lib1510.obj -MD -MP -MF $(DEPDIR)/lib1510-lib1510.Tpo -c -o lib1510-lib1510.obj `if test -f 'lib1510.c'; then $(CYGPATH_W) 'lib1510.c'; else $(CYGPATH_W) '$(srcdir)/lib1510.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1510-lib1510.Tpo $(DEPDIR)/lib1510-lib1510.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1510.c' object='lib1510-lib1510.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1510-lib1510.obj `if test -f 'lib1510.c'; then $(CYGPATH_W) 'lib1510.c'; else $(CYGPATH_W) '$(srcdir)/lib1510.c'; fi`
+
+lib1510-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1510-first.o -MD -MP -MF $(DEPDIR)/lib1510-first.Tpo -c -o lib1510-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1510-first.Tpo $(DEPDIR)/lib1510-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1510-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1510-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1510-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1510-first.obj -MD -MP -MF $(DEPDIR)/lib1510-first.Tpo -c -o lib1510-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1510-first.Tpo $(DEPDIR)/lib1510-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1510-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1510-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1510-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1510-testutil.o -MD -MP -MF $(DEPDIR)/lib1510-testutil.Tpo -c -o lib1510-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1510-testutil.Tpo $(DEPDIR)/lib1510-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1510-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1510-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1510-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1510-testutil.obj -MD -MP -MF $(DEPDIR)/lib1510-testutil.Tpo -c -o lib1510-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1510-testutil.Tpo $(DEPDIR)/lib1510-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1510-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1510-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1510-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1510-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1510-warnless.Tpo -c -o ../../lib/lib1510-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1510-warnless.Tpo ../../lib/$(DEPDIR)/lib1510-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1510-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1510-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1510-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1510-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1510-warnless.Tpo -c -o ../../lib/lib1510-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1510-warnless.Tpo ../../lib/$(DEPDIR)/lib1510-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1510-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1510-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1511-lib1511.o: lib1511.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1511-lib1511.o -MD -MP -MF $(DEPDIR)/lib1511-lib1511.Tpo -c -o lib1511-lib1511.o `test -f 'lib1511.c' || echo '$(srcdir)/'`lib1511.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1511-lib1511.Tpo $(DEPDIR)/lib1511-lib1511.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1511.c' object='lib1511-lib1511.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1511-lib1511.o `test -f 'lib1511.c' || echo '$(srcdir)/'`lib1511.c
+
+lib1511-lib1511.obj: lib1511.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1511-lib1511.obj -MD -MP -MF $(DEPDIR)/lib1511-lib1511.Tpo -c -o lib1511-lib1511.obj `if test -f 'lib1511.c'; then $(CYGPATH_W) 'lib1511.c'; else $(CYGPATH_W) '$(srcdir)/lib1511.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1511-lib1511.Tpo $(DEPDIR)/lib1511-lib1511.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1511.c' object='lib1511-lib1511.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1511-lib1511.obj `if test -f 'lib1511.c'; then $(CYGPATH_W) 'lib1511.c'; else $(CYGPATH_W) '$(srcdir)/lib1511.c'; fi`
+
+lib1511-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1511-first.o -MD -MP -MF $(DEPDIR)/lib1511-first.Tpo -c -o lib1511-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1511-first.Tpo $(DEPDIR)/lib1511-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1511-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1511-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1511-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1511-first.obj -MD -MP -MF $(DEPDIR)/lib1511-first.Tpo -c -o lib1511-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1511-first.Tpo $(DEPDIR)/lib1511-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1511-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1511-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1511-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1511-testutil.o -MD -MP -MF $(DEPDIR)/lib1511-testutil.Tpo -c -o lib1511-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1511-testutil.Tpo $(DEPDIR)/lib1511-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1511-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1511-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1511-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1511-testutil.obj -MD -MP -MF $(DEPDIR)/lib1511-testutil.Tpo -c -o lib1511-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1511-testutil.Tpo $(DEPDIR)/lib1511-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1511-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1511-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1511-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1511-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1511-warnless.Tpo -c -o ../../lib/lib1511-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1511-warnless.Tpo ../../lib/$(DEPDIR)/lib1511-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1511-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1511-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1511-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1511-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1511-warnless.Tpo -c -o ../../lib/lib1511-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1511-warnless.Tpo ../../lib/$(DEPDIR)/lib1511-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1511-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1511-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1512-lib1512.o: lib1512.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1512-lib1512.o -MD -MP -MF $(DEPDIR)/lib1512-lib1512.Tpo -c -o lib1512-lib1512.o `test -f 'lib1512.c' || echo '$(srcdir)/'`lib1512.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1512-lib1512.Tpo $(DEPDIR)/lib1512-lib1512.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1512.c' object='lib1512-lib1512.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1512-lib1512.o `test -f 'lib1512.c' || echo '$(srcdir)/'`lib1512.c
+
+lib1512-lib1512.obj: lib1512.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1512-lib1512.obj -MD -MP -MF $(DEPDIR)/lib1512-lib1512.Tpo -c -o lib1512-lib1512.obj `if test -f 'lib1512.c'; then $(CYGPATH_W) 'lib1512.c'; else $(CYGPATH_W) '$(srcdir)/lib1512.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1512-lib1512.Tpo $(DEPDIR)/lib1512-lib1512.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1512.c' object='lib1512-lib1512.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1512-lib1512.obj `if test -f 'lib1512.c'; then $(CYGPATH_W) 'lib1512.c'; else $(CYGPATH_W) '$(srcdir)/lib1512.c'; fi`
+
+lib1512-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1512-first.o -MD -MP -MF $(DEPDIR)/lib1512-first.Tpo -c -o lib1512-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1512-first.Tpo $(DEPDIR)/lib1512-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1512-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1512-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1512-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1512-first.obj -MD -MP -MF $(DEPDIR)/lib1512-first.Tpo -c -o lib1512-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1512-first.Tpo $(DEPDIR)/lib1512-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1512-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1512-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1512-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1512-testutil.o -MD -MP -MF $(DEPDIR)/lib1512-testutil.Tpo -c -o lib1512-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1512-testutil.Tpo $(DEPDIR)/lib1512-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1512-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1512-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1512-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1512-testutil.obj -MD -MP -MF $(DEPDIR)/lib1512-testutil.Tpo -c -o lib1512-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1512-testutil.Tpo $(DEPDIR)/lib1512-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1512-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1512-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1512-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1512-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1512-warnless.Tpo -c -o ../../lib/lib1512-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1512-warnless.Tpo ../../lib/$(DEPDIR)/lib1512-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1512-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1512-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1512-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1512-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1512-warnless.Tpo -c -o ../../lib/lib1512-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1512-warnless.Tpo ../../lib/$(DEPDIR)/lib1512-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1512-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1512-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1513-lib1513.o: lib1513.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1513-lib1513.o -MD -MP -MF $(DEPDIR)/lib1513-lib1513.Tpo -c -o lib1513-lib1513.o `test -f 'lib1513.c' || echo '$(srcdir)/'`lib1513.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1513-lib1513.Tpo $(DEPDIR)/lib1513-lib1513.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1513.c' object='lib1513-lib1513.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1513-lib1513.o `test -f 'lib1513.c' || echo '$(srcdir)/'`lib1513.c
+
+lib1513-lib1513.obj: lib1513.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1513-lib1513.obj -MD -MP -MF $(DEPDIR)/lib1513-lib1513.Tpo -c -o lib1513-lib1513.obj `if test -f 'lib1513.c'; then $(CYGPATH_W) 'lib1513.c'; else $(CYGPATH_W) '$(srcdir)/lib1513.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1513-lib1513.Tpo $(DEPDIR)/lib1513-lib1513.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1513.c' object='lib1513-lib1513.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1513-lib1513.obj `if test -f 'lib1513.c'; then $(CYGPATH_W) 'lib1513.c'; else $(CYGPATH_W) '$(srcdir)/lib1513.c'; fi`
+
+lib1513-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1513-first.o -MD -MP -MF $(DEPDIR)/lib1513-first.Tpo -c -o lib1513-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1513-first.Tpo $(DEPDIR)/lib1513-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1513-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1513-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1513-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1513-first.obj -MD -MP -MF $(DEPDIR)/lib1513-first.Tpo -c -o lib1513-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1513-first.Tpo $(DEPDIR)/lib1513-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1513-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1513-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1513-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1513-testutil.o -MD -MP -MF $(DEPDIR)/lib1513-testutil.Tpo -c -o lib1513-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1513-testutil.Tpo $(DEPDIR)/lib1513-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1513-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1513-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1513-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1513-testutil.obj -MD -MP -MF $(DEPDIR)/lib1513-testutil.Tpo -c -o lib1513-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1513-testutil.Tpo $(DEPDIR)/lib1513-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1513-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1513-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1513-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1513-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1513-warnless.Tpo -c -o ../../lib/lib1513-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1513-warnless.Tpo ../../lib/$(DEPDIR)/lib1513-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1513-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1513-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1513-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1513-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1513-warnless.Tpo -c -o ../../lib/lib1513-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1513-warnless.Tpo ../../lib/$(DEPDIR)/lib1513-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1513-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1513-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1514-lib1514.o: lib1514.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1514-lib1514.o -MD -MP -MF $(DEPDIR)/lib1514-lib1514.Tpo -c -o lib1514-lib1514.o `test -f 'lib1514.c' || echo '$(srcdir)/'`lib1514.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1514-lib1514.Tpo $(DEPDIR)/lib1514-lib1514.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1514.c' object='lib1514-lib1514.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1514-lib1514.o `test -f 'lib1514.c' || echo '$(srcdir)/'`lib1514.c
+
+lib1514-lib1514.obj: lib1514.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1514-lib1514.obj -MD -MP -MF $(DEPDIR)/lib1514-lib1514.Tpo -c -o lib1514-lib1514.obj `if test -f 'lib1514.c'; then $(CYGPATH_W) 'lib1514.c'; else $(CYGPATH_W) '$(srcdir)/lib1514.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1514-lib1514.Tpo $(DEPDIR)/lib1514-lib1514.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1514.c' object='lib1514-lib1514.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1514-lib1514.obj `if test -f 'lib1514.c'; then $(CYGPATH_W) 'lib1514.c'; else $(CYGPATH_W) '$(srcdir)/lib1514.c'; fi`
+
+lib1514-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1514-first.o -MD -MP -MF $(DEPDIR)/lib1514-first.Tpo -c -o lib1514-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1514-first.Tpo $(DEPDIR)/lib1514-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1514-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1514-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1514-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1514-first.obj -MD -MP -MF $(DEPDIR)/lib1514-first.Tpo -c -o lib1514-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1514-first.Tpo $(DEPDIR)/lib1514-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1514-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1514-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1514-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1514-testutil.o -MD -MP -MF $(DEPDIR)/lib1514-testutil.Tpo -c -o lib1514-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1514-testutil.Tpo $(DEPDIR)/lib1514-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1514-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1514-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1514-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1514-testutil.obj -MD -MP -MF $(DEPDIR)/lib1514-testutil.Tpo -c -o lib1514-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1514-testutil.Tpo $(DEPDIR)/lib1514-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1514-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1514-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1514-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1514-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1514-warnless.Tpo -c -o ../../lib/lib1514-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1514-warnless.Tpo ../../lib/$(DEPDIR)/lib1514-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1514-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1514-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1514-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1514-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1514-warnless.Tpo -c -o ../../lib/lib1514-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1514-warnless.Tpo ../../lib/$(DEPDIR)/lib1514-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1514-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1514-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1515-lib1515.o: lib1515.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1515-lib1515.o -MD -MP -MF $(DEPDIR)/lib1515-lib1515.Tpo -c -o lib1515-lib1515.o `test -f 'lib1515.c' || echo '$(srcdir)/'`lib1515.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1515-lib1515.Tpo $(DEPDIR)/lib1515-lib1515.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1515.c' object='lib1515-lib1515.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1515-lib1515.o `test -f 'lib1515.c' || echo '$(srcdir)/'`lib1515.c
+
+lib1515-lib1515.obj: lib1515.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1515-lib1515.obj -MD -MP -MF $(DEPDIR)/lib1515-lib1515.Tpo -c -o lib1515-lib1515.obj `if test -f 'lib1515.c'; then $(CYGPATH_W) 'lib1515.c'; else $(CYGPATH_W) '$(srcdir)/lib1515.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1515-lib1515.Tpo $(DEPDIR)/lib1515-lib1515.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1515.c' object='lib1515-lib1515.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1515-lib1515.obj `if test -f 'lib1515.c'; then $(CYGPATH_W) 'lib1515.c'; else $(CYGPATH_W) '$(srcdir)/lib1515.c'; fi`
+
+lib1515-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1515-first.o -MD -MP -MF $(DEPDIR)/lib1515-first.Tpo -c -o lib1515-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1515-first.Tpo $(DEPDIR)/lib1515-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1515-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1515-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1515-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1515-first.obj -MD -MP -MF $(DEPDIR)/lib1515-first.Tpo -c -o lib1515-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1515-first.Tpo $(DEPDIR)/lib1515-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1515-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1515-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1515-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1515-testutil.o -MD -MP -MF $(DEPDIR)/lib1515-testutil.Tpo -c -o lib1515-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1515-testutil.Tpo $(DEPDIR)/lib1515-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1515-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1515-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1515-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1515-testutil.obj -MD -MP -MF $(DEPDIR)/lib1515-testutil.Tpo -c -o lib1515-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1515-testutil.Tpo $(DEPDIR)/lib1515-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1515-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1515-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1515-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1515-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1515-warnless.Tpo -c -o ../../lib/lib1515-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1515-warnless.Tpo ../../lib/$(DEPDIR)/lib1515-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1515-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1515-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1515-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1515-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1515-warnless.Tpo -c -o ../../lib/lib1515-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1515-warnless.Tpo ../../lib/$(DEPDIR)/lib1515-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1515-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1515-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1517-lib1517.o: lib1517.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1517-lib1517.o -MD -MP -MF $(DEPDIR)/lib1517-lib1517.Tpo -c -o lib1517-lib1517.o `test -f 'lib1517.c' || echo '$(srcdir)/'`lib1517.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1517-lib1517.Tpo $(DEPDIR)/lib1517-lib1517.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1517.c' object='lib1517-lib1517.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1517-lib1517.o `test -f 'lib1517.c' || echo '$(srcdir)/'`lib1517.c
+
+lib1517-lib1517.obj: lib1517.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1517-lib1517.obj -MD -MP -MF $(DEPDIR)/lib1517-lib1517.Tpo -c -o lib1517-lib1517.obj `if test -f 'lib1517.c'; then $(CYGPATH_W) 'lib1517.c'; else $(CYGPATH_W) '$(srcdir)/lib1517.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1517-lib1517.Tpo $(DEPDIR)/lib1517-lib1517.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1517.c' object='lib1517-lib1517.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1517-lib1517.obj `if test -f 'lib1517.c'; then $(CYGPATH_W) 'lib1517.c'; else $(CYGPATH_W) '$(srcdir)/lib1517.c'; fi`
+
+lib1517-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1517-first.o -MD -MP -MF $(DEPDIR)/lib1517-first.Tpo -c -o lib1517-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1517-first.Tpo $(DEPDIR)/lib1517-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1517-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1517-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1517-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1517-first.obj -MD -MP -MF $(DEPDIR)/lib1517-first.Tpo -c -o lib1517-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1517-first.Tpo $(DEPDIR)/lib1517-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1517-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1517-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1520-lib1520.o: lib1520.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1520-lib1520.o -MD -MP -MF $(DEPDIR)/lib1520-lib1520.Tpo -c -o lib1520-lib1520.o `test -f 'lib1520.c' || echo '$(srcdir)/'`lib1520.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1520-lib1520.Tpo $(DEPDIR)/lib1520-lib1520.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1520.c' object='lib1520-lib1520.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1520-lib1520.o `test -f 'lib1520.c' || echo '$(srcdir)/'`lib1520.c
+
+lib1520-lib1520.obj: lib1520.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1520-lib1520.obj -MD -MP -MF $(DEPDIR)/lib1520-lib1520.Tpo -c -o lib1520-lib1520.obj `if test -f 'lib1520.c'; then $(CYGPATH_W) 'lib1520.c'; else $(CYGPATH_W) '$(srcdir)/lib1520.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1520-lib1520.Tpo $(DEPDIR)/lib1520-lib1520.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1520.c' object='lib1520-lib1520.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1520-lib1520.obj `if test -f 'lib1520.c'; then $(CYGPATH_W) 'lib1520.c'; else $(CYGPATH_W) '$(srcdir)/lib1520.c'; fi`
+
+lib1520-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1520-first.o -MD -MP -MF $(DEPDIR)/lib1520-first.Tpo -c -o lib1520-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1520-first.Tpo $(DEPDIR)/lib1520-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1520-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1520-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1520-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1520-first.obj -MD -MP -MF $(DEPDIR)/lib1520-first.Tpo -c -o lib1520-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1520-first.Tpo $(DEPDIR)/lib1520-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1520-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1520-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1521-lib1521.o: lib1521.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1521-lib1521.o -MD -MP -MF $(DEPDIR)/lib1521-lib1521.Tpo -c -o lib1521-lib1521.o `test -f 'lib1521.c' || echo '$(srcdir)/'`lib1521.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1521-lib1521.Tpo $(DEPDIR)/lib1521-lib1521.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1521.c' object='lib1521-lib1521.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1521-lib1521.o `test -f 'lib1521.c' || echo '$(srcdir)/'`lib1521.c
+
+lib1521-lib1521.obj: lib1521.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1521-lib1521.obj -MD -MP -MF $(DEPDIR)/lib1521-lib1521.Tpo -c -o lib1521-lib1521.obj `if test -f 'lib1521.c'; then $(CYGPATH_W) 'lib1521.c'; else $(CYGPATH_W) '$(srcdir)/lib1521.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1521-lib1521.Tpo $(DEPDIR)/lib1521-lib1521.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1521.c' object='lib1521-lib1521.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1521-lib1521.obj `if test -f 'lib1521.c'; then $(CYGPATH_W) 'lib1521.c'; else $(CYGPATH_W) '$(srcdir)/lib1521.c'; fi`
+
+lib1521-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1521-first.o -MD -MP -MF $(DEPDIR)/lib1521-first.Tpo -c -o lib1521-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1521-first.Tpo $(DEPDIR)/lib1521-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1521-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1521-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1521-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1521-first.obj -MD -MP -MF $(DEPDIR)/lib1521-first.Tpo -c -o lib1521-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1521-first.Tpo $(DEPDIR)/lib1521-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1521-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1521-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1525-lib1525.o: lib1525.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1525-lib1525.o -MD -MP -MF $(DEPDIR)/lib1525-lib1525.Tpo -c -o lib1525-lib1525.o `test -f 'lib1525.c' || echo '$(srcdir)/'`lib1525.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1525-lib1525.Tpo $(DEPDIR)/lib1525-lib1525.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1525.c' object='lib1525-lib1525.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1525-lib1525.o `test -f 'lib1525.c' || echo '$(srcdir)/'`lib1525.c
+
+lib1525-lib1525.obj: lib1525.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1525-lib1525.obj -MD -MP -MF $(DEPDIR)/lib1525-lib1525.Tpo -c -o lib1525-lib1525.obj `if test -f 'lib1525.c'; then $(CYGPATH_W) 'lib1525.c'; else $(CYGPATH_W) '$(srcdir)/lib1525.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1525-lib1525.Tpo $(DEPDIR)/lib1525-lib1525.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1525.c' object='lib1525-lib1525.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1525-lib1525.obj `if test -f 'lib1525.c'; then $(CYGPATH_W) 'lib1525.c'; else $(CYGPATH_W) '$(srcdir)/lib1525.c'; fi`
+
+lib1525-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1525-first.o -MD -MP -MF $(DEPDIR)/lib1525-first.Tpo -c -o lib1525-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1525-first.Tpo $(DEPDIR)/lib1525-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1525-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1525-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1525-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1525-first.obj -MD -MP -MF $(DEPDIR)/lib1525-first.Tpo -c -o lib1525-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1525-first.Tpo $(DEPDIR)/lib1525-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1525-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1525-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1525-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1525-testutil.o -MD -MP -MF $(DEPDIR)/lib1525-testutil.Tpo -c -o lib1525-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1525-testutil.Tpo $(DEPDIR)/lib1525-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1525-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1525-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1525-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1525-testutil.obj -MD -MP -MF $(DEPDIR)/lib1525-testutil.Tpo -c -o lib1525-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1525-testutil.Tpo $(DEPDIR)/lib1525-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1525-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1525-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1525-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1525-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1525-warnless.Tpo -c -o ../../lib/lib1525-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1525-warnless.Tpo ../../lib/$(DEPDIR)/lib1525-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1525-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1525-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1525-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1525-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1525-warnless.Tpo -c -o ../../lib/lib1525-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1525-warnless.Tpo ../../lib/$(DEPDIR)/lib1525-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1525-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1525-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1526-lib1526.o: lib1526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1526-lib1526.o -MD -MP -MF $(DEPDIR)/lib1526-lib1526.Tpo -c -o lib1526-lib1526.o `test -f 'lib1526.c' || echo '$(srcdir)/'`lib1526.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1526-lib1526.Tpo $(DEPDIR)/lib1526-lib1526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1526.c' object='lib1526-lib1526.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1526-lib1526.o `test -f 'lib1526.c' || echo '$(srcdir)/'`lib1526.c
+
+lib1526-lib1526.obj: lib1526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1526-lib1526.obj -MD -MP -MF $(DEPDIR)/lib1526-lib1526.Tpo -c -o lib1526-lib1526.obj `if test -f 'lib1526.c'; then $(CYGPATH_W) 'lib1526.c'; else $(CYGPATH_W) '$(srcdir)/lib1526.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1526-lib1526.Tpo $(DEPDIR)/lib1526-lib1526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1526.c' object='lib1526-lib1526.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1526-lib1526.obj `if test -f 'lib1526.c'; then $(CYGPATH_W) 'lib1526.c'; else $(CYGPATH_W) '$(srcdir)/lib1526.c'; fi`
+
+lib1526-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1526-first.o -MD -MP -MF $(DEPDIR)/lib1526-first.Tpo -c -o lib1526-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1526-first.Tpo $(DEPDIR)/lib1526-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1526-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1526-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1526-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1526-first.obj -MD -MP -MF $(DEPDIR)/lib1526-first.Tpo -c -o lib1526-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1526-first.Tpo $(DEPDIR)/lib1526-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1526-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1526-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1526-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1526-testutil.o -MD -MP -MF $(DEPDIR)/lib1526-testutil.Tpo -c -o lib1526-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1526-testutil.Tpo $(DEPDIR)/lib1526-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1526-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1526-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1526-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1526-testutil.obj -MD -MP -MF $(DEPDIR)/lib1526-testutil.Tpo -c -o lib1526-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1526-testutil.Tpo $(DEPDIR)/lib1526-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1526-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1526-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1526-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1526-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1526-warnless.Tpo -c -o ../../lib/lib1526-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1526-warnless.Tpo ../../lib/$(DEPDIR)/lib1526-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1526-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1526-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1526-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1526-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1526-warnless.Tpo -c -o ../../lib/lib1526-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1526-warnless.Tpo ../../lib/$(DEPDIR)/lib1526-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1526-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1526-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1527-lib1527.o: lib1527.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1527-lib1527.o -MD -MP -MF $(DEPDIR)/lib1527-lib1527.Tpo -c -o lib1527-lib1527.o `test -f 'lib1527.c' || echo '$(srcdir)/'`lib1527.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1527-lib1527.Tpo $(DEPDIR)/lib1527-lib1527.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1527.c' object='lib1527-lib1527.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1527-lib1527.o `test -f 'lib1527.c' || echo '$(srcdir)/'`lib1527.c
+
+lib1527-lib1527.obj: lib1527.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1527-lib1527.obj -MD -MP -MF $(DEPDIR)/lib1527-lib1527.Tpo -c -o lib1527-lib1527.obj `if test -f 'lib1527.c'; then $(CYGPATH_W) 'lib1527.c'; else $(CYGPATH_W) '$(srcdir)/lib1527.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1527-lib1527.Tpo $(DEPDIR)/lib1527-lib1527.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1527.c' object='lib1527-lib1527.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1527-lib1527.obj `if test -f 'lib1527.c'; then $(CYGPATH_W) 'lib1527.c'; else $(CYGPATH_W) '$(srcdir)/lib1527.c'; fi`
+
+lib1527-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1527-first.o -MD -MP -MF $(DEPDIR)/lib1527-first.Tpo -c -o lib1527-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1527-first.Tpo $(DEPDIR)/lib1527-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1527-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1527-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1527-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1527-first.obj -MD -MP -MF $(DEPDIR)/lib1527-first.Tpo -c -o lib1527-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1527-first.Tpo $(DEPDIR)/lib1527-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1527-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1527-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1527-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1527-testutil.o -MD -MP -MF $(DEPDIR)/lib1527-testutil.Tpo -c -o lib1527-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1527-testutil.Tpo $(DEPDIR)/lib1527-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1527-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1527-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1527-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1527-testutil.obj -MD -MP -MF $(DEPDIR)/lib1527-testutil.Tpo -c -o lib1527-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1527-testutil.Tpo $(DEPDIR)/lib1527-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1527-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1527-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1527-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1527-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1527-warnless.Tpo -c -o ../../lib/lib1527-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1527-warnless.Tpo ../../lib/$(DEPDIR)/lib1527-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1527-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1527-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1527-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1527-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1527-warnless.Tpo -c -o ../../lib/lib1527-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1527-warnless.Tpo ../../lib/$(DEPDIR)/lib1527-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1527-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1527-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1528-lib1528.o: lib1528.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1528-lib1528.o -MD -MP -MF $(DEPDIR)/lib1528-lib1528.Tpo -c -o lib1528-lib1528.o `test -f 'lib1528.c' || echo '$(srcdir)/'`lib1528.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1528-lib1528.Tpo $(DEPDIR)/lib1528-lib1528.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1528.c' object='lib1528-lib1528.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1528-lib1528.o `test -f 'lib1528.c' || echo '$(srcdir)/'`lib1528.c
+
+lib1528-lib1528.obj: lib1528.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1528-lib1528.obj -MD -MP -MF $(DEPDIR)/lib1528-lib1528.Tpo -c -o lib1528-lib1528.obj `if test -f 'lib1528.c'; then $(CYGPATH_W) 'lib1528.c'; else $(CYGPATH_W) '$(srcdir)/lib1528.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1528-lib1528.Tpo $(DEPDIR)/lib1528-lib1528.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1528.c' object='lib1528-lib1528.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1528-lib1528.obj `if test -f 'lib1528.c'; then $(CYGPATH_W) 'lib1528.c'; else $(CYGPATH_W) '$(srcdir)/lib1528.c'; fi`
+
+lib1528-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1528-first.o -MD -MP -MF $(DEPDIR)/lib1528-first.Tpo -c -o lib1528-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1528-first.Tpo $(DEPDIR)/lib1528-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1528-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1528-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1528-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1528-first.obj -MD -MP -MF $(DEPDIR)/lib1528-first.Tpo -c -o lib1528-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1528-first.Tpo $(DEPDIR)/lib1528-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1528-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1528-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1528-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1528-testutil.o -MD -MP -MF $(DEPDIR)/lib1528-testutil.Tpo -c -o lib1528-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1528-testutil.Tpo $(DEPDIR)/lib1528-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1528-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1528-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1528-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1528-testutil.obj -MD -MP -MF $(DEPDIR)/lib1528-testutil.Tpo -c -o lib1528-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1528-testutil.Tpo $(DEPDIR)/lib1528-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1528-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1528-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1528-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1528-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1528-warnless.Tpo -c -o ../../lib/lib1528-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1528-warnless.Tpo ../../lib/$(DEPDIR)/lib1528-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1528-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1528-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1528-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1528-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1528-warnless.Tpo -c -o ../../lib/lib1528-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1528-warnless.Tpo ../../lib/$(DEPDIR)/lib1528-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1528-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1528_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1528-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1529-lib1529.o: lib1529.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1529-lib1529.o -MD -MP -MF $(DEPDIR)/lib1529-lib1529.Tpo -c -o lib1529-lib1529.o `test -f 'lib1529.c' || echo '$(srcdir)/'`lib1529.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1529-lib1529.Tpo $(DEPDIR)/lib1529-lib1529.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1529.c' object='lib1529-lib1529.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1529-lib1529.o `test -f 'lib1529.c' || echo '$(srcdir)/'`lib1529.c
+
+lib1529-lib1529.obj: lib1529.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1529-lib1529.obj -MD -MP -MF $(DEPDIR)/lib1529-lib1529.Tpo -c -o lib1529-lib1529.obj `if test -f 'lib1529.c'; then $(CYGPATH_W) 'lib1529.c'; else $(CYGPATH_W) '$(srcdir)/lib1529.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1529-lib1529.Tpo $(DEPDIR)/lib1529-lib1529.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1529.c' object='lib1529-lib1529.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1529-lib1529.obj `if test -f 'lib1529.c'; then $(CYGPATH_W) 'lib1529.c'; else $(CYGPATH_W) '$(srcdir)/lib1529.c'; fi`
+
+lib1529-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1529-first.o -MD -MP -MF $(DEPDIR)/lib1529-first.Tpo -c -o lib1529-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1529-first.Tpo $(DEPDIR)/lib1529-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1529-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1529-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1529-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1529-first.obj -MD -MP -MF $(DEPDIR)/lib1529-first.Tpo -c -o lib1529-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1529-first.Tpo $(DEPDIR)/lib1529-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1529-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1529-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1529-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1529-testutil.o -MD -MP -MF $(DEPDIR)/lib1529-testutil.Tpo -c -o lib1529-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1529-testutil.Tpo $(DEPDIR)/lib1529-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1529-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1529-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1529-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1529-testutil.obj -MD -MP -MF $(DEPDIR)/lib1529-testutil.Tpo -c -o lib1529-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1529-testutil.Tpo $(DEPDIR)/lib1529-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1529-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1529-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1529-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1529-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1529-warnless.Tpo -c -o ../../lib/lib1529-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1529-warnless.Tpo ../../lib/$(DEPDIR)/lib1529-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1529-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1529-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1529-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1529-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1529-warnless.Tpo -c -o ../../lib/lib1529-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1529-warnless.Tpo ../../lib/$(DEPDIR)/lib1529-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1529-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1529-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1530-lib1530.o: lib1530.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-lib1530.o -MD -MP -MF $(DEPDIR)/lib1530-lib1530.Tpo -c -o lib1530-lib1530.o `test -f 'lib1530.c' || echo '$(srcdir)/'`lib1530.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-lib1530.Tpo $(DEPDIR)/lib1530-lib1530.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1530.c' object='lib1530-lib1530.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-lib1530.o `test -f 'lib1530.c' || echo '$(srcdir)/'`lib1530.c
+
+lib1530-lib1530.obj: lib1530.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-lib1530.obj -MD -MP -MF $(DEPDIR)/lib1530-lib1530.Tpo -c -o lib1530-lib1530.obj `if test -f 'lib1530.c'; then $(CYGPATH_W) 'lib1530.c'; else $(CYGPATH_W) '$(srcdir)/lib1530.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-lib1530.Tpo $(DEPDIR)/lib1530-lib1530.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1530.c' object='lib1530-lib1530.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-lib1530.obj `if test -f 'lib1530.c'; then $(CYGPATH_W) 'lib1530.c'; else $(CYGPATH_W) '$(srcdir)/lib1530.c'; fi`
+
+lib1530-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-first.o -MD -MP -MF $(DEPDIR)/lib1530-first.Tpo -c -o lib1530-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-first.Tpo $(DEPDIR)/lib1530-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1530-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1530-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-first.obj -MD -MP -MF $(DEPDIR)/lib1530-first.Tpo -c -o lib1530-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-first.Tpo $(DEPDIR)/lib1530-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1530-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1530-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-testutil.o -MD -MP -MF $(DEPDIR)/lib1530-testutil.Tpo -c -o lib1530-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-testutil.Tpo $(DEPDIR)/lib1530-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1530-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1530-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-testutil.obj -MD -MP -MF $(DEPDIR)/lib1530-testutil.Tpo -c -o lib1530-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-testutil.Tpo $(DEPDIR)/lib1530-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1530-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1530-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1530-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1530-warnless.Tpo -c -o ../../lib/lib1530-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1530-warnless.Tpo ../../lib/$(DEPDIR)/lib1530-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1530-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1530-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1530-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1530-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1530-warnless.Tpo -c -o ../../lib/lib1530-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1530-warnless.Tpo ../../lib/$(DEPDIR)/lib1530-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1530-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1530-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1531-lib1531.o: lib1531.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-lib1531.o -MD -MP -MF $(DEPDIR)/lib1531-lib1531.Tpo -c -o lib1531-lib1531.o `test -f 'lib1531.c' || echo '$(srcdir)/'`lib1531.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-lib1531.Tpo $(DEPDIR)/lib1531-lib1531.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1531.c' object='lib1531-lib1531.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-lib1531.o `test -f 'lib1531.c' || echo '$(srcdir)/'`lib1531.c
+
+lib1531-lib1531.obj: lib1531.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-lib1531.obj -MD -MP -MF $(DEPDIR)/lib1531-lib1531.Tpo -c -o lib1531-lib1531.obj `if test -f 'lib1531.c'; then $(CYGPATH_W) 'lib1531.c'; else $(CYGPATH_W) '$(srcdir)/lib1531.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-lib1531.Tpo $(DEPDIR)/lib1531-lib1531.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1531.c' object='lib1531-lib1531.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-lib1531.obj `if test -f 'lib1531.c'; then $(CYGPATH_W) 'lib1531.c'; else $(CYGPATH_W) '$(srcdir)/lib1531.c'; fi`
+
+lib1531-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-first.o -MD -MP -MF $(DEPDIR)/lib1531-first.Tpo -c -o lib1531-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-first.Tpo $(DEPDIR)/lib1531-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1531-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1531-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-first.obj -MD -MP -MF $(DEPDIR)/lib1531-first.Tpo -c -o lib1531-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-first.Tpo $(DEPDIR)/lib1531-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1531-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1531-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-testutil.o -MD -MP -MF $(DEPDIR)/lib1531-testutil.Tpo -c -o lib1531-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-testutil.Tpo $(DEPDIR)/lib1531-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1531-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1531-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-testutil.obj -MD -MP -MF $(DEPDIR)/lib1531-testutil.Tpo -c -o lib1531-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-testutil.Tpo $(DEPDIR)/lib1531-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1531-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1531-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1531-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1531-warnless.Tpo -c -o ../../lib/lib1531-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1531-warnless.Tpo ../../lib/$(DEPDIR)/lib1531-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1531-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1531-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1531-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1531-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1531-warnless.Tpo -c -o ../../lib/lib1531-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1531-warnless.Tpo ../../lib/$(DEPDIR)/lib1531-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1531-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1531-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1532-lib1532.o: lib1532.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1532-lib1532.o -MD -MP -MF $(DEPDIR)/lib1532-lib1532.Tpo -c -o lib1532-lib1532.o `test -f 'lib1532.c' || echo '$(srcdir)/'`lib1532.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1532-lib1532.Tpo $(DEPDIR)/lib1532-lib1532.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1532.c' object='lib1532-lib1532.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1532-lib1532.o `test -f 'lib1532.c' || echo '$(srcdir)/'`lib1532.c
+
+lib1532-lib1532.obj: lib1532.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1532-lib1532.obj -MD -MP -MF $(DEPDIR)/lib1532-lib1532.Tpo -c -o lib1532-lib1532.obj `if test -f 'lib1532.c'; then $(CYGPATH_W) 'lib1532.c'; else $(CYGPATH_W) '$(srcdir)/lib1532.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1532-lib1532.Tpo $(DEPDIR)/lib1532-lib1532.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1532.c' object='lib1532-lib1532.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1532-lib1532.obj `if test -f 'lib1532.c'; then $(CYGPATH_W) 'lib1532.c'; else $(CYGPATH_W) '$(srcdir)/lib1532.c'; fi`
+
+lib1532-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1532-first.o -MD -MP -MF $(DEPDIR)/lib1532-first.Tpo -c -o lib1532-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1532-first.Tpo $(DEPDIR)/lib1532-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1532-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1532-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1532-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1532-first.obj -MD -MP -MF $(DEPDIR)/lib1532-first.Tpo -c -o lib1532-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1532-first.Tpo $(DEPDIR)/lib1532-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1532-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1532-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1532-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1532-testutil.o -MD -MP -MF $(DEPDIR)/lib1532-testutil.Tpo -c -o lib1532-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1532-testutil.Tpo $(DEPDIR)/lib1532-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1532-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1532-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1532-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1532-testutil.obj -MD -MP -MF $(DEPDIR)/lib1532-testutil.Tpo -c -o lib1532-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1532-testutil.Tpo $(DEPDIR)/lib1532-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1532-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1532-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1532-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1532-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1532-warnless.Tpo -c -o ../../lib/lib1532-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1532-warnless.Tpo ../../lib/$(DEPDIR)/lib1532-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1532-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1532-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1532-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1532-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1532-warnless.Tpo -c -o ../../lib/lib1532-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1532-warnless.Tpo ../../lib/$(DEPDIR)/lib1532-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1532-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1532-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1533-lib1533.o: lib1533.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1533-lib1533.o -MD -MP -MF $(DEPDIR)/lib1533-lib1533.Tpo -c -o lib1533-lib1533.o `test -f 'lib1533.c' || echo '$(srcdir)/'`lib1533.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1533-lib1533.Tpo $(DEPDIR)/lib1533-lib1533.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1533.c' object='lib1533-lib1533.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1533-lib1533.o `test -f 'lib1533.c' || echo '$(srcdir)/'`lib1533.c
+
+lib1533-lib1533.obj: lib1533.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1533-lib1533.obj -MD -MP -MF $(DEPDIR)/lib1533-lib1533.Tpo -c -o lib1533-lib1533.obj `if test -f 'lib1533.c'; then $(CYGPATH_W) 'lib1533.c'; else $(CYGPATH_W) '$(srcdir)/lib1533.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1533-lib1533.Tpo $(DEPDIR)/lib1533-lib1533.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1533.c' object='lib1533-lib1533.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1533-lib1533.obj `if test -f 'lib1533.c'; then $(CYGPATH_W) 'lib1533.c'; else $(CYGPATH_W) '$(srcdir)/lib1533.c'; fi`
+
+lib1533-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1533-first.o -MD -MP -MF $(DEPDIR)/lib1533-first.Tpo -c -o lib1533-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1533-first.Tpo $(DEPDIR)/lib1533-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1533-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1533-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1533-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1533-first.obj -MD -MP -MF $(DEPDIR)/lib1533-first.Tpo -c -o lib1533-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1533-first.Tpo $(DEPDIR)/lib1533-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1533-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1533-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1533-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1533-testutil.o -MD -MP -MF $(DEPDIR)/lib1533-testutil.Tpo -c -o lib1533-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1533-testutil.Tpo $(DEPDIR)/lib1533-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1533-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1533-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1533-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1533-testutil.obj -MD -MP -MF $(DEPDIR)/lib1533-testutil.Tpo -c -o lib1533-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1533-testutil.Tpo $(DEPDIR)/lib1533-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1533-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1533-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1533-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1533-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1533-warnless.Tpo -c -o ../../lib/lib1533-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1533-warnless.Tpo ../../lib/$(DEPDIR)/lib1533-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1533-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1533-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1533-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1533-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1533-warnless.Tpo -c -o ../../lib/lib1533-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1533-warnless.Tpo ../../lib/$(DEPDIR)/lib1533-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1533-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1533-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1534-lib1534.o: lib1534.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1534-lib1534.o -MD -MP -MF $(DEPDIR)/lib1534-lib1534.Tpo -c -o lib1534-lib1534.o `test -f 'lib1534.c' || echo '$(srcdir)/'`lib1534.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1534-lib1534.Tpo $(DEPDIR)/lib1534-lib1534.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1534.c' object='lib1534-lib1534.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1534-lib1534.o `test -f 'lib1534.c' || echo '$(srcdir)/'`lib1534.c
+
+lib1534-lib1534.obj: lib1534.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1534-lib1534.obj -MD -MP -MF $(DEPDIR)/lib1534-lib1534.Tpo -c -o lib1534-lib1534.obj `if test -f 'lib1534.c'; then $(CYGPATH_W) 'lib1534.c'; else $(CYGPATH_W) '$(srcdir)/lib1534.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1534-lib1534.Tpo $(DEPDIR)/lib1534-lib1534.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1534.c' object='lib1534-lib1534.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1534-lib1534.obj `if test -f 'lib1534.c'; then $(CYGPATH_W) 'lib1534.c'; else $(CYGPATH_W) '$(srcdir)/lib1534.c'; fi`
+
+lib1534-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1534-first.o -MD -MP -MF $(DEPDIR)/lib1534-first.Tpo -c -o lib1534-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1534-first.Tpo $(DEPDIR)/lib1534-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1534-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1534-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1534-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1534-first.obj -MD -MP -MF $(DEPDIR)/lib1534-first.Tpo -c -o lib1534-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1534-first.Tpo $(DEPDIR)/lib1534-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1534-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1534-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1534-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1534-testutil.o -MD -MP -MF $(DEPDIR)/lib1534-testutil.Tpo -c -o lib1534-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1534-testutil.Tpo $(DEPDIR)/lib1534-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1534-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1534-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1534-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1534-testutil.obj -MD -MP -MF $(DEPDIR)/lib1534-testutil.Tpo -c -o lib1534-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1534-testutil.Tpo $(DEPDIR)/lib1534-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1534-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1534-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1534-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1534-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1534-warnless.Tpo -c -o ../../lib/lib1534-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1534-warnless.Tpo ../../lib/$(DEPDIR)/lib1534-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1534-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1534-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1534-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1534-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1534-warnless.Tpo -c -o ../../lib/lib1534-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1534-warnless.Tpo ../../lib/$(DEPDIR)/lib1534-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1534-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1534_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1534-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1535-lib1535.o: lib1535.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1535-lib1535.o -MD -MP -MF $(DEPDIR)/lib1535-lib1535.Tpo -c -o lib1535-lib1535.o `test -f 'lib1535.c' || echo '$(srcdir)/'`lib1535.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1535-lib1535.Tpo $(DEPDIR)/lib1535-lib1535.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1535.c' object='lib1535-lib1535.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1535-lib1535.o `test -f 'lib1535.c' || echo '$(srcdir)/'`lib1535.c
+
+lib1535-lib1535.obj: lib1535.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1535-lib1535.obj -MD -MP -MF $(DEPDIR)/lib1535-lib1535.Tpo -c -o lib1535-lib1535.obj `if test -f 'lib1535.c'; then $(CYGPATH_W) 'lib1535.c'; else $(CYGPATH_W) '$(srcdir)/lib1535.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1535-lib1535.Tpo $(DEPDIR)/lib1535-lib1535.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1535.c' object='lib1535-lib1535.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1535-lib1535.obj `if test -f 'lib1535.c'; then $(CYGPATH_W) 'lib1535.c'; else $(CYGPATH_W) '$(srcdir)/lib1535.c'; fi`
+
+lib1535-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1535-first.o -MD -MP -MF $(DEPDIR)/lib1535-first.Tpo -c -o lib1535-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1535-first.Tpo $(DEPDIR)/lib1535-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1535-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1535-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1535-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1535-first.obj -MD -MP -MF $(DEPDIR)/lib1535-first.Tpo -c -o lib1535-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1535-first.Tpo $(DEPDIR)/lib1535-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1535-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1535-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1535-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1535-testutil.o -MD -MP -MF $(DEPDIR)/lib1535-testutil.Tpo -c -o lib1535-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1535-testutil.Tpo $(DEPDIR)/lib1535-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1535-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1535-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1535-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1535-testutil.obj -MD -MP -MF $(DEPDIR)/lib1535-testutil.Tpo -c -o lib1535-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1535-testutil.Tpo $(DEPDIR)/lib1535-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1535-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1535-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1535-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1535-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1535-warnless.Tpo -c -o ../../lib/lib1535-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1535-warnless.Tpo ../../lib/$(DEPDIR)/lib1535-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1535-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1535-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1535-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1535-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1535-warnless.Tpo -c -o ../../lib/lib1535-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1535-warnless.Tpo ../../lib/$(DEPDIR)/lib1535-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1535-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1535_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1535-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1536-lib1536.o: lib1536.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1536-lib1536.o -MD -MP -MF $(DEPDIR)/lib1536-lib1536.Tpo -c -o lib1536-lib1536.o `test -f 'lib1536.c' || echo '$(srcdir)/'`lib1536.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1536-lib1536.Tpo $(DEPDIR)/lib1536-lib1536.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1536.c' object='lib1536-lib1536.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1536-lib1536.o `test -f 'lib1536.c' || echo '$(srcdir)/'`lib1536.c
+
+lib1536-lib1536.obj: lib1536.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1536-lib1536.obj -MD -MP -MF $(DEPDIR)/lib1536-lib1536.Tpo -c -o lib1536-lib1536.obj `if test -f 'lib1536.c'; then $(CYGPATH_W) 'lib1536.c'; else $(CYGPATH_W) '$(srcdir)/lib1536.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1536-lib1536.Tpo $(DEPDIR)/lib1536-lib1536.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1536.c' object='lib1536-lib1536.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1536-lib1536.obj `if test -f 'lib1536.c'; then $(CYGPATH_W) 'lib1536.c'; else $(CYGPATH_W) '$(srcdir)/lib1536.c'; fi`
+
+lib1536-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1536-first.o -MD -MP -MF $(DEPDIR)/lib1536-first.Tpo -c -o lib1536-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1536-first.Tpo $(DEPDIR)/lib1536-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1536-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1536-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1536-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1536-first.obj -MD -MP -MF $(DEPDIR)/lib1536-first.Tpo -c -o lib1536-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1536-first.Tpo $(DEPDIR)/lib1536-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1536-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1536-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1536-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1536-testutil.o -MD -MP -MF $(DEPDIR)/lib1536-testutil.Tpo -c -o lib1536-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1536-testutil.Tpo $(DEPDIR)/lib1536-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1536-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1536-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1536-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1536-testutil.obj -MD -MP -MF $(DEPDIR)/lib1536-testutil.Tpo -c -o lib1536-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1536-testutil.Tpo $(DEPDIR)/lib1536-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1536-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1536-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1536-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1536-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1536-warnless.Tpo -c -o ../../lib/lib1536-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1536-warnless.Tpo ../../lib/$(DEPDIR)/lib1536-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1536-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1536-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1536-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1536-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1536-warnless.Tpo -c -o ../../lib/lib1536-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1536-warnless.Tpo ../../lib/$(DEPDIR)/lib1536-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1536-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1536-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1537-lib1537.o: lib1537.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1537-lib1537.o -MD -MP -MF $(DEPDIR)/lib1537-lib1537.Tpo -c -o lib1537-lib1537.o `test -f 'lib1537.c' || echo '$(srcdir)/'`lib1537.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1537-lib1537.Tpo $(DEPDIR)/lib1537-lib1537.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1537.c' object='lib1537-lib1537.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1537-lib1537.o `test -f 'lib1537.c' || echo '$(srcdir)/'`lib1537.c
+
+lib1537-lib1537.obj: lib1537.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1537-lib1537.obj -MD -MP -MF $(DEPDIR)/lib1537-lib1537.Tpo -c -o lib1537-lib1537.obj `if test -f 'lib1537.c'; then $(CYGPATH_W) 'lib1537.c'; else $(CYGPATH_W) '$(srcdir)/lib1537.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1537-lib1537.Tpo $(DEPDIR)/lib1537-lib1537.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1537.c' object='lib1537-lib1537.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1537-lib1537.obj `if test -f 'lib1537.c'; then $(CYGPATH_W) 'lib1537.c'; else $(CYGPATH_W) '$(srcdir)/lib1537.c'; fi`
+
+lib1537-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1537-first.o -MD -MP -MF $(DEPDIR)/lib1537-first.Tpo -c -o lib1537-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1537-first.Tpo $(DEPDIR)/lib1537-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1537-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1537-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1537-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1537-first.obj -MD -MP -MF $(DEPDIR)/lib1537-first.Tpo -c -o lib1537-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1537-first.Tpo $(DEPDIR)/lib1537-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1537-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1537-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1537-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1537-testutil.o -MD -MP -MF $(DEPDIR)/lib1537-testutil.Tpo -c -o lib1537-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1537-testutil.Tpo $(DEPDIR)/lib1537-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1537-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1537-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1537-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1537-testutil.obj -MD -MP -MF $(DEPDIR)/lib1537-testutil.Tpo -c -o lib1537-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1537-testutil.Tpo $(DEPDIR)/lib1537-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1537-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1537-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1537-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1537-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1537-warnless.Tpo -c -o ../../lib/lib1537-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1537-warnless.Tpo ../../lib/$(DEPDIR)/lib1537-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1537-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1537-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1537-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1537-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1537-warnless.Tpo -c -o ../../lib/lib1537-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1537-warnless.Tpo ../../lib/$(DEPDIR)/lib1537-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1537-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1537-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1538-lib1538.o: lib1538.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1538-lib1538.o -MD -MP -MF $(DEPDIR)/lib1538-lib1538.Tpo -c -o lib1538-lib1538.o `test -f 'lib1538.c' || echo '$(srcdir)/'`lib1538.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1538-lib1538.Tpo $(DEPDIR)/lib1538-lib1538.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1538.c' object='lib1538-lib1538.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1538-lib1538.o `test -f 'lib1538.c' || echo '$(srcdir)/'`lib1538.c
+
+lib1538-lib1538.obj: lib1538.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1538-lib1538.obj -MD -MP -MF $(DEPDIR)/lib1538-lib1538.Tpo -c -o lib1538-lib1538.obj `if test -f 'lib1538.c'; then $(CYGPATH_W) 'lib1538.c'; else $(CYGPATH_W) '$(srcdir)/lib1538.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1538-lib1538.Tpo $(DEPDIR)/lib1538-lib1538.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1538.c' object='lib1538-lib1538.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1538-lib1538.obj `if test -f 'lib1538.c'; then $(CYGPATH_W) 'lib1538.c'; else $(CYGPATH_W) '$(srcdir)/lib1538.c'; fi`
+
+lib1538-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1538-first.o -MD -MP -MF $(DEPDIR)/lib1538-first.Tpo -c -o lib1538-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1538-first.Tpo $(DEPDIR)/lib1538-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1538-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1538-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1538-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1538-first.obj -MD -MP -MF $(DEPDIR)/lib1538-first.Tpo -c -o lib1538-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1538-first.Tpo $(DEPDIR)/lib1538-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1538-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1538-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1538-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1538-testutil.o -MD -MP -MF $(DEPDIR)/lib1538-testutil.Tpo -c -o lib1538-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1538-testutil.Tpo $(DEPDIR)/lib1538-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1538-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1538-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1538-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1538-testutil.obj -MD -MP -MF $(DEPDIR)/lib1538-testutil.Tpo -c -o lib1538-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1538-testutil.Tpo $(DEPDIR)/lib1538-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1538-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1538-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1538-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1538-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1538-warnless.Tpo -c -o ../../lib/lib1538-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1538-warnless.Tpo ../../lib/$(DEPDIR)/lib1538-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1538-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1538-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1538-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1538-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1538-warnless.Tpo -c -o ../../lib/lib1538-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1538-warnless.Tpo ../../lib/$(DEPDIR)/lib1538-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1538-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1538_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1538-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1540-lib1540.o: lib1540.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1540-lib1540.o -MD -MP -MF $(DEPDIR)/lib1540-lib1540.Tpo -c -o lib1540-lib1540.o `test -f 'lib1540.c' || echo '$(srcdir)/'`lib1540.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1540-lib1540.Tpo $(DEPDIR)/lib1540-lib1540.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1540.c' object='lib1540-lib1540.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1540-lib1540.o `test -f 'lib1540.c' || echo '$(srcdir)/'`lib1540.c
+
+lib1540-lib1540.obj: lib1540.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1540-lib1540.obj -MD -MP -MF $(DEPDIR)/lib1540-lib1540.Tpo -c -o lib1540-lib1540.obj `if test -f 'lib1540.c'; then $(CYGPATH_W) 'lib1540.c'; else $(CYGPATH_W) '$(srcdir)/lib1540.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1540-lib1540.Tpo $(DEPDIR)/lib1540-lib1540.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1540.c' object='lib1540-lib1540.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1540-lib1540.obj `if test -f 'lib1540.c'; then $(CYGPATH_W) 'lib1540.c'; else $(CYGPATH_W) '$(srcdir)/lib1540.c'; fi`
+
+lib1540-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1540-first.o -MD -MP -MF $(DEPDIR)/lib1540-first.Tpo -c -o lib1540-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1540-first.Tpo $(DEPDIR)/lib1540-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1540-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1540-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1540-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1540-first.obj -MD -MP -MF $(DEPDIR)/lib1540-first.Tpo -c -o lib1540-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1540-first.Tpo $(DEPDIR)/lib1540-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1540-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1540-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1540-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1540-testutil.o -MD -MP -MF $(DEPDIR)/lib1540-testutil.Tpo -c -o lib1540-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1540-testutil.Tpo $(DEPDIR)/lib1540-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1540-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1540-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1540-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1540-testutil.obj -MD -MP -MF $(DEPDIR)/lib1540-testutil.Tpo -c -o lib1540-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1540-testutil.Tpo $(DEPDIR)/lib1540-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1540-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1540-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1540-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1540-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1540-warnless.Tpo -c -o ../../lib/lib1540-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1540-warnless.Tpo ../../lib/$(DEPDIR)/lib1540-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1540-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1540-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1540-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1540-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1540-warnless.Tpo -c -o ../../lib/lib1540-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1540-warnless.Tpo ../../lib/$(DEPDIR)/lib1540-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1540-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1540-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1541-lib1541.o: lib1541.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1541-lib1541.o -MD -MP -MF $(DEPDIR)/lib1541-lib1541.Tpo -c -o lib1541-lib1541.o `test -f 'lib1541.c' || echo '$(srcdir)/'`lib1541.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1541-lib1541.Tpo $(DEPDIR)/lib1541-lib1541.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1541.c' object='lib1541-lib1541.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1541-lib1541.o `test -f 'lib1541.c' || echo '$(srcdir)/'`lib1541.c
+
+lib1541-lib1541.obj: lib1541.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1541-lib1541.obj -MD -MP -MF $(DEPDIR)/lib1541-lib1541.Tpo -c -o lib1541-lib1541.obj `if test -f 'lib1541.c'; then $(CYGPATH_W) 'lib1541.c'; else $(CYGPATH_W) '$(srcdir)/lib1541.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1541-lib1541.Tpo $(DEPDIR)/lib1541-lib1541.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1541.c' object='lib1541-lib1541.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1541-lib1541.obj `if test -f 'lib1541.c'; then $(CYGPATH_W) 'lib1541.c'; else $(CYGPATH_W) '$(srcdir)/lib1541.c'; fi`
+
+lib1541-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1541-first.o -MD -MP -MF $(DEPDIR)/lib1541-first.Tpo -c -o lib1541-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1541-first.Tpo $(DEPDIR)/lib1541-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1541-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1541-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1541-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1541-first.obj -MD -MP -MF $(DEPDIR)/lib1541-first.Tpo -c -o lib1541-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1541-first.Tpo $(DEPDIR)/lib1541-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1541-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1541-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1541-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1541-testutil.o -MD -MP -MF $(DEPDIR)/lib1541-testutil.Tpo -c -o lib1541-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1541-testutil.Tpo $(DEPDIR)/lib1541-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1541-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1541-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1541-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1541-testutil.obj -MD -MP -MF $(DEPDIR)/lib1541-testutil.Tpo -c -o lib1541-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1541-testutil.Tpo $(DEPDIR)/lib1541-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1541-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1541-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1541-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1541-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1541-warnless.Tpo -c -o ../../lib/lib1541-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1541-warnless.Tpo ../../lib/$(DEPDIR)/lib1541-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1541-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1541-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1541-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1541-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1541-warnless.Tpo -c -o ../../lib/lib1541-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1541-warnless.Tpo ../../lib/$(DEPDIR)/lib1541-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1541-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1541-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib1900-lib1900.o: lib1900.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-lib1900.o -MD -MP -MF $(DEPDIR)/lib1900-lib1900.Tpo -c -o lib1900-lib1900.o `test -f 'lib1900.c' || echo '$(srcdir)/'`lib1900.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-lib1900.Tpo $(DEPDIR)/lib1900-lib1900.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1900.c' object='lib1900-lib1900.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1900-lib1900.o `test -f 'lib1900.c' || echo '$(srcdir)/'`lib1900.c
+
+lib1900-lib1900.obj: lib1900.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-lib1900.obj -MD -MP -MF $(DEPDIR)/lib1900-lib1900.Tpo -c -o lib1900-lib1900.obj `if test -f 'lib1900.c'; then $(CYGPATH_W) 'lib1900.c'; else $(CYGPATH_W) '$(srcdir)/lib1900.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-lib1900.Tpo $(DEPDIR)/lib1900-lib1900.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib1900.c' object='lib1900-lib1900.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1900-lib1900.obj `if test -f 'lib1900.c'; then $(CYGPATH_W) 'lib1900.c'; else $(CYGPATH_W) '$(srcdir)/lib1900.c'; fi`
+
+lib1900-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-first.o -MD -MP -MF $(DEPDIR)/lib1900-first.Tpo -c -o lib1900-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-first.Tpo $(DEPDIR)/lib1900-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1900-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1900-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib1900-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-first.obj -MD -MP -MF $(DEPDIR)/lib1900-first.Tpo -c -o lib1900-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-first.Tpo $(DEPDIR)/lib1900-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib1900-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1900-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib1900-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-testutil.o -MD -MP -MF $(DEPDIR)/lib1900-testutil.Tpo -c -o lib1900-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-testutil.Tpo $(DEPDIR)/lib1900-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1900-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1900-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib1900-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-testutil.obj -MD -MP -MF $(DEPDIR)/lib1900-testutil.Tpo -c -o lib1900-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-testutil.Tpo $(DEPDIR)/lib1900-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib1900-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1900-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib1900-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1900-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1900-warnless.Tpo -c -o ../../lib/lib1900-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1900-warnless.Tpo ../../lib/$(DEPDIR)/lib1900-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1900-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1900-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib1900-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1900-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1900-warnless.Tpo -c -o ../../lib/lib1900-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1900-warnless.Tpo ../../lib/$(DEPDIR)/lib1900-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1900-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1900-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib2033-libntlmconnect.o: libntlmconnect.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib2033-libntlmconnect.o -MD -MP -MF $(DEPDIR)/lib2033-libntlmconnect.Tpo -c -o lib2033-libntlmconnect.o `test -f 'libntlmconnect.c' || echo '$(srcdir)/'`libntlmconnect.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib2033-libntlmconnect.Tpo $(DEPDIR)/lib2033-libntlmconnect.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libntlmconnect.c' object='lib2033-libntlmconnect.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib2033-libntlmconnect.o `test -f 'libntlmconnect.c' || echo '$(srcdir)/'`libntlmconnect.c
+
+lib2033-libntlmconnect.obj: libntlmconnect.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib2033-libntlmconnect.obj -MD -MP -MF $(DEPDIR)/lib2033-libntlmconnect.Tpo -c -o lib2033-libntlmconnect.obj `if test -f 'libntlmconnect.c'; then $(CYGPATH_W) 'libntlmconnect.c'; else $(CYGPATH_W) '$(srcdir)/libntlmconnect.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib2033-libntlmconnect.Tpo $(DEPDIR)/lib2033-libntlmconnect.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libntlmconnect.c' object='lib2033-libntlmconnect.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib2033-libntlmconnect.obj `if test -f 'libntlmconnect.c'; then $(CYGPATH_W) 'libntlmconnect.c'; else $(CYGPATH_W) '$(srcdir)/libntlmconnect.c'; fi`
+
+lib2033-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib2033-first.o -MD -MP -MF $(DEPDIR)/lib2033-first.Tpo -c -o lib2033-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib2033-first.Tpo $(DEPDIR)/lib2033-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib2033-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib2033-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib2033-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib2033-first.obj -MD -MP -MF $(DEPDIR)/lib2033-first.Tpo -c -o lib2033-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib2033-first.Tpo $(DEPDIR)/lib2033-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib2033-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib2033-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib2033-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib2033-testutil.o -MD -MP -MF $(DEPDIR)/lib2033-testutil.Tpo -c -o lib2033-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib2033-testutil.Tpo $(DEPDIR)/lib2033-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib2033-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib2033-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib2033-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib2033-testutil.obj -MD -MP -MF $(DEPDIR)/lib2033-testutil.Tpo -c -o lib2033-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib2033-testutil.Tpo $(DEPDIR)/lib2033-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib2033-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib2033-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib2033-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib2033-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib2033-warnless.Tpo -c -o ../../lib/lib2033-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib2033-warnless.Tpo ../../lib/$(DEPDIR)/lib2033-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib2033-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib2033-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib2033-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib2033-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib2033-warnless.Tpo -c -o ../../lib/lib2033-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib2033-warnless.Tpo ../../lib/$(DEPDIR)/lib2033-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib2033-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib2033_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib2033-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib500-lib500.o: lib500.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-lib500.o -MD -MP -MF $(DEPDIR)/lib500-lib500.Tpo -c -o lib500-lib500.o `test -f 'lib500.c' || echo '$(srcdir)/'`lib500.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-lib500.Tpo $(DEPDIR)/lib500-lib500.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib500.c' object='lib500-lib500.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-lib500.o `test -f 'lib500.c' || echo '$(srcdir)/'`lib500.c
+
+lib500-lib500.obj: lib500.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-lib500.obj -MD -MP -MF $(DEPDIR)/lib500-lib500.Tpo -c -o lib500-lib500.obj `if test -f 'lib500.c'; then $(CYGPATH_W) 'lib500.c'; else $(CYGPATH_W) '$(srcdir)/lib500.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-lib500.Tpo $(DEPDIR)/lib500-lib500.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib500.c' object='lib500-lib500.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-lib500.obj `if test -f 'lib500.c'; then $(CYGPATH_W) 'lib500.c'; else $(CYGPATH_W) '$(srcdir)/lib500.c'; fi`
+
+lib500-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-first.o -MD -MP -MF $(DEPDIR)/lib500-first.Tpo -c -o lib500-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-first.Tpo $(DEPDIR)/lib500-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib500-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib500-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-first.obj -MD -MP -MF $(DEPDIR)/lib500-first.Tpo -c -o lib500-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-first.Tpo $(DEPDIR)/lib500-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib500-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib500-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-testutil.o -MD -MP -MF $(DEPDIR)/lib500-testutil.Tpo -c -o lib500-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-testutil.Tpo $(DEPDIR)/lib500-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib500-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib500-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-testutil.obj -MD -MP -MF $(DEPDIR)/lib500-testutil.Tpo -c -o lib500-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-testutil.Tpo $(DEPDIR)/lib500-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib500-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+lib500-testtrace.o: testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-testtrace.o -MD -MP -MF $(DEPDIR)/lib500-testtrace.Tpo -c -o lib500-testtrace.o `test -f 'testtrace.c' || echo '$(srcdir)/'`testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-testtrace.Tpo $(DEPDIR)/lib500-testtrace.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testtrace.c' object='lib500-testtrace.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-testtrace.o `test -f 'testtrace.c' || echo '$(srcdir)/'`testtrace.c
+
+lib500-testtrace.obj: testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib500-testtrace.obj -MD -MP -MF $(DEPDIR)/lib500-testtrace.Tpo -c -o lib500-testtrace.obj `if test -f 'testtrace.c'; then $(CYGPATH_W) 'testtrace.c'; else $(CYGPATH_W) '$(srcdir)/testtrace.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib500-testtrace.Tpo $(DEPDIR)/lib500-testtrace.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testtrace.c' object='lib500-testtrace.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib500_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib500-testtrace.obj `if test -f 'testtrace.c'; then $(CYGPATH_W) 'testtrace.c'; else $(CYGPATH_W) '$(srcdir)/testtrace.c'; fi`
+
+lib501-lib501.o: lib501.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib501-lib501.o -MD -MP -MF $(DEPDIR)/lib501-lib501.Tpo -c -o lib501-lib501.o `test -f 'lib501.c' || echo '$(srcdir)/'`lib501.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib501-lib501.Tpo $(DEPDIR)/lib501-lib501.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib501.c' object='lib501-lib501.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib501-lib501.o `test -f 'lib501.c' || echo '$(srcdir)/'`lib501.c
+
+lib501-lib501.obj: lib501.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib501-lib501.obj -MD -MP -MF $(DEPDIR)/lib501-lib501.Tpo -c -o lib501-lib501.obj `if test -f 'lib501.c'; then $(CYGPATH_W) 'lib501.c'; else $(CYGPATH_W) '$(srcdir)/lib501.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib501-lib501.Tpo $(DEPDIR)/lib501-lib501.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib501.c' object='lib501-lib501.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib501-lib501.obj `if test -f 'lib501.c'; then $(CYGPATH_W) 'lib501.c'; else $(CYGPATH_W) '$(srcdir)/lib501.c'; fi`
+
+lib501-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib501-first.o -MD -MP -MF $(DEPDIR)/lib501-first.Tpo -c -o lib501-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib501-first.Tpo $(DEPDIR)/lib501-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib501-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib501-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib501-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib501-first.obj -MD -MP -MF $(DEPDIR)/lib501-first.Tpo -c -o lib501-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib501-first.Tpo $(DEPDIR)/lib501-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib501-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib501_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib501-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib502-lib502.o: lib502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib502-lib502.o -MD -MP -MF $(DEPDIR)/lib502-lib502.Tpo -c -o lib502-lib502.o `test -f 'lib502.c' || echo '$(srcdir)/'`lib502.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib502-lib502.Tpo $(DEPDIR)/lib502-lib502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib502.c' object='lib502-lib502.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib502-lib502.o `test -f 'lib502.c' || echo '$(srcdir)/'`lib502.c
+
+lib502-lib502.obj: lib502.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib502-lib502.obj -MD -MP -MF $(DEPDIR)/lib502-lib502.Tpo -c -o lib502-lib502.obj `if test -f 'lib502.c'; then $(CYGPATH_W) 'lib502.c'; else $(CYGPATH_W) '$(srcdir)/lib502.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib502-lib502.Tpo $(DEPDIR)/lib502-lib502.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib502.c' object='lib502-lib502.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib502-lib502.obj `if test -f 'lib502.c'; then $(CYGPATH_W) 'lib502.c'; else $(CYGPATH_W) '$(srcdir)/lib502.c'; fi`
+
+lib502-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib502-first.o -MD -MP -MF $(DEPDIR)/lib502-first.Tpo -c -o lib502-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib502-first.Tpo $(DEPDIR)/lib502-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib502-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib502-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib502-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib502-first.obj -MD -MP -MF $(DEPDIR)/lib502-first.Tpo -c -o lib502-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib502-first.Tpo $(DEPDIR)/lib502-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib502-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib502-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib502-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib502-testutil.o -MD -MP -MF $(DEPDIR)/lib502-testutil.Tpo -c -o lib502-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib502-testutil.Tpo $(DEPDIR)/lib502-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib502-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib502-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib502-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib502-testutil.obj -MD -MP -MF $(DEPDIR)/lib502-testutil.Tpo -c -o lib502-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib502-testutil.Tpo $(DEPDIR)/lib502-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib502-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib502-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib502-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib502-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib502-warnless.Tpo -c -o ../../lib/lib502-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib502-warnless.Tpo ../../lib/$(DEPDIR)/lib502-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib502-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib502-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib502-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib502-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib502-warnless.Tpo -c -o ../../lib/lib502-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib502-warnless.Tpo ../../lib/$(DEPDIR)/lib502-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib502-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib502_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib502-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib503-lib503.o: lib503.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib503-lib503.o -MD -MP -MF $(DEPDIR)/lib503-lib503.Tpo -c -o lib503-lib503.o `test -f 'lib503.c' || echo '$(srcdir)/'`lib503.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib503-lib503.Tpo $(DEPDIR)/lib503-lib503.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib503.c' object='lib503-lib503.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib503-lib503.o `test -f 'lib503.c' || echo '$(srcdir)/'`lib503.c
+
+lib503-lib503.obj: lib503.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib503-lib503.obj -MD -MP -MF $(DEPDIR)/lib503-lib503.Tpo -c -o lib503-lib503.obj `if test -f 'lib503.c'; then $(CYGPATH_W) 'lib503.c'; else $(CYGPATH_W) '$(srcdir)/lib503.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib503-lib503.Tpo $(DEPDIR)/lib503-lib503.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib503.c' object='lib503-lib503.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib503-lib503.obj `if test -f 'lib503.c'; then $(CYGPATH_W) 'lib503.c'; else $(CYGPATH_W) '$(srcdir)/lib503.c'; fi`
+
+lib503-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib503-first.o -MD -MP -MF $(DEPDIR)/lib503-first.Tpo -c -o lib503-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib503-first.Tpo $(DEPDIR)/lib503-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib503-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib503-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib503-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib503-first.obj -MD -MP -MF $(DEPDIR)/lib503-first.Tpo -c -o lib503-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib503-first.Tpo $(DEPDIR)/lib503-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib503-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib503-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib503-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib503-testutil.o -MD -MP -MF $(DEPDIR)/lib503-testutil.Tpo -c -o lib503-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib503-testutil.Tpo $(DEPDIR)/lib503-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib503-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib503-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib503-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib503-testutil.obj -MD -MP -MF $(DEPDIR)/lib503-testutil.Tpo -c -o lib503-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib503-testutil.Tpo $(DEPDIR)/lib503-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib503-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib503-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib503-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib503-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib503-warnless.Tpo -c -o ../../lib/lib503-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib503-warnless.Tpo ../../lib/$(DEPDIR)/lib503-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib503-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib503-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib503-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib503-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib503-warnless.Tpo -c -o ../../lib/lib503-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib503-warnless.Tpo ../../lib/$(DEPDIR)/lib503-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib503-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib503_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib503-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib504-lib504.o: lib504.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib504-lib504.o -MD -MP -MF $(DEPDIR)/lib504-lib504.Tpo -c -o lib504-lib504.o `test -f 'lib504.c' || echo '$(srcdir)/'`lib504.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib504-lib504.Tpo $(DEPDIR)/lib504-lib504.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib504.c' object='lib504-lib504.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib504-lib504.o `test -f 'lib504.c' || echo '$(srcdir)/'`lib504.c
+
+lib504-lib504.obj: lib504.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib504-lib504.obj -MD -MP -MF $(DEPDIR)/lib504-lib504.Tpo -c -o lib504-lib504.obj `if test -f 'lib504.c'; then $(CYGPATH_W) 'lib504.c'; else $(CYGPATH_W) '$(srcdir)/lib504.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib504-lib504.Tpo $(DEPDIR)/lib504-lib504.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib504.c' object='lib504-lib504.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib504-lib504.obj `if test -f 'lib504.c'; then $(CYGPATH_W) 'lib504.c'; else $(CYGPATH_W) '$(srcdir)/lib504.c'; fi`
+
+lib504-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib504-first.o -MD -MP -MF $(DEPDIR)/lib504-first.Tpo -c -o lib504-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib504-first.Tpo $(DEPDIR)/lib504-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib504-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib504-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib504-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib504-first.obj -MD -MP -MF $(DEPDIR)/lib504-first.Tpo -c -o lib504-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib504-first.Tpo $(DEPDIR)/lib504-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib504-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib504-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib504-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib504-testutil.o -MD -MP -MF $(DEPDIR)/lib504-testutil.Tpo -c -o lib504-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib504-testutil.Tpo $(DEPDIR)/lib504-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib504-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib504-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib504-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib504-testutil.obj -MD -MP -MF $(DEPDIR)/lib504-testutil.Tpo -c -o lib504-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib504-testutil.Tpo $(DEPDIR)/lib504-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib504-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib504-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib504-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib504-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib504-warnless.Tpo -c -o ../../lib/lib504-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib504-warnless.Tpo ../../lib/$(DEPDIR)/lib504-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib504-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib504-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib504-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib504-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib504-warnless.Tpo -c -o ../../lib/lib504-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib504-warnless.Tpo ../../lib/$(DEPDIR)/lib504-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib504-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib504_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib504-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib505-lib505.o: lib505.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib505-lib505.o -MD -MP -MF $(DEPDIR)/lib505-lib505.Tpo -c -o lib505-lib505.o `test -f 'lib505.c' || echo '$(srcdir)/'`lib505.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib505-lib505.Tpo $(DEPDIR)/lib505-lib505.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib505.c' object='lib505-lib505.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib505-lib505.o `test -f 'lib505.c' || echo '$(srcdir)/'`lib505.c
+
+lib505-lib505.obj: lib505.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib505-lib505.obj -MD -MP -MF $(DEPDIR)/lib505-lib505.Tpo -c -o lib505-lib505.obj `if test -f 'lib505.c'; then $(CYGPATH_W) 'lib505.c'; else $(CYGPATH_W) '$(srcdir)/lib505.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib505-lib505.Tpo $(DEPDIR)/lib505-lib505.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib505.c' object='lib505-lib505.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib505-lib505.obj `if test -f 'lib505.c'; then $(CYGPATH_W) 'lib505.c'; else $(CYGPATH_W) '$(srcdir)/lib505.c'; fi`
+
+lib505-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib505-first.o -MD -MP -MF $(DEPDIR)/lib505-first.Tpo -c -o lib505-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib505-first.Tpo $(DEPDIR)/lib505-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib505-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib505-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib505-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib505-first.obj -MD -MP -MF $(DEPDIR)/lib505-first.Tpo -c -o lib505-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib505-first.Tpo $(DEPDIR)/lib505-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib505-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib505_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib505-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib506-lib506.o: lib506.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib506-lib506.o -MD -MP -MF $(DEPDIR)/lib506-lib506.Tpo -c -o lib506-lib506.o `test -f 'lib506.c' || echo '$(srcdir)/'`lib506.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib506-lib506.Tpo $(DEPDIR)/lib506-lib506.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib506.c' object='lib506-lib506.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib506-lib506.o `test -f 'lib506.c' || echo '$(srcdir)/'`lib506.c
+
+lib506-lib506.obj: lib506.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib506-lib506.obj -MD -MP -MF $(DEPDIR)/lib506-lib506.Tpo -c -o lib506-lib506.obj `if test -f 'lib506.c'; then $(CYGPATH_W) 'lib506.c'; else $(CYGPATH_W) '$(srcdir)/lib506.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib506-lib506.Tpo $(DEPDIR)/lib506-lib506.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib506.c' object='lib506-lib506.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib506-lib506.obj `if test -f 'lib506.c'; then $(CYGPATH_W) 'lib506.c'; else $(CYGPATH_W) '$(srcdir)/lib506.c'; fi`
+
+lib506-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib506-first.o -MD -MP -MF $(DEPDIR)/lib506-first.Tpo -c -o lib506-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib506-first.Tpo $(DEPDIR)/lib506-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib506-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib506-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib506-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib506-first.obj -MD -MP -MF $(DEPDIR)/lib506-first.Tpo -c -o lib506-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib506-first.Tpo $(DEPDIR)/lib506-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib506-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib506_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib506-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib507-lib507.o: lib507.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib507-lib507.o -MD -MP -MF $(DEPDIR)/lib507-lib507.Tpo -c -o lib507-lib507.o `test -f 'lib507.c' || echo '$(srcdir)/'`lib507.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib507-lib507.Tpo $(DEPDIR)/lib507-lib507.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib507.c' object='lib507-lib507.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib507-lib507.o `test -f 'lib507.c' || echo '$(srcdir)/'`lib507.c
+
+lib507-lib507.obj: lib507.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib507-lib507.obj -MD -MP -MF $(DEPDIR)/lib507-lib507.Tpo -c -o lib507-lib507.obj `if test -f 'lib507.c'; then $(CYGPATH_W) 'lib507.c'; else $(CYGPATH_W) '$(srcdir)/lib507.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib507-lib507.Tpo $(DEPDIR)/lib507-lib507.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib507.c' object='lib507-lib507.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib507-lib507.obj `if test -f 'lib507.c'; then $(CYGPATH_W) 'lib507.c'; else $(CYGPATH_W) '$(srcdir)/lib507.c'; fi`
+
+lib507-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib507-first.o -MD -MP -MF $(DEPDIR)/lib507-first.Tpo -c -o lib507-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib507-first.Tpo $(DEPDIR)/lib507-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib507-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib507-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib507-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib507-first.obj -MD -MP -MF $(DEPDIR)/lib507-first.Tpo -c -o lib507-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib507-first.Tpo $(DEPDIR)/lib507-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib507-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib507-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib507-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib507-testutil.o -MD -MP -MF $(DEPDIR)/lib507-testutil.Tpo -c -o lib507-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib507-testutil.Tpo $(DEPDIR)/lib507-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib507-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib507-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib507-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib507-testutil.obj -MD -MP -MF $(DEPDIR)/lib507-testutil.Tpo -c -o lib507-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib507-testutil.Tpo $(DEPDIR)/lib507-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib507-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib507-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib507-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib507-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib507-warnless.Tpo -c -o ../../lib/lib507-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib507-warnless.Tpo ../../lib/$(DEPDIR)/lib507-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib507-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib507-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib507-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib507-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib507-warnless.Tpo -c -o ../../lib/lib507-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib507-warnless.Tpo ../../lib/$(DEPDIR)/lib507-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib507-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib507_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib507-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib508-lib508.o: lib508.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib508-lib508.o -MD -MP -MF $(DEPDIR)/lib508-lib508.Tpo -c -o lib508-lib508.o `test -f 'lib508.c' || echo '$(srcdir)/'`lib508.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib508-lib508.Tpo $(DEPDIR)/lib508-lib508.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib508.c' object='lib508-lib508.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib508-lib508.o `test -f 'lib508.c' || echo '$(srcdir)/'`lib508.c
+
+lib508-lib508.obj: lib508.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib508-lib508.obj -MD -MP -MF $(DEPDIR)/lib508-lib508.Tpo -c -o lib508-lib508.obj `if test -f 'lib508.c'; then $(CYGPATH_W) 'lib508.c'; else $(CYGPATH_W) '$(srcdir)/lib508.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib508-lib508.Tpo $(DEPDIR)/lib508-lib508.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib508.c' object='lib508-lib508.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib508-lib508.obj `if test -f 'lib508.c'; then $(CYGPATH_W) 'lib508.c'; else $(CYGPATH_W) '$(srcdir)/lib508.c'; fi`
+
+lib508-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib508-first.o -MD -MP -MF $(DEPDIR)/lib508-first.Tpo -c -o lib508-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib508-first.Tpo $(DEPDIR)/lib508-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib508-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib508-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib508-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib508-first.obj -MD -MP -MF $(DEPDIR)/lib508-first.Tpo -c -o lib508-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib508-first.Tpo $(DEPDIR)/lib508-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib508-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib508_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib508-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib509-lib509.o: lib509.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib509-lib509.o -MD -MP -MF $(DEPDIR)/lib509-lib509.Tpo -c -o lib509-lib509.o `test -f 'lib509.c' || echo '$(srcdir)/'`lib509.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib509-lib509.Tpo $(DEPDIR)/lib509-lib509.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib509.c' object='lib509-lib509.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib509-lib509.o `test -f 'lib509.c' || echo '$(srcdir)/'`lib509.c
+
+lib509-lib509.obj: lib509.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib509-lib509.obj -MD -MP -MF $(DEPDIR)/lib509-lib509.Tpo -c -o lib509-lib509.obj `if test -f 'lib509.c'; then $(CYGPATH_W) 'lib509.c'; else $(CYGPATH_W) '$(srcdir)/lib509.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib509-lib509.Tpo $(DEPDIR)/lib509-lib509.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib509.c' object='lib509-lib509.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib509-lib509.obj `if test -f 'lib509.c'; then $(CYGPATH_W) 'lib509.c'; else $(CYGPATH_W) '$(srcdir)/lib509.c'; fi`
+
+lib509-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib509-first.o -MD -MP -MF $(DEPDIR)/lib509-first.Tpo -c -o lib509-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib509-first.Tpo $(DEPDIR)/lib509-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib509-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib509-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib509-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib509-first.obj -MD -MP -MF $(DEPDIR)/lib509-first.Tpo -c -o lib509-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib509-first.Tpo $(DEPDIR)/lib509-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib509-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib509_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib509-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib510-lib510.o: lib510.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib510-lib510.o -MD -MP -MF $(DEPDIR)/lib510-lib510.Tpo -c -o lib510-lib510.o `test -f 'lib510.c' || echo '$(srcdir)/'`lib510.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib510-lib510.Tpo $(DEPDIR)/lib510-lib510.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib510.c' object='lib510-lib510.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib510-lib510.o `test -f 'lib510.c' || echo '$(srcdir)/'`lib510.c
+
+lib510-lib510.obj: lib510.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib510-lib510.obj -MD -MP -MF $(DEPDIR)/lib510-lib510.Tpo -c -o lib510-lib510.obj `if test -f 'lib510.c'; then $(CYGPATH_W) 'lib510.c'; else $(CYGPATH_W) '$(srcdir)/lib510.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib510-lib510.Tpo $(DEPDIR)/lib510-lib510.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib510.c' object='lib510-lib510.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib510-lib510.obj `if test -f 'lib510.c'; then $(CYGPATH_W) 'lib510.c'; else $(CYGPATH_W) '$(srcdir)/lib510.c'; fi`
+
+lib510-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib510-first.o -MD -MP -MF $(DEPDIR)/lib510-first.Tpo -c -o lib510-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib510-first.Tpo $(DEPDIR)/lib510-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib510-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib510-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib510-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib510-first.obj -MD -MP -MF $(DEPDIR)/lib510-first.Tpo -c -o lib510-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib510-first.Tpo $(DEPDIR)/lib510-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib510-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib510_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib510-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib511-lib511.o: lib511.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib511-lib511.o -MD -MP -MF $(DEPDIR)/lib511-lib511.Tpo -c -o lib511-lib511.o `test -f 'lib511.c' || echo '$(srcdir)/'`lib511.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib511-lib511.Tpo $(DEPDIR)/lib511-lib511.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib511.c' object='lib511-lib511.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib511-lib511.o `test -f 'lib511.c' || echo '$(srcdir)/'`lib511.c
+
+lib511-lib511.obj: lib511.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib511-lib511.obj -MD -MP -MF $(DEPDIR)/lib511-lib511.Tpo -c -o lib511-lib511.obj `if test -f 'lib511.c'; then $(CYGPATH_W) 'lib511.c'; else $(CYGPATH_W) '$(srcdir)/lib511.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib511-lib511.Tpo $(DEPDIR)/lib511-lib511.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib511.c' object='lib511-lib511.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib511-lib511.obj `if test -f 'lib511.c'; then $(CYGPATH_W) 'lib511.c'; else $(CYGPATH_W) '$(srcdir)/lib511.c'; fi`
+
+lib511-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib511-first.o -MD -MP -MF $(DEPDIR)/lib511-first.Tpo -c -o lib511-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib511-first.Tpo $(DEPDIR)/lib511-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib511-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib511-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib511-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib511-first.obj -MD -MP -MF $(DEPDIR)/lib511-first.Tpo -c -o lib511-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib511-first.Tpo $(DEPDIR)/lib511-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib511-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib511_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib511-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib512-lib512.o: lib512.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib512-lib512.o -MD -MP -MF $(DEPDIR)/lib512-lib512.Tpo -c -o lib512-lib512.o `test -f 'lib512.c' || echo '$(srcdir)/'`lib512.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib512-lib512.Tpo $(DEPDIR)/lib512-lib512.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib512.c' object='lib512-lib512.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib512-lib512.o `test -f 'lib512.c' || echo '$(srcdir)/'`lib512.c
+
+lib512-lib512.obj: lib512.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib512-lib512.obj -MD -MP -MF $(DEPDIR)/lib512-lib512.Tpo -c -o lib512-lib512.obj `if test -f 'lib512.c'; then $(CYGPATH_W) 'lib512.c'; else $(CYGPATH_W) '$(srcdir)/lib512.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib512-lib512.Tpo $(DEPDIR)/lib512-lib512.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib512.c' object='lib512-lib512.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib512-lib512.obj `if test -f 'lib512.c'; then $(CYGPATH_W) 'lib512.c'; else $(CYGPATH_W) '$(srcdir)/lib512.c'; fi`
+
+lib512-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib512-first.o -MD -MP -MF $(DEPDIR)/lib512-first.Tpo -c -o lib512-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib512-first.Tpo $(DEPDIR)/lib512-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib512-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib512-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib512-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib512-first.obj -MD -MP -MF $(DEPDIR)/lib512-first.Tpo -c -o lib512-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib512-first.Tpo $(DEPDIR)/lib512-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib512-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib512_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib512-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib513-lib513.o: lib513.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib513-lib513.o -MD -MP -MF $(DEPDIR)/lib513-lib513.Tpo -c -o lib513-lib513.o `test -f 'lib513.c' || echo '$(srcdir)/'`lib513.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib513-lib513.Tpo $(DEPDIR)/lib513-lib513.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib513.c' object='lib513-lib513.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib513-lib513.o `test -f 'lib513.c' || echo '$(srcdir)/'`lib513.c
+
+lib513-lib513.obj: lib513.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib513-lib513.obj -MD -MP -MF $(DEPDIR)/lib513-lib513.Tpo -c -o lib513-lib513.obj `if test -f 'lib513.c'; then $(CYGPATH_W) 'lib513.c'; else $(CYGPATH_W) '$(srcdir)/lib513.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib513-lib513.Tpo $(DEPDIR)/lib513-lib513.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib513.c' object='lib513-lib513.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib513-lib513.obj `if test -f 'lib513.c'; then $(CYGPATH_W) 'lib513.c'; else $(CYGPATH_W) '$(srcdir)/lib513.c'; fi`
+
+lib513-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib513-first.o -MD -MP -MF $(DEPDIR)/lib513-first.Tpo -c -o lib513-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib513-first.Tpo $(DEPDIR)/lib513-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib513-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib513-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib513-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib513-first.obj -MD -MP -MF $(DEPDIR)/lib513-first.Tpo -c -o lib513-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib513-first.Tpo $(DEPDIR)/lib513-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib513-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib513_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib513-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib514-lib514.o: lib514.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib514-lib514.o -MD -MP -MF $(DEPDIR)/lib514-lib514.Tpo -c -o lib514-lib514.o `test -f 'lib514.c' || echo '$(srcdir)/'`lib514.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib514-lib514.Tpo $(DEPDIR)/lib514-lib514.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib514.c' object='lib514-lib514.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib514-lib514.o `test -f 'lib514.c' || echo '$(srcdir)/'`lib514.c
+
+lib514-lib514.obj: lib514.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib514-lib514.obj -MD -MP -MF $(DEPDIR)/lib514-lib514.Tpo -c -o lib514-lib514.obj `if test -f 'lib514.c'; then $(CYGPATH_W) 'lib514.c'; else $(CYGPATH_W) '$(srcdir)/lib514.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib514-lib514.Tpo $(DEPDIR)/lib514-lib514.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib514.c' object='lib514-lib514.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib514-lib514.obj `if test -f 'lib514.c'; then $(CYGPATH_W) 'lib514.c'; else $(CYGPATH_W) '$(srcdir)/lib514.c'; fi`
+
+lib514-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib514-first.o -MD -MP -MF $(DEPDIR)/lib514-first.Tpo -c -o lib514-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib514-first.Tpo $(DEPDIR)/lib514-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib514-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib514-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib514-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib514-first.obj -MD -MP -MF $(DEPDIR)/lib514-first.Tpo -c -o lib514-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib514-first.Tpo $(DEPDIR)/lib514-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib514-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib514_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib514-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib515-lib515.o: lib515.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib515-lib515.o -MD -MP -MF $(DEPDIR)/lib515-lib515.Tpo -c -o lib515-lib515.o `test -f 'lib515.c' || echo '$(srcdir)/'`lib515.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib515-lib515.Tpo $(DEPDIR)/lib515-lib515.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib515.c' object='lib515-lib515.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib515-lib515.o `test -f 'lib515.c' || echo '$(srcdir)/'`lib515.c
+
+lib515-lib515.obj: lib515.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib515-lib515.obj -MD -MP -MF $(DEPDIR)/lib515-lib515.Tpo -c -o lib515-lib515.obj `if test -f 'lib515.c'; then $(CYGPATH_W) 'lib515.c'; else $(CYGPATH_W) '$(srcdir)/lib515.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib515-lib515.Tpo $(DEPDIR)/lib515-lib515.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib515.c' object='lib515-lib515.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib515-lib515.obj `if test -f 'lib515.c'; then $(CYGPATH_W) 'lib515.c'; else $(CYGPATH_W) '$(srcdir)/lib515.c'; fi`
+
+lib515-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib515-first.o -MD -MP -MF $(DEPDIR)/lib515-first.Tpo -c -o lib515-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib515-first.Tpo $(DEPDIR)/lib515-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib515-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib515-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib515-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib515-first.obj -MD -MP -MF $(DEPDIR)/lib515-first.Tpo -c -o lib515-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib515-first.Tpo $(DEPDIR)/lib515-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib515-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib515_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib515-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib516-lib516.o: lib516.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib516-lib516.o -MD -MP -MF $(DEPDIR)/lib516-lib516.Tpo -c -o lib516-lib516.o `test -f 'lib516.c' || echo '$(srcdir)/'`lib516.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib516-lib516.Tpo $(DEPDIR)/lib516-lib516.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib516.c' object='lib516-lib516.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib516-lib516.o `test -f 'lib516.c' || echo '$(srcdir)/'`lib516.c
+
+lib516-lib516.obj: lib516.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib516-lib516.obj -MD -MP -MF $(DEPDIR)/lib516-lib516.Tpo -c -o lib516-lib516.obj `if test -f 'lib516.c'; then $(CYGPATH_W) 'lib516.c'; else $(CYGPATH_W) '$(srcdir)/lib516.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib516-lib516.Tpo $(DEPDIR)/lib516-lib516.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib516.c' object='lib516-lib516.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib516-lib516.obj `if test -f 'lib516.c'; then $(CYGPATH_W) 'lib516.c'; else $(CYGPATH_W) '$(srcdir)/lib516.c'; fi`
+
+lib516-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib516-first.o -MD -MP -MF $(DEPDIR)/lib516-first.Tpo -c -o lib516-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib516-first.Tpo $(DEPDIR)/lib516-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib516-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib516-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib516-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib516-first.obj -MD -MP -MF $(DEPDIR)/lib516-first.Tpo -c -o lib516-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib516-first.Tpo $(DEPDIR)/lib516-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib516-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib516_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib516-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib517-lib517.o: lib517.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib517-lib517.o -MD -MP -MF $(DEPDIR)/lib517-lib517.Tpo -c -o lib517-lib517.o `test -f 'lib517.c' || echo '$(srcdir)/'`lib517.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib517-lib517.Tpo $(DEPDIR)/lib517-lib517.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib517.c' object='lib517-lib517.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib517-lib517.o `test -f 'lib517.c' || echo '$(srcdir)/'`lib517.c
+
+lib517-lib517.obj: lib517.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib517-lib517.obj -MD -MP -MF $(DEPDIR)/lib517-lib517.Tpo -c -o lib517-lib517.obj `if test -f 'lib517.c'; then $(CYGPATH_W) 'lib517.c'; else $(CYGPATH_W) '$(srcdir)/lib517.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib517-lib517.Tpo $(DEPDIR)/lib517-lib517.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib517.c' object='lib517-lib517.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib517-lib517.obj `if test -f 'lib517.c'; then $(CYGPATH_W) 'lib517.c'; else $(CYGPATH_W) '$(srcdir)/lib517.c'; fi`
+
+lib517-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib517-first.o -MD -MP -MF $(DEPDIR)/lib517-first.Tpo -c -o lib517-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib517-first.Tpo $(DEPDIR)/lib517-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib517-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib517-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib517-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib517-first.obj -MD -MP -MF $(DEPDIR)/lib517-first.Tpo -c -o lib517-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib517-first.Tpo $(DEPDIR)/lib517-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib517-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib517_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib517-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib518-lib518.o: lib518.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib518-lib518.o -MD -MP -MF $(DEPDIR)/lib518-lib518.Tpo -c -o lib518-lib518.o `test -f 'lib518.c' || echo '$(srcdir)/'`lib518.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib518-lib518.Tpo $(DEPDIR)/lib518-lib518.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib518.c' object='lib518-lib518.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib518-lib518.o `test -f 'lib518.c' || echo '$(srcdir)/'`lib518.c
+
+lib518-lib518.obj: lib518.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib518-lib518.obj -MD -MP -MF $(DEPDIR)/lib518-lib518.Tpo -c -o lib518-lib518.obj `if test -f 'lib518.c'; then $(CYGPATH_W) 'lib518.c'; else $(CYGPATH_W) '$(srcdir)/lib518.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib518-lib518.Tpo $(DEPDIR)/lib518-lib518.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib518.c' object='lib518-lib518.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib518-lib518.obj `if test -f 'lib518.c'; then $(CYGPATH_W) 'lib518.c'; else $(CYGPATH_W) '$(srcdir)/lib518.c'; fi`
+
+lib518-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib518-first.o -MD -MP -MF $(DEPDIR)/lib518-first.Tpo -c -o lib518-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib518-first.Tpo $(DEPDIR)/lib518-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib518-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib518-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib518-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib518-first.obj -MD -MP -MF $(DEPDIR)/lib518-first.Tpo -c -o lib518-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib518-first.Tpo $(DEPDIR)/lib518-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib518-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib518-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+../../lib/lib518-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib518-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib518-warnless.Tpo -c -o ../../lib/lib518-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib518-warnless.Tpo ../../lib/$(DEPDIR)/lib518-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib518-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib518-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib518-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib518-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib518-warnless.Tpo -c -o ../../lib/lib518-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib518-warnless.Tpo ../../lib/$(DEPDIR)/lib518-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib518-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib518_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib518-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib519-lib519.o: lib519.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib519-lib519.o -MD -MP -MF $(DEPDIR)/lib519-lib519.Tpo -c -o lib519-lib519.o `test -f 'lib519.c' || echo '$(srcdir)/'`lib519.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib519-lib519.Tpo $(DEPDIR)/lib519-lib519.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib519.c' object='lib519-lib519.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib519-lib519.o `test -f 'lib519.c' || echo '$(srcdir)/'`lib519.c
+
+lib519-lib519.obj: lib519.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib519-lib519.obj -MD -MP -MF $(DEPDIR)/lib519-lib519.Tpo -c -o lib519-lib519.obj `if test -f 'lib519.c'; then $(CYGPATH_W) 'lib519.c'; else $(CYGPATH_W) '$(srcdir)/lib519.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib519-lib519.Tpo $(DEPDIR)/lib519-lib519.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib519.c' object='lib519-lib519.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib519-lib519.obj `if test -f 'lib519.c'; then $(CYGPATH_W) 'lib519.c'; else $(CYGPATH_W) '$(srcdir)/lib519.c'; fi`
+
+lib519-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib519-first.o -MD -MP -MF $(DEPDIR)/lib519-first.Tpo -c -o lib519-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib519-first.Tpo $(DEPDIR)/lib519-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib519-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib519-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib519-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib519-first.obj -MD -MP -MF $(DEPDIR)/lib519-first.Tpo -c -o lib519-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib519-first.Tpo $(DEPDIR)/lib519-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib519-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib519_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib519-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib520-lib520.o: lib520.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib520-lib520.o -MD -MP -MF $(DEPDIR)/lib520-lib520.Tpo -c -o lib520-lib520.o `test -f 'lib520.c' || echo '$(srcdir)/'`lib520.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib520-lib520.Tpo $(DEPDIR)/lib520-lib520.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib520.c' object='lib520-lib520.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib520-lib520.o `test -f 'lib520.c' || echo '$(srcdir)/'`lib520.c
+
+lib520-lib520.obj: lib520.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib520-lib520.obj -MD -MP -MF $(DEPDIR)/lib520-lib520.Tpo -c -o lib520-lib520.obj `if test -f 'lib520.c'; then $(CYGPATH_W) 'lib520.c'; else $(CYGPATH_W) '$(srcdir)/lib520.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib520-lib520.Tpo $(DEPDIR)/lib520-lib520.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib520.c' object='lib520-lib520.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib520-lib520.obj `if test -f 'lib520.c'; then $(CYGPATH_W) 'lib520.c'; else $(CYGPATH_W) '$(srcdir)/lib520.c'; fi`
+
+lib520-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib520-first.o -MD -MP -MF $(DEPDIR)/lib520-first.Tpo -c -o lib520-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib520-first.Tpo $(DEPDIR)/lib520-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib520-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib520-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib520-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib520-first.obj -MD -MP -MF $(DEPDIR)/lib520-first.Tpo -c -o lib520-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib520-first.Tpo $(DEPDIR)/lib520-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib520-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib520_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib520-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib521-lib521.o: lib521.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib521-lib521.o -MD -MP -MF $(DEPDIR)/lib521-lib521.Tpo -c -o lib521-lib521.o `test -f 'lib521.c' || echo '$(srcdir)/'`lib521.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib521-lib521.Tpo $(DEPDIR)/lib521-lib521.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib521.c' object='lib521-lib521.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib521-lib521.o `test -f 'lib521.c' || echo '$(srcdir)/'`lib521.c
+
+lib521-lib521.obj: lib521.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib521-lib521.obj -MD -MP -MF $(DEPDIR)/lib521-lib521.Tpo -c -o lib521-lib521.obj `if test -f 'lib521.c'; then $(CYGPATH_W) 'lib521.c'; else $(CYGPATH_W) '$(srcdir)/lib521.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib521-lib521.Tpo $(DEPDIR)/lib521-lib521.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib521.c' object='lib521-lib521.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib521-lib521.obj `if test -f 'lib521.c'; then $(CYGPATH_W) 'lib521.c'; else $(CYGPATH_W) '$(srcdir)/lib521.c'; fi`
+
+lib521-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib521-first.o -MD -MP -MF $(DEPDIR)/lib521-first.Tpo -c -o lib521-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib521-first.Tpo $(DEPDIR)/lib521-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib521-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib521-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib521-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib521-first.obj -MD -MP -MF $(DEPDIR)/lib521-first.Tpo -c -o lib521-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib521-first.Tpo $(DEPDIR)/lib521-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib521-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib521_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib521-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib523-lib523.o: lib523.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib523-lib523.o -MD -MP -MF $(DEPDIR)/lib523-lib523.Tpo -c -o lib523-lib523.o `test -f 'lib523.c' || echo '$(srcdir)/'`lib523.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib523-lib523.Tpo $(DEPDIR)/lib523-lib523.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib523.c' object='lib523-lib523.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib523-lib523.o `test -f 'lib523.c' || echo '$(srcdir)/'`lib523.c
+
+lib523-lib523.obj: lib523.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib523-lib523.obj -MD -MP -MF $(DEPDIR)/lib523-lib523.Tpo -c -o lib523-lib523.obj `if test -f 'lib523.c'; then $(CYGPATH_W) 'lib523.c'; else $(CYGPATH_W) '$(srcdir)/lib523.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib523-lib523.Tpo $(DEPDIR)/lib523-lib523.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib523.c' object='lib523-lib523.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib523-lib523.obj `if test -f 'lib523.c'; then $(CYGPATH_W) 'lib523.c'; else $(CYGPATH_W) '$(srcdir)/lib523.c'; fi`
+
+lib523-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib523-first.o -MD -MP -MF $(DEPDIR)/lib523-first.Tpo -c -o lib523-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib523-first.Tpo $(DEPDIR)/lib523-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib523-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib523-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib523-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib523-first.obj -MD -MP -MF $(DEPDIR)/lib523-first.Tpo -c -o lib523-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib523-first.Tpo $(DEPDIR)/lib523-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib523-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib523_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib523-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib524-lib524.o: lib524.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib524-lib524.o -MD -MP -MF $(DEPDIR)/lib524-lib524.Tpo -c -o lib524-lib524.o `test -f 'lib524.c' || echo '$(srcdir)/'`lib524.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib524-lib524.Tpo $(DEPDIR)/lib524-lib524.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib524.c' object='lib524-lib524.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib524-lib524.o `test -f 'lib524.c' || echo '$(srcdir)/'`lib524.c
+
+lib524-lib524.obj: lib524.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib524-lib524.obj -MD -MP -MF $(DEPDIR)/lib524-lib524.Tpo -c -o lib524-lib524.obj `if test -f 'lib524.c'; then $(CYGPATH_W) 'lib524.c'; else $(CYGPATH_W) '$(srcdir)/lib524.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib524-lib524.Tpo $(DEPDIR)/lib524-lib524.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib524.c' object='lib524-lib524.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib524-lib524.obj `if test -f 'lib524.c'; then $(CYGPATH_W) 'lib524.c'; else $(CYGPATH_W) '$(srcdir)/lib524.c'; fi`
+
+lib524-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib524-first.o -MD -MP -MF $(DEPDIR)/lib524-first.Tpo -c -o lib524-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib524-first.Tpo $(DEPDIR)/lib524-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib524-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib524-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib524-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib524-first.obj -MD -MP -MF $(DEPDIR)/lib524-first.Tpo -c -o lib524-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib524-first.Tpo $(DEPDIR)/lib524-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib524-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib524_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib524-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib525-lib525.o: lib525.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib525-lib525.o -MD -MP -MF $(DEPDIR)/lib525-lib525.Tpo -c -o lib525-lib525.o `test -f 'lib525.c' || echo '$(srcdir)/'`lib525.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib525-lib525.Tpo $(DEPDIR)/lib525-lib525.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib525.c' object='lib525-lib525.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib525-lib525.o `test -f 'lib525.c' || echo '$(srcdir)/'`lib525.c
+
+lib525-lib525.obj: lib525.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib525-lib525.obj -MD -MP -MF $(DEPDIR)/lib525-lib525.Tpo -c -o lib525-lib525.obj `if test -f 'lib525.c'; then $(CYGPATH_W) 'lib525.c'; else $(CYGPATH_W) '$(srcdir)/lib525.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib525-lib525.Tpo $(DEPDIR)/lib525-lib525.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib525.c' object='lib525-lib525.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib525-lib525.obj `if test -f 'lib525.c'; then $(CYGPATH_W) 'lib525.c'; else $(CYGPATH_W) '$(srcdir)/lib525.c'; fi`
+
+lib525-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib525-first.o -MD -MP -MF $(DEPDIR)/lib525-first.Tpo -c -o lib525-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib525-first.Tpo $(DEPDIR)/lib525-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib525-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib525-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib525-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib525-first.obj -MD -MP -MF $(DEPDIR)/lib525-first.Tpo -c -o lib525-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib525-first.Tpo $(DEPDIR)/lib525-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib525-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib525-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib525-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib525-testutil.o -MD -MP -MF $(DEPDIR)/lib525-testutil.Tpo -c -o lib525-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib525-testutil.Tpo $(DEPDIR)/lib525-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib525-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib525-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib525-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib525-testutil.obj -MD -MP -MF $(DEPDIR)/lib525-testutil.Tpo -c -o lib525-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib525-testutil.Tpo $(DEPDIR)/lib525-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib525-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib525-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib525-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib525-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib525-warnless.Tpo -c -o ../../lib/lib525-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib525-warnless.Tpo ../../lib/$(DEPDIR)/lib525-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib525-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib525-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib525-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib525-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib525-warnless.Tpo -c -o ../../lib/lib525-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib525-warnless.Tpo ../../lib/$(DEPDIR)/lib525-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib525-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib525_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib525-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib526-lib526.o: lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib526-lib526.o -MD -MP -MF $(DEPDIR)/lib526-lib526.Tpo -c -o lib526-lib526.o `test -f 'lib526.c' || echo '$(srcdir)/'`lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib526-lib526.Tpo $(DEPDIR)/lib526-lib526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib526.c' object='lib526-lib526.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib526-lib526.o `test -f 'lib526.c' || echo '$(srcdir)/'`lib526.c
+
+lib526-lib526.obj: lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib526-lib526.obj -MD -MP -MF $(DEPDIR)/lib526-lib526.Tpo -c -o lib526-lib526.obj `if test -f 'lib526.c'; then $(CYGPATH_W) 'lib526.c'; else $(CYGPATH_W) '$(srcdir)/lib526.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib526-lib526.Tpo $(DEPDIR)/lib526-lib526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib526.c' object='lib526-lib526.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib526-lib526.obj `if test -f 'lib526.c'; then $(CYGPATH_W) 'lib526.c'; else $(CYGPATH_W) '$(srcdir)/lib526.c'; fi`
+
+lib526-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib526-first.o -MD -MP -MF $(DEPDIR)/lib526-first.Tpo -c -o lib526-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib526-first.Tpo $(DEPDIR)/lib526-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib526-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib526-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib526-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib526-first.obj -MD -MP -MF $(DEPDIR)/lib526-first.Tpo -c -o lib526-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib526-first.Tpo $(DEPDIR)/lib526-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib526-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib526-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib526-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib526-testutil.o -MD -MP -MF $(DEPDIR)/lib526-testutil.Tpo -c -o lib526-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib526-testutil.Tpo $(DEPDIR)/lib526-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib526-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib526-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib526-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib526-testutil.obj -MD -MP -MF $(DEPDIR)/lib526-testutil.Tpo -c -o lib526-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib526-testutil.Tpo $(DEPDIR)/lib526-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib526-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib526-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib526-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib526-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib526-warnless.Tpo -c -o ../../lib/lib526-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib526-warnless.Tpo ../../lib/$(DEPDIR)/lib526-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib526-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib526-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib526-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib526-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib526-warnless.Tpo -c -o ../../lib/lib526-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib526-warnless.Tpo ../../lib/$(DEPDIR)/lib526-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib526-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib526_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib526-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib527-lib526.o: lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib527-lib526.o -MD -MP -MF $(DEPDIR)/lib527-lib526.Tpo -c -o lib527-lib526.o `test -f 'lib526.c' || echo '$(srcdir)/'`lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib527-lib526.Tpo $(DEPDIR)/lib527-lib526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib526.c' object='lib527-lib526.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib527-lib526.o `test -f 'lib526.c' || echo '$(srcdir)/'`lib526.c
+
+lib527-lib526.obj: lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib527-lib526.obj -MD -MP -MF $(DEPDIR)/lib527-lib526.Tpo -c -o lib527-lib526.obj `if test -f 'lib526.c'; then $(CYGPATH_W) 'lib526.c'; else $(CYGPATH_W) '$(srcdir)/lib526.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib527-lib526.Tpo $(DEPDIR)/lib527-lib526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib526.c' object='lib527-lib526.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib527-lib526.obj `if test -f 'lib526.c'; then $(CYGPATH_W) 'lib526.c'; else $(CYGPATH_W) '$(srcdir)/lib526.c'; fi`
+
+lib527-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib527-first.o -MD -MP -MF $(DEPDIR)/lib527-first.Tpo -c -o lib527-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib527-first.Tpo $(DEPDIR)/lib527-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib527-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib527-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib527-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib527-first.obj -MD -MP -MF $(DEPDIR)/lib527-first.Tpo -c -o lib527-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib527-first.Tpo $(DEPDIR)/lib527-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib527-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib527-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib527-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib527-testutil.o -MD -MP -MF $(DEPDIR)/lib527-testutil.Tpo -c -o lib527-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib527-testutil.Tpo $(DEPDIR)/lib527-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib527-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib527-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib527-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib527-testutil.obj -MD -MP -MF $(DEPDIR)/lib527-testutil.Tpo -c -o lib527-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib527-testutil.Tpo $(DEPDIR)/lib527-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib527-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib527-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib527-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib527-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib527-warnless.Tpo -c -o ../../lib/lib527-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib527-warnless.Tpo ../../lib/$(DEPDIR)/lib527-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib527-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib527-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib527-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib527-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib527-warnless.Tpo -c -o ../../lib/lib527-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib527-warnless.Tpo ../../lib/$(DEPDIR)/lib527-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib527-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib527_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib527-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib529-lib525.o: lib525.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib529-lib525.o -MD -MP -MF $(DEPDIR)/lib529-lib525.Tpo -c -o lib529-lib525.o `test -f 'lib525.c' || echo '$(srcdir)/'`lib525.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib529-lib525.Tpo $(DEPDIR)/lib529-lib525.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib525.c' object='lib529-lib525.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib529-lib525.o `test -f 'lib525.c' || echo '$(srcdir)/'`lib525.c
+
+lib529-lib525.obj: lib525.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib529-lib525.obj -MD -MP -MF $(DEPDIR)/lib529-lib525.Tpo -c -o lib529-lib525.obj `if test -f 'lib525.c'; then $(CYGPATH_W) 'lib525.c'; else $(CYGPATH_W) '$(srcdir)/lib525.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib529-lib525.Tpo $(DEPDIR)/lib529-lib525.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib525.c' object='lib529-lib525.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib529-lib525.obj `if test -f 'lib525.c'; then $(CYGPATH_W) 'lib525.c'; else $(CYGPATH_W) '$(srcdir)/lib525.c'; fi`
+
+lib529-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib529-first.o -MD -MP -MF $(DEPDIR)/lib529-first.Tpo -c -o lib529-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib529-first.Tpo $(DEPDIR)/lib529-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib529-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib529-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib529-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib529-first.obj -MD -MP -MF $(DEPDIR)/lib529-first.Tpo -c -o lib529-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib529-first.Tpo $(DEPDIR)/lib529-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib529-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib529-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib529-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib529-testutil.o -MD -MP -MF $(DEPDIR)/lib529-testutil.Tpo -c -o lib529-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib529-testutil.Tpo $(DEPDIR)/lib529-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib529-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib529-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib529-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib529-testutil.obj -MD -MP -MF $(DEPDIR)/lib529-testutil.Tpo -c -o lib529-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib529-testutil.Tpo $(DEPDIR)/lib529-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib529-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib529-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib529-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib529-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib529-warnless.Tpo -c -o ../../lib/lib529-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib529-warnless.Tpo ../../lib/$(DEPDIR)/lib529-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib529-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib529-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib529-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib529-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib529-warnless.Tpo -c -o ../../lib/lib529-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib529-warnless.Tpo ../../lib/$(DEPDIR)/lib529-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib529-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib529-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib530-lib530.o: lib530.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib530-lib530.o -MD -MP -MF $(DEPDIR)/lib530-lib530.Tpo -c -o lib530-lib530.o `test -f 'lib530.c' || echo '$(srcdir)/'`lib530.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib530-lib530.Tpo $(DEPDIR)/lib530-lib530.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib530.c' object='lib530-lib530.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib530-lib530.o `test -f 'lib530.c' || echo '$(srcdir)/'`lib530.c
+
+lib530-lib530.obj: lib530.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib530-lib530.obj -MD -MP -MF $(DEPDIR)/lib530-lib530.Tpo -c -o lib530-lib530.obj `if test -f 'lib530.c'; then $(CYGPATH_W) 'lib530.c'; else $(CYGPATH_W) '$(srcdir)/lib530.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib530-lib530.Tpo $(DEPDIR)/lib530-lib530.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib530.c' object='lib530-lib530.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib530-lib530.obj `if test -f 'lib530.c'; then $(CYGPATH_W) 'lib530.c'; else $(CYGPATH_W) '$(srcdir)/lib530.c'; fi`
+
+lib530-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib530-first.o -MD -MP -MF $(DEPDIR)/lib530-first.Tpo -c -o lib530-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib530-first.Tpo $(DEPDIR)/lib530-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib530-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib530-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib530-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib530-first.obj -MD -MP -MF $(DEPDIR)/lib530-first.Tpo -c -o lib530-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib530-first.Tpo $(DEPDIR)/lib530-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib530-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib530-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib530-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib530-testutil.o -MD -MP -MF $(DEPDIR)/lib530-testutil.Tpo -c -o lib530-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib530-testutil.Tpo $(DEPDIR)/lib530-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib530-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib530-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib530-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib530-testutil.obj -MD -MP -MF $(DEPDIR)/lib530-testutil.Tpo -c -o lib530-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib530-testutil.Tpo $(DEPDIR)/lib530-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib530-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib530-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib530-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib530-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib530-warnless.Tpo -c -o ../../lib/lib530-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib530-warnless.Tpo ../../lib/$(DEPDIR)/lib530-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib530-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib530-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib530-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib530-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib530-warnless.Tpo -c -o ../../lib/lib530-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib530-warnless.Tpo ../../lib/$(DEPDIR)/lib530-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib530-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib530-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib532-lib526.o: lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib532-lib526.o -MD -MP -MF $(DEPDIR)/lib532-lib526.Tpo -c -o lib532-lib526.o `test -f 'lib526.c' || echo '$(srcdir)/'`lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib532-lib526.Tpo $(DEPDIR)/lib532-lib526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib526.c' object='lib532-lib526.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib532-lib526.o `test -f 'lib526.c' || echo '$(srcdir)/'`lib526.c
+
+lib532-lib526.obj: lib526.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib532-lib526.obj -MD -MP -MF $(DEPDIR)/lib532-lib526.Tpo -c -o lib532-lib526.obj `if test -f 'lib526.c'; then $(CYGPATH_W) 'lib526.c'; else $(CYGPATH_W) '$(srcdir)/lib526.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib532-lib526.Tpo $(DEPDIR)/lib532-lib526.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib526.c' object='lib532-lib526.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib532-lib526.obj `if test -f 'lib526.c'; then $(CYGPATH_W) 'lib526.c'; else $(CYGPATH_W) '$(srcdir)/lib526.c'; fi`
+
+lib532-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib532-first.o -MD -MP -MF $(DEPDIR)/lib532-first.Tpo -c -o lib532-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib532-first.Tpo $(DEPDIR)/lib532-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib532-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib532-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib532-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib532-first.obj -MD -MP -MF $(DEPDIR)/lib532-first.Tpo -c -o lib532-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib532-first.Tpo $(DEPDIR)/lib532-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib532-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib532-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib532-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib532-testutil.o -MD -MP -MF $(DEPDIR)/lib532-testutil.Tpo -c -o lib532-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib532-testutil.Tpo $(DEPDIR)/lib532-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib532-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib532-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib532-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib532-testutil.obj -MD -MP -MF $(DEPDIR)/lib532-testutil.Tpo -c -o lib532-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib532-testutil.Tpo $(DEPDIR)/lib532-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib532-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib532-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib532-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib532-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib532-warnless.Tpo -c -o ../../lib/lib532-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib532-warnless.Tpo ../../lib/$(DEPDIR)/lib532-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib532-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib532-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib532-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib532-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib532-warnless.Tpo -c -o ../../lib/lib532-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib532-warnless.Tpo ../../lib/$(DEPDIR)/lib532-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib532-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib532_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib532-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib533-lib533.o: lib533.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib533-lib533.o -MD -MP -MF $(DEPDIR)/lib533-lib533.Tpo -c -o lib533-lib533.o `test -f 'lib533.c' || echo '$(srcdir)/'`lib533.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib533-lib533.Tpo $(DEPDIR)/lib533-lib533.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib533.c' object='lib533-lib533.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib533-lib533.o `test -f 'lib533.c' || echo '$(srcdir)/'`lib533.c
+
+lib533-lib533.obj: lib533.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib533-lib533.obj -MD -MP -MF $(DEPDIR)/lib533-lib533.Tpo -c -o lib533-lib533.obj `if test -f 'lib533.c'; then $(CYGPATH_W) 'lib533.c'; else $(CYGPATH_W) '$(srcdir)/lib533.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib533-lib533.Tpo $(DEPDIR)/lib533-lib533.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib533.c' object='lib533-lib533.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib533-lib533.obj `if test -f 'lib533.c'; then $(CYGPATH_W) 'lib533.c'; else $(CYGPATH_W) '$(srcdir)/lib533.c'; fi`
+
+lib533-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib533-first.o -MD -MP -MF $(DEPDIR)/lib533-first.Tpo -c -o lib533-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib533-first.Tpo $(DEPDIR)/lib533-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib533-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib533-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib533-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib533-first.obj -MD -MP -MF $(DEPDIR)/lib533-first.Tpo -c -o lib533-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib533-first.Tpo $(DEPDIR)/lib533-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib533-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib533-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib533-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib533-testutil.o -MD -MP -MF $(DEPDIR)/lib533-testutil.Tpo -c -o lib533-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib533-testutil.Tpo $(DEPDIR)/lib533-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib533-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib533-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib533-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib533-testutil.obj -MD -MP -MF $(DEPDIR)/lib533-testutil.Tpo -c -o lib533-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib533-testutil.Tpo $(DEPDIR)/lib533-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib533-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib533-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib533-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib533-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib533-warnless.Tpo -c -o ../../lib/lib533-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib533-warnless.Tpo ../../lib/$(DEPDIR)/lib533-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib533-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib533-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib533-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib533-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib533-warnless.Tpo -c -o ../../lib/lib533-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib533-warnless.Tpo ../../lib/$(DEPDIR)/lib533-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib533-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib533_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib533-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib536-lib536.o: lib536.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib536-lib536.o -MD -MP -MF $(DEPDIR)/lib536-lib536.Tpo -c -o lib536-lib536.o `test -f 'lib536.c' || echo '$(srcdir)/'`lib536.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib536-lib536.Tpo $(DEPDIR)/lib536-lib536.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib536.c' object='lib536-lib536.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib536-lib536.o `test -f 'lib536.c' || echo '$(srcdir)/'`lib536.c
+
+lib536-lib536.obj: lib536.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib536-lib536.obj -MD -MP -MF $(DEPDIR)/lib536-lib536.Tpo -c -o lib536-lib536.obj `if test -f 'lib536.c'; then $(CYGPATH_W) 'lib536.c'; else $(CYGPATH_W) '$(srcdir)/lib536.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib536-lib536.Tpo $(DEPDIR)/lib536-lib536.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib536.c' object='lib536-lib536.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib536-lib536.obj `if test -f 'lib536.c'; then $(CYGPATH_W) 'lib536.c'; else $(CYGPATH_W) '$(srcdir)/lib536.c'; fi`
+
+lib536-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib536-first.o -MD -MP -MF $(DEPDIR)/lib536-first.Tpo -c -o lib536-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib536-first.Tpo $(DEPDIR)/lib536-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib536-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib536-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib536-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib536-first.obj -MD -MP -MF $(DEPDIR)/lib536-first.Tpo -c -o lib536-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib536-first.Tpo $(DEPDIR)/lib536-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib536-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib536-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib536-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib536-testutil.o -MD -MP -MF $(DEPDIR)/lib536-testutil.Tpo -c -o lib536-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib536-testutil.Tpo $(DEPDIR)/lib536-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib536-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib536-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib536-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib536-testutil.obj -MD -MP -MF $(DEPDIR)/lib536-testutil.Tpo -c -o lib536-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib536-testutil.Tpo $(DEPDIR)/lib536-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib536-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib536-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib536-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib536-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib536-warnless.Tpo -c -o ../../lib/lib536-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib536-warnless.Tpo ../../lib/$(DEPDIR)/lib536-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib536-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib536-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib536-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib536-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib536-warnless.Tpo -c -o ../../lib/lib536-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib536-warnless.Tpo ../../lib/$(DEPDIR)/lib536-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib536-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib536_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib536-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib537-lib537.o: lib537.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib537-lib537.o -MD -MP -MF $(DEPDIR)/lib537-lib537.Tpo -c -o lib537-lib537.o `test -f 'lib537.c' || echo '$(srcdir)/'`lib537.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib537-lib537.Tpo $(DEPDIR)/lib537-lib537.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib537.c' object='lib537-lib537.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib537-lib537.o `test -f 'lib537.c' || echo '$(srcdir)/'`lib537.c
+
+lib537-lib537.obj: lib537.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib537-lib537.obj -MD -MP -MF $(DEPDIR)/lib537-lib537.Tpo -c -o lib537-lib537.obj `if test -f 'lib537.c'; then $(CYGPATH_W) 'lib537.c'; else $(CYGPATH_W) '$(srcdir)/lib537.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib537-lib537.Tpo $(DEPDIR)/lib537-lib537.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib537.c' object='lib537-lib537.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib537-lib537.obj `if test -f 'lib537.c'; then $(CYGPATH_W) 'lib537.c'; else $(CYGPATH_W) '$(srcdir)/lib537.c'; fi`
+
+lib537-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib537-first.o -MD -MP -MF $(DEPDIR)/lib537-first.Tpo -c -o lib537-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib537-first.Tpo $(DEPDIR)/lib537-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib537-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib537-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib537-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib537-first.obj -MD -MP -MF $(DEPDIR)/lib537-first.Tpo -c -o lib537-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib537-first.Tpo $(DEPDIR)/lib537-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib537-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib537-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+../../lib/lib537-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib537-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib537-warnless.Tpo -c -o ../../lib/lib537-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib537-warnless.Tpo ../../lib/$(DEPDIR)/lib537-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib537-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib537-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib537-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib537-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib537-warnless.Tpo -c -o ../../lib/lib537-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib537-warnless.Tpo ../../lib/$(DEPDIR)/lib537-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib537-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib537_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib537-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib539-lib539.o: lib539.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib539-lib539.o -MD -MP -MF $(DEPDIR)/lib539-lib539.Tpo -c -o lib539-lib539.o `test -f 'lib539.c' || echo '$(srcdir)/'`lib539.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib539-lib539.Tpo $(DEPDIR)/lib539-lib539.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib539.c' object='lib539-lib539.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib539-lib539.o `test -f 'lib539.c' || echo '$(srcdir)/'`lib539.c
+
+lib539-lib539.obj: lib539.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib539-lib539.obj -MD -MP -MF $(DEPDIR)/lib539-lib539.Tpo -c -o lib539-lib539.obj `if test -f 'lib539.c'; then $(CYGPATH_W) 'lib539.c'; else $(CYGPATH_W) '$(srcdir)/lib539.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib539-lib539.Tpo $(DEPDIR)/lib539-lib539.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib539.c' object='lib539-lib539.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib539-lib539.obj `if test -f 'lib539.c'; then $(CYGPATH_W) 'lib539.c'; else $(CYGPATH_W) '$(srcdir)/lib539.c'; fi`
+
+lib539-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib539-first.o -MD -MP -MF $(DEPDIR)/lib539-first.Tpo -c -o lib539-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib539-first.Tpo $(DEPDIR)/lib539-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib539-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib539-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib539-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib539-first.obj -MD -MP -MF $(DEPDIR)/lib539-first.Tpo -c -o lib539-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib539-first.Tpo $(DEPDIR)/lib539-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib539-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib539_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib539-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib540-lib540.o: lib540.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib540-lib540.o -MD -MP -MF $(DEPDIR)/lib540-lib540.Tpo -c -o lib540-lib540.o `test -f 'lib540.c' || echo '$(srcdir)/'`lib540.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib540-lib540.Tpo $(DEPDIR)/lib540-lib540.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib540.c' object='lib540-lib540.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib540-lib540.o `test -f 'lib540.c' || echo '$(srcdir)/'`lib540.c
+
+lib540-lib540.obj: lib540.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib540-lib540.obj -MD -MP -MF $(DEPDIR)/lib540-lib540.Tpo -c -o lib540-lib540.obj `if test -f 'lib540.c'; then $(CYGPATH_W) 'lib540.c'; else $(CYGPATH_W) '$(srcdir)/lib540.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib540-lib540.Tpo $(DEPDIR)/lib540-lib540.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib540.c' object='lib540-lib540.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib540-lib540.obj `if test -f 'lib540.c'; then $(CYGPATH_W) 'lib540.c'; else $(CYGPATH_W) '$(srcdir)/lib540.c'; fi`
+
+lib540-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib540-first.o -MD -MP -MF $(DEPDIR)/lib540-first.Tpo -c -o lib540-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib540-first.Tpo $(DEPDIR)/lib540-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib540-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib540-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib540-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib540-first.obj -MD -MP -MF $(DEPDIR)/lib540-first.Tpo -c -o lib540-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib540-first.Tpo $(DEPDIR)/lib540-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib540-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib540-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib540-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib540-testutil.o -MD -MP -MF $(DEPDIR)/lib540-testutil.Tpo -c -o lib540-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib540-testutil.Tpo $(DEPDIR)/lib540-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib540-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib540-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib540-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib540-testutil.obj -MD -MP -MF $(DEPDIR)/lib540-testutil.Tpo -c -o lib540-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib540-testutil.Tpo $(DEPDIR)/lib540-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib540-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib540-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib540-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib540-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib540-warnless.Tpo -c -o ../../lib/lib540-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib540-warnless.Tpo ../../lib/$(DEPDIR)/lib540-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib540-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib540-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib540-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib540-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib540-warnless.Tpo -c -o ../../lib/lib540-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib540-warnless.Tpo ../../lib/$(DEPDIR)/lib540-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib540-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib540_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib540-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib541-lib541.o: lib541.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib541-lib541.o -MD -MP -MF $(DEPDIR)/lib541-lib541.Tpo -c -o lib541-lib541.o `test -f 'lib541.c' || echo '$(srcdir)/'`lib541.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib541-lib541.Tpo $(DEPDIR)/lib541-lib541.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib541.c' object='lib541-lib541.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib541-lib541.o `test -f 'lib541.c' || echo '$(srcdir)/'`lib541.c
+
+lib541-lib541.obj: lib541.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib541-lib541.obj -MD -MP -MF $(DEPDIR)/lib541-lib541.Tpo -c -o lib541-lib541.obj `if test -f 'lib541.c'; then $(CYGPATH_W) 'lib541.c'; else $(CYGPATH_W) '$(srcdir)/lib541.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib541-lib541.Tpo $(DEPDIR)/lib541-lib541.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib541.c' object='lib541-lib541.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib541-lib541.obj `if test -f 'lib541.c'; then $(CYGPATH_W) 'lib541.c'; else $(CYGPATH_W) '$(srcdir)/lib541.c'; fi`
+
+lib541-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib541-first.o -MD -MP -MF $(DEPDIR)/lib541-first.Tpo -c -o lib541-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib541-first.Tpo $(DEPDIR)/lib541-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib541-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib541-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib541-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib541-first.obj -MD -MP -MF $(DEPDIR)/lib541-first.Tpo -c -o lib541-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib541-first.Tpo $(DEPDIR)/lib541-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib541-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib541_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib541-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib542-lib542.o: lib542.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib542-lib542.o -MD -MP -MF $(DEPDIR)/lib542-lib542.Tpo -c -o lib542-lib542.o `test -f 'lib542.c' || echo '$(srcdir)/'`lib542.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib542-lib542.Tpo $(DEPDIR)/lib542-lib542.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib542.c' object='lib542-lib542.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib542-lib542.o `test -f 'lib542.c' || echo '$(srcdir)/'`lib542.c
+
+lib542-lib542.obj: lib542.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib542-lib542.obj -MD -MP -MF $(DEPDIR)/lib542-lib542.Tpo -c -o lib542-lib542.obj `if test -f 'lib542.c'; then $(CYGPATH_W) 'lib542.c'; else $(CYGPATH_W) '$(srcdir)/lib542.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib542-lib542.Tpo $(DEPDIR)/lib542-lib542.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib542.c' object='lib542-lib542.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib542-lib542.obj `if test -f 'lib542.c'; then $(CYGPATH_W) 'lib542.c'; else $(CYGPATH_W) '$(srcdir)/lib542.c'; fi`
+
+lib542-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib542-first.o -MD -MP -MF $(DEPDIR)/lib542-first.Tpo -c -o lib542-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib542-first.Tpo $(DEPDIR)/lib542-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib542-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib542-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib542-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib542-first.obj -MD -MP -MF $(DEPDIR)/lib542-first.Tpo -c -o lib542-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib542-first.Tpo $(DEPDIR)/lib542-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib542-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib542_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib542-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib543-lib543.o: lib543.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib543-lib543.o -MD -MP -MF $(DEPDIR)/lib543-lib543.Tpo -c -o lib543-lib543.o `test -f 'lib543.c' || echo '$(srcdir)/'`lib543.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib543-lib543.Tpo $(DEPDIR)/lib543-lib543.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib543.c' object='lib543-lib543.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib543-lib543.o `test -f 'lib543.c' || echo '$(srcdir)/'`lib543.c
+
+lib543-lib543.obj: lib543.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib543-lib543.obj -MD -MP -MF $(DEPDIR)/lib543-lib543.Tpo -c -o lib543-lib543.obj `if test -f 'lib543.c'; then $(CYGPATH_W) 'lib543.c'; else $(CYGPATH_W) '$(srcdir)/lib543.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib543-lib543.Tpo $(DEPDIR)/lib543-lib543.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib543.c' object='lib543-lib543.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib543-lib543.obj `if test -f 'lib543.c'; then $(CYGPATH_W) 'lib543.c'; else $(CYGPATH_W) '$(srcdir)/lib543.c'; fi`
+
+lib543-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib543-first.o -MD -MP -MF $(DEPDIR)/lib543-first.Tpo -c -o lib543-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib543-first.Tpo $(DEPDIR)/lib543-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib543-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib543-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib543-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib543-first.obj -MD -MP -MF $(DEPDIR)/lib543-first.Tpo -c -o lib543-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib543-first.Tpo $(DEPDIR)/lib543-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib543-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib543_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib543-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib544-lib544.o: lib544.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib544-lib544.o -MD -MP -MF $(DEPDIR)/lib544-lib544.Tpo -c -o lib544-lib544.o `test -f 'lib544.c' || echo '$(srcdir)/'`lib544.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib544-lib544.Tpo $(DEPDIR)/lib544-lib544.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib544.c' object='lib544-lib544.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib544-lib544.o `test -f 'lib544.c' || echo '$(srcdir)/'`lib544.c
+
+lib544-lib544.obj: lib544.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib544-lib544.obj -MD -MP -MF $(DEPDIR)/lib544-lib544.Tpo -c -o lib544-lib544.obj `if test -f 'lib544.c'; then $(CYGPATH_W) 'lib544.c'; else $(CYGPATH_W) '$(srcdir)/lib544.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib544-lib544.Tpo $(DEPDIR)/lib544-lib544.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib544.c' object='lib544-lib544.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib544-lib544.obj `if test -f 'lib544.c'; then $(CYGPATH_W) 'lib544.c'; else $(CYGPATH_W) '$(srcdir)/lib544.c'; fi`
+
+lib544-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib544-first.o -MD -MP -MF $(DEPDIR)/lib544-first.Tpo -c -o lib544-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib544-first.Tpo $(DEPDIR)/lib544-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib544-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib544-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib544-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib544-first.obj -MD -MP -MF $(DEPDIR)/lib544-first.Tpo -c -o lib544-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib544-first.Tpo $(DEPDIR)/lib544-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib544-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib544_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib544-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib545-lib544.o: lib544.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib545-lib544.o -MD -MP -MF $(DEPDIR)/lib545-lib544.Tpo -c -o lib545-lib544.o `test -f 'lib544.c' || echo '$(srcdir)/'`lib544.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib545-lib544.Tpo $(DEPDIR)/lib545-lib544.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib544.c' object='lib545-lib544.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib545-lib544.o `test -f 'lib544.c' || echo '$(srcdir)/'`lib544.c
+
+lib545-lib544.obj: lib544.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib545-lib544.obj -MD -MP -MF $(DEPDIR)/lib545-lib544.Tpo -c -o lib545-lib544.obj `if test -f 'lib544.c'; then $(CYGPATH_W) 'lib544.c'; else $(CYGPATH_W) '$(srcdir)/lib544.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib545-lib544.Tpo $(DEPDIR)/lib545-lib544.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib544.c' object='lib545-lib544.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib545-lib544.obj `if test -f 'lib544.c'; then $(CYGPATH_W) 'lib544.c'; else $(CYGPATH_W) '$(srcdir)/lib544.c'; fi`
+
+lib545-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib545-first.o -MD -MP -MF $(DEPDIR)/lib545-first.Tpo -c -o lib545-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib545-first.Tpo $(DEPDIR)/lib545-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib545-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib545-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib545-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib545-first.obj -MD -MP -MF $(DEPDIR)/lib545-first.Tpo -c -o lib545-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib545-first.Tpo $(DEPDIR)/lib545-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib545-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib545_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib545-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib547-lib547.o: lib547.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib547-lib547.o -MD -MP -MF $(DEPDIR)/lib547-lib547.Tpo -c -o lib547-lib547.o `test -f 'lib547.c' || echo '$(srcdir)/'`lib547.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib547-lib547.Tpo $(DEPDIR)/lib547-lib547.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib547.c' object='lib547-lib547.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib547-lib547.o `test -f 'lib547.c' || echo '$(srcdir)/'`lib547.c
+
+lib547-lib547.obj: lib547.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib547-lib547.obj -MD -MP -MF $(DEPDIR)/lib547-lib547.Tpo -c -o lib547-lib547.obj `if test -f 'lib547.c'; then $(CYGPATH_W) 'lib547.c'; else $(CYGPATH_W) '$(srcdir)/lib547.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib547-lib547.Tpo $(DEPDIR)/lib547-lib547.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib547.c' object='lib547-lib547.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib547-lib547.obj `if test -f 'lib547.c'; then $(CYGPATH_W) 'lib547.c'; else $(CYGPATH_W) '$(srcdir)/lib547.c'; fi`
+
+lib547-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib547-first.o -MD -MP -MF $(DEPDIR)/lib547-first.Tpo -c -o lib547-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib547-first.Tpo $(DEPDIR)/lib547-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib547-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib547-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib547-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib547-first.obj -MD -MP -MF $(DEPDIR)/lib547-first.Tpo -c -o lib547-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib547-first.Tpo $(DEPDIR)/lib547-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib547-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib547_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib547-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib548-lib547.o: lib547.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib548-lib547.o -MD -MP -MF $(DEPDIR)/lib548-lib547.Tpo -c -o lib548-lib547.o `test -f 'lib547.c' || echo '$(srcdir)/'`lib547.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib548-lib547.Tpo $(DEPDIR)/lib548-lib547.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib547.c' object='lib548-lib547.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib548-lib547.o `test -f 'lib547.c' || echo '$(srcdir)/'`lib547.c
+
+lib548-lib547.obj: lib547.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib548-lib547.obj -MD -MP -MF $(DEPDIR)/lib548-lib547.Tpo -c -o lib548-lib547.obj `if test -f 'lib547.c'; then $(CYGPATH_W) 'lib547.c'; else $(CYGPATH_W) '$(srcdir)/lib547.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib548-lib547.Tpo $(DEPDIR)/lib548-lib547.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib547.c' object='lib548-lib547.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib548-lib547.obj `if test -f 'lib547.c'; then $(CYGPATH_W) 'lib547.c'; else $(CYGPATH_W) '$(srcdir)/lib547.c'; fi`
+
+lib548-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib548-first.o -MD -MP -MF $(DEPDIR)/lib548-first.Tpo -c -o lib548-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib548-first.Tpo $(DEPDIR)/lib548-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib548-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib548-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib548-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib548-first.obj -MD -MP -MF $(DEPDIR)/lib548-first.Tpo -c -o lib548-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib548-first.Tpo $(DEPDIR)/lib548-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib548-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib548_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib548-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib549-lib549.o: lib549.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib549-lib549.o -MD -MP -MF $(DEPDIR)/lib549-lib549.Tpo -c -o lib549-lib549.o `test -f 'lib549.c' || echo '$(srcdir)/'`lib549.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib549-lib549.Tpo $(DEPDIR)/lib549-lib549.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib549.c' object='lib549-lib549.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib549-lib549.o `test -f 'lib549.c' || echo '$(srcdir)/'`lib549.c
+
+lib549-lib549.obj: lib549.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib549-lib549.obj -MD -MP -MF $(DEPDIR)/lib549-lib549.Tpo -c -o lib549-lib549.obj `if test -f 'lib549.c'; then $(CYGPATH_W) 'lib549.c'; else $(CYGPATH_W) '$(srcdir)/lib549.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib549-lib549.Tpo $(DEPDIR)/lib549-lib549.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib549.c' object='lib549-lib549.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib549-lib549.obj `if test -f 'lib549.c'; then $(CYGPATH_W) 'lib549.c'; else $(CYGPATH_W) '$(srcdir)/lib549.c'; fi`
+
+lib549-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib549-first.o -MD -MP -MF $(DEPDIR)/lib549-first.Tpo -c -o lib549-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib549-first.Tpo $(DEPDIR)/lib549-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib549-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib549-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib549-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib549-first.obj -MD -MP -MF $(DEPDIR)/lib549-first.Tpo -c -o lib549-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib549-first.Tpo $(DEPDIR)/lib549-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib549-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib549_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib549-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib552-lib552.o: lib552.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib552-lib552.o -MD -MP -MF $(DEPDIR)/lib552-lib552.Tpo -c -o lib552-lib552.o `test -f 'lib552.c' || echo '$(srcdir)/'`lib552.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib552-lib552.Tpo $(DEPDIR)/lib552-lib552.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib552.c' object='lib552-lib552.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib552-lib552.o `test -f 'lib552.c' || echo '$(srcdir)/'`lib552.c
+
+lib552-lib552.obj: lib552.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib552-lib552.obj -MD -MP -MF $(DEPDIR)/lib552-lib552.Tpo -c -o lib552-lib552.obj `if test -f 'lib552.c'; then $(CYGPATH_W) 'lib552.c'; else $(CYGPATH_W) '$(srcdir)/lib552.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib552-lib552.Tpo $(DEPDIR)/lib552-lib552.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib552.c' object='lib552-lib552.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib552-lib552.obj `if test -f 'lib552.c'; then $(CYGPATH_W) 'lib552.c'; else $(CYGPATH_W) '$(srcdir)/lib552.c'; fi`
+
+lib552-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib552-first.o -MD -MP -MF $(DEPDIR)/lib552-first.Tpo -c -o lib552-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib552-first.Tpo $(DEPDIR)/lib552-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib552-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib552-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib552-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib552-first.obj -MD -MP -MF $(DEPDIR)/lib552-first.Tpo -c -o lib552-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib552-first.Tpo $(DEPDIR)/lib552-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib552-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib552-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+../../lib/lib552-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib552-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib552-warnless.Tpo -c -o ../../lib/lib552-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib552-warnless.Tpo ../../lib/$(DEPDIR)/lib552-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib552-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib552-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib552-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib552-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib552-warnless.Tpo -c -o ../../lib/lib552-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib552-warnless.Tpo ../../lib/$(DEPDIR)/lib552-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib552-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib552_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib552-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib553-lib553.o: lib553.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib553-lib553.o -MD -MP -MF $(DEPDIR)/lib553-lib553.Tpo -c -o lib553-lib553.o `test -f 'lib553.c' || echo '$(srcdir)/'`lib553.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib553-lib553.Tpo $(DEPDIR)/lib553-lib553.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib553.c' object='lib553-lib553.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib553-lib553.o `test -f 'lib553.c' || echo '$(srcdir)/'`lib553.c
+
+lib553-lib553.obj: lib553.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib553-lib553.obj -MD -MP -MF $(DEPDIR)/lib553-lib553.Tpo -c -o lib553-lib553.obj `if test -f 'lib553.c'; then $(CYGPATH_W) 'lib553.c'; else $(CYGPATH_W) '$(srcdir)/lib553.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib553-lib553.Tpo $(DEPDIR)/lib553-lib553.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib553.c' object='lib553-lib553.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib553-lib553.obj `if test -f 'lib553.c'; then $(CYGPATH_W) 'lib553.c'; else $(CYGPATH_W) '$(srcdir)/lib553.c'; fi`
+
+lib553-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib553-first.o -MD -MP -MF $(DEPDIR)/lib553-first.Tpo -c -o lib553-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib553-first.Tpo $(DEPDIR)/lib553-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib553-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib553-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib553-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib553-first.obj -MD -MP -MF $(DEPDIR)/lib553-first.Tpo -c -o lib553-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib553-first.Tpo $(DEPDIR)/lib553-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib553-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib553_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib553-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib554-lib554.o: lib554.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib554-lib554.o -MD -MP -MF $(DEPDIR)/lib554-lib554.Tpo -c -o lib554-lib554.o `test -f 'lib554.c' || echo '$(srcdir)/'`lib554.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib554-lib554.Tpo $(DEPDIR)/lib554-lib554.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib554.c' object='lib554-lib554.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib554-lib554.o `test -f 'lib554.c' || echo '$(srcdir)/'`lib554.c
+
+lib554-lib554.obj: lib554.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib554-lib554.obj -MD -MP -MF $(DEPDIR)/lib554-lib554.Tpo -c -o lib554-lib554.obj `if test -f 'lib554.c'; then $(CYGPATH_W) 'lib554.c'; else $(CYGPATH_W) '$(srcdir)/lib554.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib554-lib554.Tpo $(DEPDIR)/lib554-lib554.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib554.c' object='lib554-lib554.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib554-lib554.obj `if test -f 'lib554.c'; then $(CYGPATH_W) 'lib554.c'; else $(CYGPATH_W) '$(srcdir)/lib554.c'; fi`
+
+lib554-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib554-first.o -MD -MP -MF $(DEPDIR)/lib554-first.Tpo -c -o lib554-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib554-first.Tpo $(DEPDIR)/lib554-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib554-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib554-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib554-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib554-first.obj -MD -MP -MF $(DEPDIR)/lib554-first.Tpo -c -o lib554-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib554-first.Tpo $(DEPDIR)/lib554-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib554-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib554_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib554-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib555-lib555.o: lib555.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib555-lib555.o -MD -MP -MF $(DEPDIR)/lib555-lib555.Tpo -c -o lib555-lib555.o `test -f 'lib555.c' || echo '$(srcdir)/'`lib555.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib555-lib555.Tpo $(DEPDIR)/lib555-lib555.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib555.c' object='lib555-lib555.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib555-lib555.o `test -f 'lib555.c' || echo '$(srcdir)/'`lib555.c
+
+lib555-lib555.obj: lib555.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib555-lib555.obj -MD -MP -MF $(DEPDIR)/lib555-lib555.Tpo -c -o lib555-lib555.obj `if test -f 'lib555.c'; then $(CYGPATH_W) 'lib555.c'; else $(CYGPATH_W) '$(srcdir)/lib555.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib555-lib555.Tpo $(DEPDIR)/lib555-lib555.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib555.c' object='lib555-lib555.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib555-lib555.obj `if test -f 'lib555.c'; then $(CYGPATH_W) 'lib555.c'; else $(CYGPATH_W) '$(srcdir)/lib555.c'; fi`
+
+lib555-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib555-first.o -MD -MP -MF $(DEPDIR)/lib555-first.Tpo -c -o lib555-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib555-first.Tpo $(DEPDIR)/lib555-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib555-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib555-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib555-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib555-first.obj -MD -MP -MF $(DEPDIR)/lib555-first.Tpo -c -o lib555-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib555-first.Tpo $(DEPDIR)/lib555-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib555-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib555-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib555-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib555-testutil.o -MD -MP -MF $(DEPDIR)/lib555-testutil.Tpo -c -o lib555-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib555-testutil.Tpo $(DEPDIR)/lib555-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib555-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib555-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib555-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib555-testutil.obj -MD -MP -MF $(DEPDIR)/lib555-testutil.Tpo -c -o lib555-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib555-testutil.Tpo $(DEPDIR)/lib555-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib555-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib555-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib555-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib555-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib555-warnless.Tpo -c -o ../../lib/lib555-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib555-warnless.Tpo ../../lib/$(DEPDIR)/lib555-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib555-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib555-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib555-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib555-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib555-warnless.Tpo -c -o ../../lib/lib555-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib555-warnless.Tpo ../../lib/$(DEPDIR)/lib555-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib555-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib555_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib555-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib556-lib556.o: lib556.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib556-lib556.o -MD -MP -MF $(DEPDIR)/lib556-lib556.Tpo -c -o lib556-lib556.o `test -f 'lib556.c' || echo '$(srcdir)/'`lib556.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib556-lib556.Tpo $(DEPDIR)/lib556-lib556.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib556.c' object='lib556-lib556.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib556-lib556.o `test -f 'lib556.c' || echo '$(srcdir)/'`lib556.c
+
+lib556-lib556.obj: lib556.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib556-lib556.obj -MD -MP -MF $(DEPDIR)/lib556-lib556.Tpo -c -o lib556-lib556.obj `if test -f 'lib556.c'; then $(CYGPATH_W) 'lib556.c'; else $(CYGPATH_W) '$(srcdir)/lib556.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib556-lib556.Tpo $(DEPDIR)/lib556-lib556.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib556.c' object='lib556-lib556.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib556-lib556.obj `if test -f 'lib556.c'; then $(CYGPATH_W) 'lib556.c'; else $(CYGPATH_W) '$(srcdir)/lib556.c'; fi`
+
+lib556-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib556-first.o -MD -MP -MF $(DEPDIR)/lib556-first.Tpo -c -o lib556-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib556-first.Tpo $(DEPDIR)/lib556-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib556-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib556-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib556-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib556-first.obj -MD -MP -MF $(DEPDIR)/lib556-first.Tpo -c -o lib556-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib556-first.Tpo $(DEPDIR)/lib556-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib556-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib556-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+../../lib/lib556-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib556-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib556-warnless.Tpo -c -o ../../lib/lib556-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib556-warnless.Tpo ../../lib/$(DEPDIR)/lib556-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib556-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib556-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib556-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib556-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib556-warnless.Tpo -c -o ../../lib/lib556-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib556-warnless.Tpo ../../lib/$(DEPDIR)/lib556-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib556-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib556_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib556-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib557-lib557.o: lib557.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib557-lib557.o -MD -MP -MF $(DEPDIR)/lib557-lib557.Tpo -c -o lib557-lib557.o `test -f 'lib557.c' || echo '$(srcdir)/'`lib557.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib557-lib557.Tpo $(DEPDIR)/lib557-lib557.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib557.c' object='lib557-lib557.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib557-lib557.o `test -f 'lib557.c' || echo '$(srcdir)/'`lib557.c
+
+lib557-lib557.obj: lib557.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib557-lib557.obj -MD -MP -MF $(DEPDIR)/lib557-lib557.Tpo -c -o lib557-lib557.obj `if test -f 'lib557.c'; then $(CYGPATH_W) 'lib557.c'; else $(CYGPATH_W) '$(srcdir)/lib557.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib557-lib557.Tpo $(DEPDIR)/lib557-lib557.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib557.c' object='lib557-lib557.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib557-lib557.obj `if test -f 'lib557.c'; then $(CYGPATH_W) 'lib557.c'; else $(CYGPATH_W) '$(srcdir)/lib557.c'; fi`
+
+lib557-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib557-first.o -MD -MP -MF $(DEPDIR)/lib557-first.Tpo -c -o lib557-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib557-first.Tpo $(DEPDIR)/lib557-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib557-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib557-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib557-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib557-first.obj -MD -MP -MF $(DEPDIR)/lib557-first.Tpo -c -o lib557-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib557-first.Tpo $(DEPDIR)/lib557-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib557-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib557_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib557-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib558-lib558.o: lib558.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib558-lib558.o -MD -MP -MF $(DEPDIR)/lib558-lib558.Tpo -c -o lib558-lib558.o `test -f 'lib558.c' || echo '$(srcdir)/'`lib558.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib558-lib558.Tpo $(DEPDIR)/lib558-lib558.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib558.c' object='lib558-lib558.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib558-lib558.o `test -f 'lib558.c' || echo '$(srcdir)/'`lib558.c
+
+lib558-lib558.obj: lib558.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib558-lib558.obj -MD -MP -MF $(DEPDIR)/lib558-lib558.Tpo -c -o lib558-lib558.obj `if test -f 'lib558.c'; then $(CYGPATH_W) 'lib558.c'; else $(CYGPATH_W) '$(srcdir)/lib558.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib558-lib558.Tpo $(DEPDIR)/lib558-lib558.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib558.c' object='lib558-lib558.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib558-lib558.obj `if test -f 'lib558.c'; then $(CYGPATH_W) 'lib558.c'; else $(CYGPATH_W) '$(srcdir)/lib558.c'; fi`
+
+lib558-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib558-first.o -MD -MP -MF $(DEPDIR)/lib558-first.Tpo -c -o lib558-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib558-first.Tpo $(DEPDIR)/lib558-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib558-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib558-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib558-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib558-first.obj -MD -MP -MF $(DEPDIR)/lib558-first.Tpo -c -o lib558-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib558-first.Tpo $(DEPDIR)/lib558-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib558-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib558_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib558-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib559-lib559.o: lib559.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib559-lib559.o -MD -MP -MF $(DEPDIR)/lib559-lib559.Tpo -c -o lib559-lib559.o `test -f 'lib559.c' || echo '$(srcdir)/'`lib559.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib559-lib559.Tpo $(DEPDIR)/lib559-lib559.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib559.c' object='lib559-lib559.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib559-lib559.o `test -f 'lib559.c' || echo '$(srcdir)/'`lib559.c
+
+lib559-lib559.obj: lib559.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib559-lib559.obj -MD -MP -MF $(DEPDIR)/lib559-lib559.Tpo -c -o lib559-lib559.obj `if test -f 'lib559.c'; then $(CYGPATH_W) 'lib559.c'; else $(CYGPATH_W) '$(srcdir)/lib559.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib559-lib559.Tpo $(DEPDIR)/lib559-lib559.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib559.c' object='lib559-lib559.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib559-lib559.obj `if test -f 'lib559.c'; then $(CYGPATH_W) 'lib559.c'; else $(CYGPATH_W) '$(srcdir)/lib559.c'; fi`
+
+lib559-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib559-first.o -MD -MP -MF $(DEPDIR)/lib559-first.Tpo -c -o lib559-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib559-first.Tpo $(DEPDIR)/lib559-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib559-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib559-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib559-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib559-first.obj -MD -MP -MF $(DEPDIR)/lib559-first.Tpo -c -o lib559-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib559-first.Tpo $(DEPDIR)/lib559-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib559-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib559_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib559-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib560-lib560.o: lib560.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib560-lib560.o -MD -MP -MF $(DEPDIR)/lib560-lib560.Tpo -c -o lib560-lib560.o `test -f 'lib560.c' || echo '$(srcdir)/'`lib560.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib560-lib560.Tpo $(DEPDIR)/lib560-lib560.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib560.c' object='lib560-lib560.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib560-lib560.o `test -f 'lib560.c' || echo '$(srcdir)/'`lib560.c
+
+lib560-lib560.obj: lib560.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib560-lib560.obj -MD -MP -MF $(DEPDIR)/lib560-lib560.Tpo -c -o lib560-lib560.obj `if test -f 'lib560.c'; then $(CYGPATH_W) 'lib560.c'; else $(CYGPATH_W) '$(srcdir)/lib560.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib560-lib560.Tpo $(DEPDIR)/lib560-lib560.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib560.c' object='lib560-lib560.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib560-lib560.obj `if test -f 'lib560.c'; then $(CYGPATH_W) 'lib560.c'; else $(CYGPATH_W) '$(srcdir)/lib560.c'; fi`
+
+lib560-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib560-first.o -MD -MP -MF $(DEPDIR)/lib560-first.Tpo -c -o lib560-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib560-first.Tpo $(DEPDIR)/lib560-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib560-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib560-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib560-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib560-first.obj -MD -MP -MF $(DEPDIR)/lib560-first.Tpo -c -o lib560-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib560-first.Tpo $(DEPDIR)/lib560-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib560-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib560-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib560-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib560-testutil.o -MD -MP -MF $(DEPDIR)/lib560-testutil.Tpo -c -o lib560-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib560-testutil.Tpo $(DEPDIR)/lib560-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib560-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib560-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib560-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib560-testutil.obj -MD -MP -MF $(DEPDIR)/lib560-testutil.Tpo -c -o lib560-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib560-testutil.Tpo $(DEPDIR)/lib560-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib560-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib560-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib560-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib560-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib560-warnless.Tpo -c -o ../../lib/lib560-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib560-warnless.Tpo ../../lib/$(DEPDIR)/lib560-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib560-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib560-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib560-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib560-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib560-warnless.Tpo -c -o ../../lib/lib560-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib560-warnless.Tpo ../../lib/$(DEPDIR)/lib560-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib560-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib560_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib560-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib562-lib562.o: lib562.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib562-lib562.o -MD -MP -MF $(DEPDIR)/lib562-lib562.Tpo -c -o lib562-lib562.o `test -f 'lib562.c' || echo '$(srcdir)/'`lib562.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib562-lib562.Tpo $(DEPDIR)/lib562-lib562.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib562.c' object='lib562-lib562.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib562-lib562.o `test -f 'lib562.c' || echo '$(srcdir)/'`lib562.c
+
+lib562-lib562.obj: lib562.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib562-lib562.obj -MD -MP -MF $(DEPDIR)/lib562-lib562.Tpo -c -o lib562-lib562.obj `if test -f 'lib562.c'; then $(CYGPATH_W) 'lib562.c'; else $(CYGPATH_W) '$(srcdir)/lib562.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib562-lib562.Tpo $(DEPDIR)/lib562-lib562.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib562.c' object='lib562-lib562.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib562-lib562.obj `if test -f 'lib562.c'; then $(CYGPATH_W) 'lib562.c'; else $(CYGPATH_W) '$(srcdir)/lib562.c'; fi`
+
+lib562-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib562-first.o -MD -MP -MF $(DEPDIR)/lib562-first.Tpo -c -o lib562-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib562-first.Tpo $(DEPDIR)/lib562-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib562-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib562-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib562-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib562-first.obj -MD -MP -MF $(DEPDIR)/lib562-first.Tpo -c -o lib562-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib562-first.Tpo $(DEPDIR)/lib562-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib562-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib562_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib562-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib564-lib564.o: lib564.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib564-lib564.o -MD -MP -MF $(DEPDIR)/lib564-lib564.Tpo -c -o lib564-lib564.o `test -f 'lib564.c' || echo '$(srcdir)/'`lib564.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib564-lib564.Tpo $(DEPDIR)/lib564-lib564.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib564.c' object='lib564-lib564.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib564-lib564.o `test -f 'lib564.c' || echo '$(srcdir)/'`lib564.c
+
+lib564-lib564.obj: lib564.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib564-lib564.obj -MD -MP -MF $(DEPDIR)/lib564-lib564.Tpo -c -o lib564-lib564.obj `if test -f 'lib564.c'; then $(CYGPATH_W) 'lib564.c'; else $(CYGPATH_W) '$(srcdir)/lib564.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib564-lib564.Tpo $(DEPDIR)/lib564-lib564.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib564.c' object='lib564-lib564.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib564-lib564.obj `if test -f 'lib564.c'; then $(CYGPATH_W) 'lib564.c'; else $(CYGPATH_W) '$(srcdir)/lib564.c'; fi`
+
+lib564-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib564-first.o -MD -MP -MF $(DEPDIR)/lib564-first.Tpo -c -o lib564-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib564-first.Tpo $(DEPDIR)/lib564-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib564-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib564-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib564-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib564-first.obj -MD -MP -MF $(DEPDIR)/lib564-first.Tpo -c -o lib564-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib564-first.Tpo $(DEPDIR)/lib564-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib564-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib564-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib564-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib564-testutil.o -MD -MP -MF $(DEPDIR)/lib564-testutil.Tpo -c -o lib564-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib564-testutil.Tpo $(DEPDIR)/lib564-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib564-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib564-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib564-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib564-testutil.obj -MD -MP -MF $(DEPDIR)/lib564-testutil.Tpo -c -o lib564-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib564-testutil.Tpo $(DEPDIR)/lib564-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib564-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib564-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib564-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib564-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib564-warnless.Tpo -c -o ../../lib/lib564-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib564-warnless.Tpo ../../lib/$(DEPDIR)/lib564-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib564-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib564-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib564-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib564-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib564-warnless.Tpo -c -o ../../lib/lib564-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib564-warnless.Tpo ../../lib/$(DEPDIR)/lib564-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib564-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib564_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib564-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib565-lib510.o: lib510.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib565-lib510.o -MD -MP -MF $(DEPDIR)/lib565-lib510.Tpo -c -o lib565-lib510.o `test -f 'lib510.c' || echo '$(srcdir)/'`lib510.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib565-lib510.Tpo $(DEPDIR)/lib565-lib510.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib510.c' object='lib565-lib510.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib565-lib510.o `test -f 'lib510.c' || echo '$(srcdir)/'`lib510.c
+
+lib565-lib510.obj: lib510.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib565-lib510.obj -MD -MP -MF $(DEPDIR)/lib565-lib510.Tpo -c -o lib565-lib510.obj `if test -f 'lib510.c'; then $(CYGPATH_W) 'lib510.c'; else $(CYGPATH_W) '$(srcdir)/lib510.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib565-lib510.Tpo $(DEPDIR)/lib565-lib510.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib510.c' object='lib565-lib510.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib565-lib510.obj `if test -f 'lib510.c'; then $(CYGPATH_W) 'lib510.c'; else $(CYGPATH_W) '$(srcdir)/lib510.c'; fi`
+
+lib565-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib565-first.o -MD -MP -MF $(DEPDIR)/lib565-first.Tpo -c -o lib565-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib565-first.Tpo $(DEPDIR)/lib565-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib565-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib565-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib565-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib565-first.obj -MD -MP -MF $(DEPDIR)/lib565-first.Tpo -c -o lib565-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib565-first.Tpo $(DEPDIR)/lib565-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib565-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib565_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib565-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib566-lib566.o: lib566.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib566-lib566.o -MD -MP -MF $(DEPDIR)/lib566-lib566.Tpo -c -o lib566-lib566.o `test -f 'lib566.c' || echo '$(srcdir)/'`lib566.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib566-lib566.Tpo $(DEPDIR)/lib566-lib566.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib566.c' object='lib566-lib566.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib566-lib566.o `test -f 'lib566.c' || echo '$(srcdir)/'`lib566.c
+
+lib566-lib566.obj: lib566.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib566-lib566.obj -MD -MP -MF $(DEPDIR)/lib566-lib566.Tpo -c -o lib566-lib566.obj `if test -f 'lib566.c'; then $(CYGPATH_W) 'lib566.c'; else $(CYGPATH_W) '$(srcdir)/lib566.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib566-lib566.Tpo $(DEPDIR)/lib566-lib566.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib566.c' object='lib566-lib566.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib566-lib566.obj `if test -f 'lib566.c'; then $(CYGPATH_W) 'lib566.c'; else $(CYGPATH_W) '$(srcdir)/lib566.c'; fi`
+
+lib566-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib566-first.o -MD -MP -MF $(DEPDIR)/lib566-first.Tpo -c -o lib566-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib566-first.Tpo $(DEPDIR)/lib566-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib566-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib566-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib566-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib566-first.obj -MD -MP -MF $(DEPDIR)/lib566-first.Tpo -c -o lib566-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib566-first.Tpo $(DEPDIR)/lib566-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib566-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib566_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib566-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib567-lib567.o: lib567.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib567-lib567.o -MD -MP -MF $(DEPDIR)/lib567-lib567.Tpo -c -o lib567-lib567.o `test -f 'lib567.c' || echo '$(srcdir)/'`lib567.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib567-lib567.Tpo $(DEPDIR)/lib567-lib567.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib567.c' object='lib567-lib567.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib567-lib567.o `test -f 'lib567.c' || echo '$(srcdir)/'`lib567.c
+
+lib567-lib567.obj: lib567.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib567-lib567.obj -MD -MP -MF $(DEPDIR)/lib567-lib567.Tpo -c -o lib567-lib567.obj `if test -f 'lib567.c'; then $(CYGPATH_W) 'lib567.c'; else $(CYGPATH_W) '$(srcdir)/lib567.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib567-lib567.Tpo $(DEPDIR)/lib567-lib567.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib567.c' object='lib567-lib567.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib567-lib567.obj `if test -f 'lib567.c'; then $(CYGPATH_W) 'lib567.c'; else $(CYGPATH_W) '$(srcdir)/lib567.c'; fi`
+
+lib567-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib567-first.o -MD -MP -MF $(DEPDIR)/lib567-first.Tpo -c -o lib567-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib567-first.Tpo $(DEPDIR)/lib567-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib567-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib567-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib567-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib567-first.obj -MD -MP -MF $(DEPDIR)/lib567-first.Tpo -c -o lib567-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib567-first.Tpo $(DEPDIR)/lib567-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib567-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib567_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib567-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib568-lib568.o: lib568.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib568-lib568.o -MD -MP -MF $(DEPDIR)/lib568-lib568.Tpo -c -o lib568-lib568.o `test -f 'lib568.c' || echo '$(srcdir)/'`lib568.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib568-lib568.Tpo $(DEPDIR)/lib568-lib568.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib568.c' object='lib568-lib568.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib568-lib568.o `test -f 'lib568.c' || echo '$(srcdir)/'`lib568.c
+
+lib568-lib568.obj: lib568.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib568-lib568.obj -MD -MP -MF $(DEPDIR)/lib568-lib568.Tpo -c -o lib568-lib568.obj `if test -f 'lib568.c'; then $(CYGPATH_W) 'lib568.c'; else $(CYGPATH_W) '$(srcdir)/lib568.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib568-lib568.Tpo $(DEPDIR)/lib568-lib568.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib568.c' object='lib568-lib568.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib568-lib568.obj `if test -f 'lib568.c'; then $(CYGPATH_W) 'lib568.c'; else $(CYGPATH_W) '$(srcdir)/lib568.c'; fi`
+
+lib568-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib568-first.o -MD -MP -MF $(DEPDIR)/lib568-first.Tpo -c -o lib568-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib568-first.Tpo $(DEPDIR)/lib568-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib568-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib568-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib568-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib568-first.obj -MD -MP -MF $(DEPDIR)/lib568-first.Tpo -c -o lib568-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib568-first.Tpo $(DEPDIR)/lib568-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib568-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib568_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib568-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib569-lib569.o: lib569.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib569-lib569.o -MD -MP -MF $(DEPDIR)/lib569-lib569.Tpo -c -o lib569-lib569.o `test -f 'lib569.c' || echo '$(srcdir)/'`lib569.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib569-lib569.Tpo $(DEPDIR)/lib569-lib569.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib569.c' object='lib569-lib569.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib569-lib569.o `test -f 'lib569.c' || echo '$(srcdir)/'`lib569.c
+
+lib569-lib569.obj: lib569.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib569-lib569.obj -MD -MP -MF $(DEPDIR)/lib569-lib569.Tpo -c -o lib569-lib569.obj `if test -f 'lib569.c'; then $(CYGPATH_W) 'lib569.c'; else $(CYGPATH_W) '$(srcdir)/lib569.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib569-lib569.Tpo $(DEPDIR)/lib569-lib569.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib569.c' object='lib569-lib569.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib569-lib569.obj `if test -f 'lib569.c'; then $(CYGPATH_W) 'lib569.c'; else $(CYGPATH_W) '$(srcdir)/lib569.c'; fi`
+
+lib569-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib569-first.o -MD -MP -MF $(DEPDIR)/lib569-first.Tpo -c -o lib569-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib569-first.Tpo $(DEPDIR)/lib569-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib569-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib569-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib569-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib569-first.obj -MD -MP -MF $(DEPDIR)/lib569-first.Tpo -c -o lib569-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib569-first.Tpo $(DEPDIR)/lib569-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib569-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib569_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib569-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib570-lib570.o: lib570.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib570-lib570.o -MD -MP -MF $(DEPDIR)/lib570-lib570.Tpo -c -o lib570-lib570.o `test -f 'lib570.c' || echo '$(srcdir)/'`lib570.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib570-lib570.Tpo $(DEPDIR)/lib570-lib570.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib570.c' object='lib570-lib570.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib570-lib570.o `test -f 'lib570.c' || echo '$(srcdir)/'`lib570.c
+
+lib570-lib570.obj: lib570.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib570-lib570.obj -MD -MP -MF $(DEPDIR)/lib570-lib570.Tpo -c -o lib570-lib570.obj `if test -f 'lib570.c'; then $(CYGPATH_W) 'lib570.c'; else $(CYGPATH_W) '$(srcdir)/lib570.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib570-lib570.Tpo $(DEPDIR)/lib570-lib570.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib570.c' object='lib570-lib570.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib570-lib570.obj `if test -f 'lib570.c'; then $(CYGPATH_W) 'lib570.c'; else $(CYGPATH_W) '$(srcdir)/lib570.c'; fi`
+
+lib570-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib570-first.o -MD -MP -MF $(DEPDIR)/lib570-first.Tpo -c -o lib570-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib570-first.Tpo $(DEPDIR)/lib570-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib570-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib570-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib570-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib570-first.obj -MD -MP -MF $(DEPDIR)/lib570-first.Tpo -c -o lib570-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib570-first.Tpo $(DEPDIR)/lib570-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib570-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib570_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib570-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib571-lib571.o: lib571.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib571-lib571.o -MD -MP -MF $(DEPDIR)/lib571-lib571.Tpo -c -o lib571-lib571.o `test -f 'lib571.c' || echo '$(srcdir)/'`lib571.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib571-lib571.Tpo $(DEPDIR)/lib571-lib571.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib571.c' object='lib571-lib571.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib571-lib571.o `test -f 'lib571.c' || echo '$(srcdir)/'`lib571.c
+
+lib571-lib571.obj: lib571.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib571-lib571.obj -MD -MP -MF $(DEPDIR)/lib571-lib571.Tpo -c -o lib571-lib571.obj `if test -f 'lib571.c'; then $(CYGPATH_W) 'lib571.c'; else $(CYGPATH_W) '$(srcdir)/lib571.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib571-lib571.Tpo $(DEPDIR)/lib571-lib571.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib571.c' object='lib571-lib571.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib571-lib571.obj `if test -f 'lib571.c'; then $(CYGPATH_W) 'lib571.c'; else $(CYGPATH_W) '$(srcdir)/lib571.c'; fi`
+
+lib571-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib571-first.o -MD -MP -MF $(DEPDIR)/lib571-first.Tpo -c -o lib571-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib571-first.Tpo $(DEPDIR)/lib571-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib571-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib571-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib571-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib571-first.obj -MD -MP -MF $(DEPDIR)/lib571-first.Tpo -c -o lib571-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib571-first.Tpo $(DEPDIR)/lib571-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib571-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib571-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+../../lib/lib571-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib571-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib571-warnless.Tpo -c -o ../../lib/lib571-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib571-warnless.Tpo ../../lib/$(DEPDIR)/lib571-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib571-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib571-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib571-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib571-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib571-warnless.Tpo -c -o ../../lib/lib571-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib571-warnless.Tpo ../../lib/$(DEPDIR)/lib571-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib571-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib571_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib571-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib572-lib572.o: lib572.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib572-lib572.o -MD -MP -MF $(DEPDIR)/lib572-lib572.Tpo -c -o lib572-lib572.o `test -f 'lib572.c' || echo '$(srcdir)/'`lib572.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib572-lib572.Tpo $(DEPDIR)/lib572-lib572.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib572.c' object='lib572-lib572.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib572-lib572.o `test -f 'lib572.c' || echo '$(srcdir)/'`lib572.c
+
+lib572-lib572.obj: lib572.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib572-lib572.obj -MD -MP -MF $(DEPDIR)/lib572-lib572.Tpo -c -o lib572-lib572.obj `if test -f 'lib572.c'; then $(CYGPATH_W) 'lib572.c'; else $(CYGPATH_W) '$(srcdir)/lib572.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib572-lib572.Tpo $(DEPDIR)/lib572-lib572.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib572.c' object='lib572-lib572.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib572-lib572.obj `if test -f 'lib572.c'; then $(CYGPATH_W) 'lib572.c'; else $(CYGPATH_W) '$(srcdir)/lib572.c'; fi`
+
+lib572-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib572-first.o -MD -MP -MF $(DEPDIR)/lib572-first.Tpo -c -o lib572-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib572-first.Tpo $(DEPDIR)/lib572-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib572-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib572-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib572-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib572-first.obj -MD -MP -MF $(DEPDIR)/lib572-first.Tpo -c -o lib572-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib572-first.Tpo $(DEPDIR)/lib572-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib572-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib572_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib572-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib573-lib573.o: lib573.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-lib573.o -MD -MP -MF $(DEPDIR)/lib573-lib573.Tpo -c -o lib573-lib573.o `test -f 'lib573.c' || echo '$(srcdir)/'`lib573.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-lib573.Tpo $(DEPDIR)/lib573-lib573.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib573.c' object='lib573-lib573.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-lib573.o `test -f 'lib573.c' || echo '$(srcdir)/'`lib573.c
+
+lib573-lib573.obj: lib573.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-lib573.obj -MD -MP -MF $(DEPDIR)/lib573-lib573.Tpo -c -o lib573-lib573.obj `if test -f 'lib573.c'; then $(CYGPATH_W) 'lib573.c'; else $(CYGPATH_W) '$(srcdir)/lib573.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-lib573.Tpo $(DEPDIR)/lib573-lib573.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib573.c' object='lib573-lib573.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-lib573.obj `if test -f 'lib573.c'; then $(CYGPATH_W) 'lib573.c'; else $(CYGPATH_W) '$(srcdir)/lib573.c'; fi`
+
+lib573-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-first.o -MD -MP -MF $(DEPDIR)/lib573-first.Tpo -c -o lib573-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-first.Tpo $(DEPDIR)/lib573-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib573-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib573-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-first.obj -MD -MP -MF $(DEPDIR)/lib573-first.Tpo -c -o lib573-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-first.Tpo $(DEPDIR)/lib573-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib573-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib573-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-testutil.o -MD -MP -MF $(DEPDIR)/lib573-testutil.Tpo -c -o lib573-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-testutil.Tpo $(DEPDIR)/lib573-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib573-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib573-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-testutil.obj -MD -MP -MF $(DEPDIR)/lib573-testutil.Tpo -c -o lib573-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-testutil.Tpo $(DEPDIR)/lib573-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib573-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib573-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib573-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib573-warnless.Tpo -c -o ../../lib/lib573-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib573-warnless.Tpo ../../lib/$(DEPDIR)/lib573-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib573-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib573-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib573-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib573-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib573-warnless.Tpo -c -o ../../lib/lib573-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib573-warnless.Tpo ../../lib/$(DEPDIR)/lib573-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib573-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib573-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib573-testtrace.o: testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-testtrace.o -MD -MP -MF $(DEPDIR)/lib573-testtrace.Tpo -c -o lib573-testtrace.o `test -f 'testtrace.c' || echo '$(srcdir)/'`testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-testtrace.Tpo $(DEPDIR)/lib573-testtrace.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testtrace.c' object='lib573-testtrace.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-testtrace.o `test -f 'testtrace.c' || echo '$(srcdir)/'`testtrace.c
+
+lib573-testtrace.obj: testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib573-testtrace.obj -MD -MP -MF $(DEPDIR)/lib573-testtrace.Tpo -c -o lib573-testtrace.obj `if test -f 'testtrace.c'; then $(CYGPATH_W) 'testtrace.c'; else $(CYGPATH_W) '$(srcdir)/testtrace.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib573-testtrace.Tpo $(DEPDIR)/lib573-testtrace.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testtrace.c' object='lib573-testtrace.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib573_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib573-testtrace.obj `if test -f 'testtrace.c'; then $(CYGPATH_W) 'testtrace.c'; else $(CYGPATH_W) '$(srcdir)/testtrace.c'; fi`
+
+lib574-lib574.o: lib574.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib574-lib574.o -MD -MP -MF $(DEPDIR)/lib574-lib574.Tpo -c -o lib574-lib574.o `test -f 'lib574.c' || echo '$(srcdir)/'`lib574.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib574-lib574.Tpo $(DEPDIR)/lib574-lib574.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib574.c' object='lib574-lib574.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib574-lib574.o `test -f 'lib574.c' || echo '$(srcdir)/'`lib574.c
+
+lib574-lib574.obj: lib574.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib574-lib574.obj -MD -MP -MF $(DEPDIR)/lib574-lib574.Tpo -c -o lib574-lib574.obj `if test -f 'lib574.c'; then $(CYGPATH_W) 'lib574.c'; else $(CYGPATH_W) '$(srcdir)/lib574.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib574-lib574.Tpo $(DEPDIR)/lib574-lib574.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib574.c' object='lib574-lib574.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib574-lib574.obj `if test -f 'lib574.c'; then $(CYGPATH_W) 'lib574.c'; else $(CYGPATH_W) '$(srcdir)/lib574.c'; fi`
+
+lib574-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib574-first.o -MD -MP -MF $(DEPDIR)/lib574-first.Tpo -c -o lib574-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib574-first.Tpo $(DEPDIR)/lib574-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib574-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib574-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib574-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib574-first.obj -MD -MP -MF $(DEPDIR)/lib574-first.Tpo -c -o lib574-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib574-first.Tpo $(DEPDIR)/lib574-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib574-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib574_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib574-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib575-lib575.o: lib575.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib575-lib575.o -MD -MP -MF $(DEPDIR)/lib575-lib575.Tpo -c -o lib575-lib575.o `test -f 'lib575.c' || echo '$(srcdir)/'`lib575.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib575-lib575.Tpo $(DEPDIR)/lib575-lib575.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib575.c' object='lib575-lib575.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib575-lib575.o `test -f 'lib575.c' || echo '$(srcdir)/'`lib575.c
+
+lib575-lib575.obj: lib575.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib575-lib575.obj -MD -MP -MF $(DEPDIR)/lib575-lib575.Tpo -c -o lib575-lib575.obj `if test -f 'lib575.c'; then $(CYGPATH_W) 'lib575.c'; else $(CYGPATH_W) '$(srcdir)/lib575.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib575-lib575.Tpo $(DEPDIR)/lib575-lib575.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib575.c' object='lib575-lib575.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib575-lib575.obj `if test -f 'lib575.c'; then $(CYGPATH_W) 'lib575.c'; else $(CYGPATH_W) '$(srcdir)/lib575.c'; fi`
+
+lib575-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib575-first.o -MD -MP -MF $(DEPDIR)/lib575-first.Tpo -c -o lib575-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib575-first.Tpo $(DEPDIR)/lib575-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib575-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib575-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib575-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib575-first.obj -MD -MP -MF $(DEPDIR)/lib575-first.Tpo -c -o lib575-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib575-first.Tpo $(DEPDIR)/lib575-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib575-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib575-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib575-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib575-testutil.o -MD -MP -MF $(DEPDIR)/lib575-testutil.Tpo -c -o lib575-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib575-testutil.Tpo $(DEPDIR)/lib575-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib575-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib575-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib575-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib575-testutil.obj -MD -MP -MF $(DEPDIR)/lib575-testutil.Tpo -c -o lib575-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib575-testutil.Tpo $(DEPDIR)/lib575-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib575-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib575-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib575-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib575-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib575-warnless.Tpo -c -o ../../lib/lib575-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib575-warnless.Tpo ../../lib/$(DEPDIR)/lib575-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib575-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib575-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib575-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib575-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib575-warnless.Tpo -c -o ../../lib/lib575-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib575-warnless.Tpo ../../lib/$(DEPDIR)/lib575-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib575-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib575_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib575-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib576-lib576.o: lib576.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib576-lib576.o -MD -MP -MF $(DEPDIR)/lib576-lib576.Tpo -c -o lib576-lib576.o `test -f 'lib576.c' || echo '$(srcdir)/'`lib576.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib576-lib576.Tpo $(DEPDIR)/lib576-lib576.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib576.c' object='lib576-lib576.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib576-lib576.o `test -f 'lib576.c' || echo '$(srcdir)/'`lib576.c
+
+lib576-lib576.obj: lib576.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib576-lib576.obj -MD -MP -MF $(DEPDIR)/lib576-lib576.Tpo -c -o lib576-lib576.obj `if test -f 'lib576.c'; then $(CYGPATH_W) 'lib576.c'; else $(CYGPATH_W) '$(srcdir)/lib576.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib576-lib576.Tpo $(DEPDIR)/lib576-lib576.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib576.c' object='lib576-lib576.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib576-lib576.obj `if test -f 'lib576.c'; then $(CYGPATH_W) 'lib576.c'; else $(CYGPATH_W) '$(srcdir)/lib576.c'; fi`
+
+lib576-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib576-first.o -MD -MP -MF $(DEPDIR)/lib576-first.Tpo -c -o lib576-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib576-first.Tpo $(DEPDIR)/lib576-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib576-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib576-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib576-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib576-first.obj -MD -MP -MF $(DEPDIR)/lib576-first.Tpo -c -o lib576-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib576-first.Tpo $(DEPDIR)/lib576-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib576-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib576_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib576-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib578-lib578.o: lib578.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib578-lib578.o -MD -MP -MF $(DEPDIR)/lib578-lib578.Tpo -c -o lib578-lib578.o `test -f 'lib578.c' || echo '$(srcdir)/'`lib578.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib578-lib578.Tpo $(DEPDIR)/lib578-lib578.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib578.c' object='lib578-lib578.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib578-lib578.o `test -f 'lib578.c' || echo '$(srcdir)/'`lib578.c
+
+lib578-lib578.obj: lib578.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib578-lib578.obj -MD -MP -MF $(DEPDIR)/lib578-lib578.Tpo -c -o lib578-lib578.obj `if test -f 'lib578.c'; then $(CYGPATH_W) 'lib578.c'; else $(CYGPATH_W) '$(srcdir)/lib578.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib578-lib578.Tpo $(DEPDIR)/lib578-lib578.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib578.c' object='lib578-lib578.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib578-lib578.obj `if test -f 'lib578.c'; then $(CYGPATH_W) 'lib578.c'; else $(CYGPATH_W) '$(srcdir)/lib578.c'; fi`
+
+lib578-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib578-first.o -MD -MP -MF $(DEPDIR)/lib578-first.Tpo -c -o lib578-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib578-first.Tpo $(DEPDIR)/lib578-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib578-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib578-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib578-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib578-first.obj -MD -MP -MF $(DEPDIR)/lib578-first.Tpo -c -o lib578-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib578-first.Tpo $(DEPDIR)/lib578-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib578-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib578_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib578-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib579-lib579.o: lib579.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib579-lib579.o -MD -MP -MF $(DEPDIR)/lib579-lib579.Tpo -c -o lib579-lib579.o `test -f 'lib579.c' || echo '$(srcdir)/'`lib579.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib579-lib579.Tpo $(DEPDIR)/lib579-lib579.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib579.c' object='lib579-lib579.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib579-lib579.o `test -f 'lib579.c' || echo '$(srcdir)/'`lib579.c
+
+lib579-lib579.obj: lib579.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib579-lib579.obj -MD -MP -MF $(DEPDIR)/lib579-lib579.Tpo -c -o lib579-lib579.obj `if test -f 'lib579.c'; then $(CYGPATH_W) 'lib579.c'; else $(CYGPATH_W) '$(srcdir)/lib579.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib579-lib579.Tpo $(DEPDIR)/lib579-lib579.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib579.c' object='lib579-lib579.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib579-lib579.obj `if test -f 'lib579.c'; then $(CYGPATH_W) 'lib579.c'; else $(CYGPATH_W) '$(srcdir)/lib579.c'; fi`
+
+lib579-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib579-first.o -MD -MP -MF $(DEPDIR)/lib579-first.Tpo -c -o lib579-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib579-first.Tpo $(DEPDIR)/lib579-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib579-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib579-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib579-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib579-first.obj -MD -MP -MF $(DEPDIR)/lib579-first.Tpo -c -o lib579-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib579-first.Tpo $(DEPDIR)/lib579-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib579-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib579_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib579-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib582-lib582.o: lib582.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib582-lib582.o -MD -MP -MF $(DEPDIR)/lib582-lib582.Tpo -c -o lib582-lib582.o `test -f 'lib582.c' || echo '$(srcdir)/'`lib582.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib582-lib582.Tpo $(DEPDIR)/lib582-lib582.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib582.c' object='lib582-lib582.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib582-lib582.o `test -f 'lib582.c' || echo '$(srcdir)/'`lib582.c
+
+lib582-lib582.obj: lib582.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib582-lib582.obj -MD -MP -MF $(DEPDIR)/lib582-lib582.Tpo -c -o lib582-lib582.obj `if test -f 'lib582.c'; then $(CYGPATH_W) 'lib582.c'; else $(CYGPATH_W) '$(srcdir)/lib582.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib582-lib582.Tpo $(DEPDIR)/lib582-lib582.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib582.c' object='lib582-lib582.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib582-lib582.obj `if test -f 'lib582.c'; then $(CYGPATH_W) 'lib582.c'; else $(CYGPATH_W) '$(srcdir)/lib582.c'; fi`
+
+lib582-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib582-first.o -MD -MP -MF $(DEPDIR)/lib582-first.Tpo -c -o lib582-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib582-first.Tpo $(DEPDIR)/lib582-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib582-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib582-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib582-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib582-first.obj -MD -MP -MF $(DEPDIR)/lib582-first.Tpo -c -o lib582-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib582-first.Tpo $(DEPDIR)/lib582-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib582-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib582-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib582-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib582-testutil.o -MD -MP -MF $(DEPDIR)/lib582-testutil.Tpo -c -o lib582-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib582-testutil.Tpo $(DEPDIR)/lib582-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib582-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib582-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib582-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib582-testutil.obj -MD -MP -MF $(DEPDIR)/lib582-testutil.Tpo -c -o lib582-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib582-testutil.Tpo $(DEPDIR)/lib582-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib582-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib582-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib582-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib582-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib582-warnless.Tpo -c -o ../../lib/lib582-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib582-warnless.Tpo ../../lib/$(DEPDIR)/lib582-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib582-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib582-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib582-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib582-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib582-warnless.Tpo -c -o ../../lib/lib582-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib582-warnless.Tpo ../../lib/$(DEPDIR)/lib582-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib582-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib582_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib582-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib583-lib583.o: lib583.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib583-lib583.o -MD -MP -MF $(DEPDIR)/lib583-lib583.Tpo -c -o lib583-lib583.o `test -f 'lib583.c' || echo '$(srcdir)/'`lib583.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib583-lib583.Tpo $(DEPDIR)/lib583-lib583.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib583.c' object='lib583-lib583.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib583-lib583.o `test -f 'lib583.c' || echo '$(srcdir)/'`lib583.c
+
+lib583-lib583.obj: lib583.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib583-lib583.obj -MD -MP -MF $(DEPDIR)/lib583-lib583.Tpo -c -o lib583-lib583.obj `if test -f 'lib583.c'; then $(CYGPATH_W) 'lib583.c'; else $(CYGPATH_W) '$(srcdir)/lib583.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib583-lib583.Tpo $(DEPDIR)/lib583-lib583.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib583.c' object='lib583-lib583.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib583-lib583.obj `if test -f 'lib583.c'; then $(CYGPATH_W) 'lib583.c'; else $(CYGPATH_W) '$(srcdir)/lib583.c'; fi`
+
+lib583-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib583-first.o -MD -MP -MF $(DEPDIR)/lib583-first.Tpo -c -o lib583-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib583-first.Tpo $(DEPDIR)/lib583-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib583-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib583-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib583-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib583-first.obj -MD -MP -MF $(DEPDIR)/lib583-first.Tpo -c -o lib583-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib583-first.Tpo $(DEPDIR)/lib583-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib583-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib583_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib583-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib585-lib500.o: lib500.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-lib500.o -MD -MP -MF $(DEPDIR)/lib585-lib500.Tpo -c -o lib585-lib500.o `test -f 'lib500.c' || echo '$(srcdir)/'`lib500.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-lib500.Tpo $(DEPDIR)/lib585-lib500.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib500.c' object='lib585-lib500.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-lib500.o `test -f 'lib500.c' || echo '$(srcdir)/'`lib500.c
+
+lib585-lib500.obj: lib500.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-lib500.obj -MD -MP -MF $(DEPDIR)/lib585-lib500.Tpo -c -o lib585-lib500.obj `if test -f 'lib500.c'; then $(CYGPATH_W) 'lib500.c'; else $(CYGPATH_W) '$(srcdir)/lib500.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-lib500.Tpo $(DEPDIR)/lib585-lib500.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib500.c' object='lib585-lib500.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-lib500.obj `if test -f 'lib500.c'; then $(CYGPATH_W) 'lib500.c'; else $(CYGPATH_W) '$(srcdir)/lib500.c'; fi`
+
+lib585-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-first.o -MD -MP -MF $(DEPDIR)/lib585-first.Tpo -c -o lib585-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-first.Tpo $(DEPDIR)/lib585-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib585-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib585-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-first.obj -MD -MP -MF $(DEPDIR)/lib585-first.Tpo -c -o lib585-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-first.Tpo $(DEPDIR)/lib585-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib585-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib585-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-testutil.o -MD -MP -MF $(DEPDIR)/lib585-testutil.Tpo -c -o lib585-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-testutil.Tpo $(DEPDIR)/lib585-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib585-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib585-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-testutil.obj -MD -MP -MF $(DEPDIR)/lib585-testutil.Tpo -c -o lib585-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-testutil.Tpo $(DEPDIR)/lib585-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib585-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+lib585-testtrace.o: testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-testtrace.o -MD -MP -MF $(DEPDIR)/lib585-testtrace.Tpo -c -o lib585-testtrace.o `test -f 'testtrace.c' || echo '$(srcdir)/'`testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-testtrace.Tpo $(DEPDIR)/lib585-testtrace.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testtrace.c' object='lib585-testtrace.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-testtrace.o `test -f 'testtrace.c' || echo '$(srcdir)/'`testtrace.c
+
+lib585-testtrace.obj: testtrace.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib585-testtrace.obj -MD -MP -MF $(DEPDIR)/lib585-testtrace.Tpo -c -o lib585-testtrace.obj `if test -f 'testtrace.c'; then $(CYGPATH_W) 'testtrace.c'; else $(CYGPATH_W) '$(srcdir)/testtrace.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib585-testtrace.Tpo $(DEPDIR)/lib585-testtrace.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testtrace.c' object='lib585-testtrace.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib585_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib585-testtrace.obj `if test -f 'testtrace.c'; then $(CYGPATH_W) 'testtrace.c'; else $(CYGPATH_W) '$(srcdir)/testtrace.c'; fi`
+
+lib586-lib586.o: lib586.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib586-lib586.o -MD -MP -MF $(DEPDIR)/lib586-lib586.Tpo -c -o lib586-lib586.o `test -f 'lib586.c' || echo '$(srcdir)/'`lib586.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib586-lib586.Tpo $(DEPDIR)/lib586-lib586.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib586.c' object='lib586-lib586.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib586-lib586.o `test -f 'lib586.c' || echo '$(srcdir)/'`lib586.c
+
+lib586-lib586.obj: lib586.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib586-lib586.obj -MD -MP -MF $(DEPDIR)/lib586-lib586.Tpo -c -o lib586-lib586.obj `if test -f 'lib586.c'; then $(CYGPATH_W) 'lib586.c'; else $(CYGPATH_W) '$(srcdir)/lib586.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib586-lib586.Tpo $(DEPDIR)/lib586-lib586.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib586.c' object='lib586-lib586.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib586-lib586.obj `if test -f 'lib586.c'; then $(CYGPATH_W) 'lib586.c'; else $(CYGPATH_W) '$(srcdir)/lib586.c'; fi`
+
+lib586-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib586-first.o -MD -MP -MF $(DEPDIR)/lib586-first.Tpo -c -o lib586-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib586-first.Tpo $(DEPDIR)/lib586-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib586-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib586-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib586-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib586-first.obj -MD -MP -MF $(DEPDIR)/lib586-first.Tpo -c -o lib586-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib586-first.Tpo $(DEPDIR)/lib586-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib586-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib586_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib586-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib587-lib554.o: lib554.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib587-lib554.o -MD -MP -MF $(DEPDIR)/lib587-lib554.Tpo -c -o lib587-lib554.o `test -f 'lib554.c' || echo '$(srcdir)/'`lib554.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib587-lib554.Tpo $(DEPDIR)/lib587-lib554.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib554.c' object='lib587-lib554.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib587-lib554.o `test -f 'lib554.c' || echo '$(srcdir)/'`lib554.c
+
+lib587-lib554.obj: lib554.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib587-lib554.obj -MD -MP -MF $(DEPDIR)/lib587-lib554.Tpo -c -o lib587-lib554.obj `if test -f 'lib554.c'; then $(CYGPATH_W) 'lib554.c'; else $(CYGPATH_W) '$(srcdir)/lib554.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib587-lib554.Tpo $(DEPDIR)/lib587-lib554.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib554.c' object='lib587-lib554.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib587-lib554.obj `if test -f 'lib554.c'; then $(CYGPATH_W) 'lib554.c'; else $(CYGPATH_W) '$(srcdir)/lib554.c'; fi`
+
+lib587-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib587-first.o -MD -MP -MF $(DEPDIR)/lib587-first.Tpo -c -o lib587-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib587-first.Tpo $(DEPDIR)/lib587-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib587-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib587-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib587-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib587-first.obj -MD -MP -MF $(DEPDIR)/lib587-first.Tpo -c -o lib587-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib587-first.Tpo $(DEPDIR)/lib587-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib587-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib587_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib587-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib590-lib590.o: lib590.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib590-lib590.o -MD -MP -MF $(DEPDIR)/lib590-lib590.Tpo -c -o lib590-lib590.o `test -f 'lib590.c' || echo '$(srcdir)/'`lib590.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib590-lib590.Tpo $(DEPDIR)/lib590-lib590.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib590.c' object='lib590-lib590.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib590-lib590.o `test -f 'lib590.c' || echo '$(srcdir)/'`lib590.c
+
+lib590-lib590.obj: lib590.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib590-lib590.obj -MD -MP -MF $(DEPDIR)/lib590-lib590.Tpo -c -o lib590-lib590.obj `if test -f 'lib590.c'; then $(CYGPATH_W) 'lib590.c'; else $(CYGPATH_W) '$(srcdir)/lib590.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib590-lib590.Tpo $(DEPDIR)/lib590-lib590.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib590.c' object='lib590-lib590.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib590-lib590.obj `if test -f 'lib590.c'; then $(CYGPATH_W) 'lib590.c'; else $(CYGPATH_W) '$(srcdir)/lib590.c'; fi`
+
+lib590-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib590-first.o -MD -MP -MF $(DEPDIR)/lib590-first.Tpo -c -o lib590-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib590-first.Tpo $(DEPDIR)/lib590-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib590-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib590-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib590-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib590-first.obj -MD -MP -MF $(DEPDIR)/lib590-first.Tpo -c -o lib590-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib590-first.Tpo $(DEPDIR)/lib590-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib590-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib590_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib590-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib591-lib591.o: lib591.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib591-lib591.o -MD -MP -MF $(DEPDIR)/lib591-lib591.Tpo -c -o lib591-lib591.o `test -f 'lib591.c' || echo '$(srcdir)/'`lib591.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib591-lib591.Tpo $(DEPDIR)/lib591-lib591.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib591.c' object='lib591-lib591.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib591-lib591.o `test -f 'lib591.c' || echo '$(srcdir)/'`lib591.c
+
+lib591-lib591.obj: lib591.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib591-lib591.obj -MD -MP -MF $(DEPDIR)/lib591-lib591.Tpo -c -o lib591-lib591.obj `if test -f 'lib591.c'; then $(CYGPATH_W) 'lib591.c'; else $(CYGPATH_W) '$(srcdir)/lib591.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib591-lib591.Tpo $(DEPDIR)/lib591-lib591.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib591.c' object='lib591-lib591.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib591-lib591.obj `if test -f 'lib591.c'; then $(CYGPATH_W) 'lib591.c'; else $(CYGPATH_W) '$(srcdir)/lib591.c'; fi`
+
+lib591-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib591-first.o -MD -MP -MF $(DEPDIR)/lib591-first.Tpo -c -o lib591-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib591-first.Tpo $(DEPDIR)/lib591-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib591-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib591-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib591-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib591-first.obj -MD -MP -MF $(DEPDIR)/lib591-first.Tpo -c -o lib591-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib591-first.Tpo $(DEPDIR)/lib591-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib591-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib591-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib591-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib591-testutil.o -MD -MP -MF $(DEPDIR)/lib591-testutil.Tpo -c -o lib591-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib591-testutil.Tpo $(DEPDIR)/lib591-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib591-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib591-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib591-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib591-testutil.obj -MD -MP -MF $(DEPDIR)/lib591-testutil.Tpo -c -o lib591-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib591-testutil.Tpo $(DEPDIR)/lib591-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib591-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib591-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib591-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib591-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib591-warnless.Tpo -c -o ../../lib/lib591-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib591-warnless.Tpo ../../lib/$(DEPDIR)/lib591-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib591-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib591-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib591-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib591-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib591-warnless.Tpo -c -o ../../lib/lib591-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib591-warnless.Tpo ../../lib/$(DEPDIR)/lib591-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib591-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib591_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib591-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib597-lib597.o: lib597.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib597-lib597.o -MD -MP -MF $(DEPDIR)/lib597-lib597.Tpo -c -o lib597-lib597.o `test -f 'lib597.c' || echo '$(srcdir)/'`lib597.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib597-lib597.Tpo $(DEPDIR)/lib597-lib597.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib597.c' object='lib597-lib597.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib597-lib597.o `test -f 'lib597.c' || echo '$(srcdir)/'`lib597.c
+
+lib597-lib597.obj: lib597.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib597-lib597.obj -MD -MP -MF $(DEPDIR)/lib597-lib597.Tpo -c -o lib597-lib597.obj `if test -f 'lib597.c'; then $(CYGPATH_W) 'lib597.c'; else $(CYGPATH_W) '$(srcdir)/lib597.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib597-lib597.Tpo $(DEPDIR)/lib597-lib597.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib597.c' object='lib597-lib597.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib597-lib597.obj `if test -f 'lib597.c'; then $(CYGPATH_W) 'lib597.c'; else $(CYGPATH_W) '$(srcdir)/lib597.c'; fi`
+
+lib597-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib597-first.o -MD -MP -MF $(DEPDIR)/lib597-first.Tpo -c -o lib597-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib597-first.Tpo $(DEPDIR)/lib597-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib597-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib597-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib597-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib597-first.obj -MD -MP -MF $(DEPDIR)/lib597-first.Tpo -c -o lib597-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib597-first.Tpo $(DEPDIR)/lib597-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib597-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib597-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib597-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib597-testutil.o -MD -MP -MF $(DEPDIR)/lib597-testutil.Tpo -c -o lib597-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib597-testutil.Tpo $(DEPDIR)/lib597-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib597-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib597-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+lib597-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib597-testutil.obj -MD -MP -MF $(DEPDIR)/lib597-testutil.Tpo -c -o lib597-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib597-testutil.Tpo $(DEPDIR)/lib597-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='lib597-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib597-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/lib597-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib597-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib597-warnless.Tpo -c -o ../../lib/lib597-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib597-warnless.Tpo ../../lib/$(DEPDIR)/lib597-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib597-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib597-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/lib597-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib597-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib597-warnless.Tpo -c -o ../../lib/lib597-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib597-warnless.Tpo ../../lib/$(DEPDIR)/lib597-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib597-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib597_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib597-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+lib598-lib598.o: lib598.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib598-lib598.o -MD -MP -MF $(DEPDIR)/lib598-lib598.Tpo -c -o lib598-lib598.o `test -f 'lib598.c' || echo '$(srcdir)/'`lib598.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib598-lib598.Tpo $(DEPDIR)/lib598-lib598.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib598.c' object='lib598-lib598.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib598-lib598.o `test -f 'lib598.c' || echo '$(srcdir)/'`lib598.c
+
+lib598-lib598.obj: lib598.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib598-lib598.obj -MD -MP -MF $(DEPDIR)/lib598-lib598.Tpo -c -o lib598-lib598.obj `if test -f 'lib598.c'; then $(CYGPATH_W) 'lib598.c'; else $(CYGPATH_W) '$(srcdir)/lib598.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib598-lib598.Tpo $(DEPDIR)/lib598-lib598.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib598.c' object='lib598-lib598.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib598-lib598.obj `if test -f 'lib598.c'; then $(CYGPATH_W) 'lib598.c'; else $(CYGPATH_W) '$(srcdir)/lib598.c'; fi`
+
+lib598-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib598-first.o -MD -MP -MF $(DEPDIR)/lib598-first.Tpo -c -o lib598-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib598-first.Tpo $(DEPDIR)/lib598-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib598-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib598-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib598-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib598-first.obj -MD -MP -MF $(DEPDIR)/lib598-first.Tpo -c -o lib598-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib598-first.Tpo $(DEPDIR)/lib598-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib598-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib598_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib598-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+lib599-lib599.o: lib599.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib599-lib599.o -MD -MP -MF $(DEPDIR)/lib599-lib599.Tpo -c -o lib599-lib599.o `test -f 'lib599.c' || echo '$(srcdir)/'`lib599.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib599-lib599.Tpo $(DEPDIR)/lib599-lib599.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib599.c' object='lib599-lib599.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib599-lib599.o `test -f 'lib599.c' || echo '$(srcdir)/'`lib599.c
+
+lib599-lib599.obj: lib599.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib599-lib599.obj -MD -MP -MF $(DEPDIR)/lib599-lib599.Tpo -c -o lib599-lib599.obj `if test -f 'lib599.c'; then $(CYGPATH_W) 'lib599.c'; else $(CYGPATH_W) '$(srcdir)/lib599.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib599-lib599.Tpo $(DEPDIR)/lib599-lib599.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='lib599.c' object='lib599-lib599.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib599-lib599.obj `if test -f 'lib599.c'; then $(CYGPATH_W) 'lib599.c'; else $(CYGPATH_W) '$(srcdir)/lib599.c'; fi`
+
+lib599-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib599-first.o -MD -MP -MF $(DEPDIR)/lib599-first.Tpo -c -o lib599-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib599-first.Tpo $(DEPDIR)/lib599-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib599-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib599-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+lib599-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib599-first.obj -MD -MP -MF $(DEPDIR)/lib599-first.Tpo -c -o lib599-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lib599-first.Tpo $(DEPDIR)/lib599-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='lib599-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib599_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib599-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+libauthretry-libauthretry.o: libauthretry.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libauthretry-libauthretry.o -MD -MP -MF $(DEPDIR)/libauthretry-libauthretry.Tpo -c -o libauthretry-libauthretry.o `test -f 'libauthretry.c' || echo '$(srcdir)/'`libauthretry.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libauthretry-libauthretry.Tpo $(DEPDIR)/libauthretry-libauthretry.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libauthretry.c' object='libauthretry-libauthretry.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libauthretry-libauthretry.o `test -f 'libauthretry.c' || echo '$(srcdir)/'`libauthretry.c
+
+libauthretry-libauthretry.obj: libauthretry.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libauthretry-libauthretry.obj -MD -MP -MF $(DEPDIR)/libauthretry-libauthretry.Tpo -c -o libauthretry-libauthretry.obj `if test -f 'libauthretry.c'; then $(CYGPATH_W) 'libauthretry.c'; else $(CYGPATH_W) '$(srcdir)/libauthretry.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libauthretry-libauthretry.Tpo $(DEPDIR)/libauthretry-libauthretry.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libauthretry.c' object='libauthretry-libauthretry.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libauthretry-libauthretry.obj `if test -f 'libauthretry.c'; then $(CYGPATH_W) 'libauthretry.c'; else $(CYGPATH_W) '$(srcdir)/libauthretry.c'; fi`
+
+libauthretry-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libauthretry-first.o -MD -MP -MF $(DEPDIR)/libauthretry-first.Tpo -c -o libauthretry-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libauthretry-first.Tpo $(DEPDIR)/libauthretry-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='libauthretry-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libauthretry-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+libauthretry-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libauthretry-first.obj -MD -MP -MF $(DEPDIR)/libauthretry-first.Tpo -c -o libauthretry-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libauthretry-first.Tpo $(DEPDIR)/libauthretry-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='libauthretry-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libauthretry_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libauthretry-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+libntlmconnect-libntlmconnect.o: libntlmconnect.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libntlmconnect-libntlmconnect.o -MD -MP -MF $(DEPDIR)/libntlmconnect-libntlmconnect.Tpo -c -o libntlmconnect-libntlmconnect.o `test -f 'libntlmconnect.c' || echo '$(srcdir)/'`libntlmconnect.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libntlmconnect-libntlmconnect.Tpo $(DEPDIR)/libntlmconnect-libntlmconnect.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libntlmconnect.c' object='libntlmconnect-libntlmconnect.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libntlmconnect-libntlmconnect.o `test -f 'libntlmconnect.c' || echo '$(srcdir)/'`libntlmconnect.c
+
+libntlmconnect-libntlmconnect.obj: libntlmconnect.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libntlmconnect-libntlmconnect.obj -MD -MP -MF $(DEPDIR)/libntlmconnect-libntlmconnect.Tpo -c -o libntlmconnect-libntlmconnect.obj `if test -f 'libntlmconnect.c'; then $(CYGPATH_W) 'libntlmconnect.c'; else $(CYGPATH_W) '$(srcdir)/libntlmconnect.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libntlmconnect-libntlmconnect.Tpo $(DEPDIR)/libntlmconnect-libntlmconnect.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libntlmconnect.c' object='libntlmconnect-libntlmconnect.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libntlmconnect-libntlmconnect.obj `if test -f 'libntlmconnect.c'; then $(CYGPATH_W) 'libntlmconnect.c'; else $(CYGPATH_W) '$(srcdir)/libntlmconnect.c'; fi`
+
+libntlmconnect-first.o: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libntlmconnect-first.o -MD -MP -MF $(DEPDIR)/libntlmconnect-first.Tpo -c -o libntlmconnect-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libntlmconnect-first.Tpo $(DEPDIR)/libntlmconnect-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='libntlmconnect-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libntlmconnect-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
+
+libntlmconnect-first.obj: first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libntlmconnect-first.obj -MD -MP -MF $(DEPDIR)/libntlmconnect-first.Tpo -c -o libntlmconnect-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libntlmconnect-first.Tpo $(DEPDIR)/libntlmconnect-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='first.c' object='libntlmconnect-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libntlmconnect-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
+
+libntlmconnect-testutil.o: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libntlmconnect-testutil.o -MD -MP -MF $(DEPDIR)/libntlmconnect-testutil.Tpo -c -o libntlmconnect-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libntlmconnect-testutil.Tpo $(DEPDIR)/libntlmconnect-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='libntlmconnect-testutil.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libntlmconnect-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
+
+libntlmconnect-testutil.obj: testutil.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libntlmconnect-testutil.obj -MD -MP -MF $(DEPDIR)/libntlmconnect-testutil.Tpo -c -o libntlmconnect-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libntlmconnect-testutil.Tpo $(DEPDIR)/libntlmconnect-testutil.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testutil.c' object='libntlmconnect-testutil.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libntlmconnect-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
+
+../../lib/libntlmconnect-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/libntlmconnect-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/libntlmconnect-warnless.Tpo -c -o ../../lib/libntlmconnect-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/libntlmconnect-warnless.Tpo ../../lib/$(DEPDIR)/libntlmconnect-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/libntlmconnect-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/libntlmconnect-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/libntlmconnect-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/libntlmconnect-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/libntlmconnect-warnless.Tpo -c -o ../../lib/libntlmconnect-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/libntlmconnect-warnless.Tpo ../../lib/$(DEPDIR)/libntlmconnect-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/libntlmconnect-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libntlmconnect_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/libntlmconnect-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+	-rm -f ../../lib/$(DEPDIR)/$(am__dirstamp)
+	-rm -f ../../lib/$(am__dirstamp)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
+	clean-noinstPROGRAMS mostlyclean-am
+
+distclean: distclean-am
+	-rm -rf ../../lib/$(DEPDIR) ./$(DEPDIR)
+	-rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+	distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -rf ../../lib/$(DEPDIR) ./$(DEPDIR)
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+	clean-libtool clean-noinstLTLIBRARIES clean-noinstPROGRAMS \
+	cscopelist-am ctags ctags-am distclean distclean-compile \
+	distclean-generic distclean-libtool distclean-tags distdir dvi \
+	dvi-am html html-am info info-am install install-am \
+	install-data install-data-am install-dvi install-dvi-am \
+	install-exec install-exec-am install-html install-html-am \
+	install-info install-info-am install-man install-pdf \
+	install-pdf-am install-ps install-ps-am install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.inc b/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.inc
new file mode 100644
index 0000000..78e90bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/Makefile.inc
@@ -0,0 +1,444 @@
+# files used only in some libcurl test programs
+TESTUTIL = testutil.c testutil.h
+
+# files used only in some libcurl test programs
+TSTTRACE = testtrace.c testtrace.h
+
+# files used only in some libcurl test programs
+WARNLESS = ../../lib/warnless.c ../../lib/warnless.h
+
+# these files are used in every single test program below
+SUPPORTFILES = first.c test.h
+
+# These are all libcurl test programs
+noinst_PROGRAMS = chkhostname libauthretry libntlmconnect                \
+ lib500 lib501 lib502 lib503 lib504 lib505 lib506 lib507 lib508 lib509   \
+ lib510 lib511 lib512 lib513 lib514 lib515 lib516 lib517 lib518 lib519   \
+ lib520 lib521 lib523 lib524 lib525 lib526 lib527 lib529 lib530 lib532   \
+ lib533 lib536 lib537 lib539 lib540 lib541 lib542 lib543 lib544 lib545   \
+ lib547 lib548 lib549 lib552 lib553 lib554 lib555 lib556 lib557 lib558   \
+ lib559 lib560 lib562 lib564 lib565 lib566 lib567 lib568 lib569 lib570   \
+ lib571 lib572 lib573 lib574 lib575 lib576        lib578 lib579 lib582   \
+ lib583 lib585 lib586 lib587        lib590 lib591 lib597 lib598 lib599   \
+ lib1500 lib1501 lib1502 lib1503 lib1504 lib1505 lib1506 lib1507 lib1508 \
+ lib1509 lib1510 lib1511 lib1512 lib1513 lib1514 lib1515         lib1517 \
+ lib1520 lib1521 \
+ lib1525 lib1526 lib1527 lib1528 lib1529 lib1530 lib1531 lib1532 lib1533 \
+ lib1534 lib1535 lib1536 lib1537 lib1538 \
+ lib1540 lib1541 \
+ lib1900 \
+ lib2033
+
+chkhostname_SOURCES = chkhostname.c ../../lib/curl_gethostname.c
+chkhostname_LDADD = @CURL_NETWORK_LIBS@
+chkhostname_DEPENDENCIES =
+chkhostname_CPPFLAGS = $(AM_CPPFLAGS)
+
+libntlmconnect_SOURCES = libntlmconnect.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+libntlmconnect_LDADD = $(TESTUTIL_LIBS)
+libntlmconnect_CPPFLAGS = $(AM_CPPFLAGS)
+
+libauthretry_SOURCES = libauthretry.c $(SUPPORTFILES)
+libauthretry_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib500_SOURCES = lib500.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE)
+lib500_LDADD = $(TESTUTIL_LIBS)
+lib500_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib501_SOURCES = lib501.c $(SUPPORTFILES)
+lib501_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib502_SOURCES = lib502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib502_LDADD = $(TESTUTIL_LIBS)
+lib502_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib503_SOURCES = lib503.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib503_LDADD = $(TESTUTIL_LIBS)
+lib503_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib504_SOURCES = lib504.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib504_LDADD = $(TESTUTIL_LIBS)
+lib504_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib505_SOURCES = lib505.c $(SUPPORTFILES)
+lib505_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib506_SOURCES = lib506.c $(SUPPORTFILES)
+lib506_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib507_SOURCES = lib507.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib507_LDADD = $(TESTUTIL_LIBS)
+lib507_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib508_SOURCES = lib508.c $(SUPPORTFILES)
+lib508_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib509_SOURCES = lib509.c $(SUPPORTFILES)
+lib509_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib510_SOURCES = lib510.c $(SUPPORTFILES)
+lib510_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib511_SOURCES = lib511.c $(SUPPORTFILES)
+lib511_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib512_SOURCES = lib512.c $(SUPPORTFILES)
+lib512_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib513_SOURCES = lib513.c $(SUPPORTFILES)
+lib513_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib514_SOURCES = lib514.c $(SUPPORTFILES)
+lib514_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib515_SOURCES = lib515.c $(SUPPORTFILES)
+lib515_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib516_SOURCES = lib516.c $(SUPPORTFILES)
+lib516_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib517_SOURCES = lib517.c $(SUPPORTFILES)
+lib517_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib518_SOURCES = lib518.c $(SUPPORTFILES) $(WARNLESS)
+lib518_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib519_SOURCES = lib519.c $(SUPPORTFILES)
+lib519_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib520_SOURCES = lib520.c $(SUPPORTFILES)
+lib520_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib521_SOURCES = lib521.c $(SUPPORTFILES)
+lib521_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib523_SOURCES = lib523.c $(SUPPORTFILES)
+lib523_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib524_SOURCES = lib524.c $(SUPPORTFILES)
+lib524_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib525_SOURCES = lib525.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib525_LDADD = $(TESTUTIL_LIBS)
+lib525_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib526_SOURCES = lib526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib526_LDADD = $(TESTUTIL_LIBS)
+lib526_CPPFLAGS = $(AM_CPPFLAGS) -DLIB526
+
+lib527_SOURCES = lib526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib527_LDADD = $(TESTUTIL_LIBS)
+lib527_CPPFLAGS = $(AM_CPPFLAGS) -DLIB527
+
+lib529_SOURCES = lib525.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib529_LDADD = $(TESTUTIL_LIBS)
+lib529_CPPFLAGS = $(AM_CPPFLAGS) -DLIB529
+
+lib530_SOURCES = lib530.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib530_LDADD = $(TESTUTIL_LIBS)
+lib530_CPPFLAGS = $(AM_CPPFLAGS) -DLIB530
+
+lib532_SOURCES = lib526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib532_LDADD = $(TESTUTIL_LIBS)
+lib532_CPPFLAGS = $(AM_CPPFLAGS) -DLIB532
+
+lib533_SOURCES = lib533.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib533_LDADD = $(TESTUTIL_LIBS)
+lib533_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib536_SOURCES = lib536.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib536_LDADD = $(TESTUTIL_LIBS)
+lib536_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib537_SOURCES = lib537.c $(SUPPORTFILES) $(WARNLESS)
+lib537_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib539_SOURCES = lib539.c $(SUPPORTFILES)
+lib539_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib540_SOURCES = lib540.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib540_LDADD = $(TESTUTIL_LIBS)
+lib540_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib541_SOURCES = lib541.c $(SUPPORTFILES)
+lib541_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib542_SOURCES = lib542.c $(SUPPORTFILES)
+lib542_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib543_SOURCES = lib543.c $(SUPPORTFILES)
+lib543_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib544_SOURCES = lib544.c $(SUPPORTFILES)
+lib544_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib545_SOURCES = lib544.c $(SUPPORTFILES)
+lib545_CPPFLAGS = $(AM_CPPFLAGS) -DLIB545
+
+lib547_SOURCES = lib547.c $(SUPPORTFILES)
+lib547_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib548_SOURCES = lib547.c $(SUPPORTFILES)
+lib548_CPPFLAGS = $(AM_CPPFLAGS) -DLIB548
+
+lib549_SOURCES = lib549.c $(SUPPORTFILES)
+lib549_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib552_SOURCES = lib552.c $(SUPPORTFILES) $(WARNLESS)
+lib552_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib553_SOURCES = lib553.c $(SUPPORTFILES)
+lib553_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib554_SOURCES = lib554.c $(SUPPORTFILES)
+lib554_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib555_SOURCES = lib555.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib555_LDADD = $(TESTUTIL_LIBS)
+lib555_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib556_SOURCES = lib556.c $(SUPPORTFILES) $(WARNLESS)
+lib556_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib557_SOURCES = lib557.c $(SUPPORTFILES)
+lib557_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib558_SOURCES = lib558.c $(SUPPORTFILES)
+lib558_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib559_SOURCES = lib559.c $(SUPPORTFILES)
+lib559_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib560_SOURCES = lib560.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib560_LDADD = $(TESTUTIL_LIBS)
+lib560_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib562_SOURCES = lib562.c $(SUPPORTFILES)
+lib562_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib564_SOURCES = lib564.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib564_LDADD = $(TESTUTIL_LIBS)
+lib564_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib565_SOURCES = lib510.c $(SUPPORTFILES)
+lib565_CPPFLAGS = $(AM_CPPFLAGS) -DLIB565
+
+lib566_SOURCES = lib566.c $(SUPPORTFILES)
+lib566_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib567_SOURCES = lib567.c $(SUPPORTFILES)
+lib567_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib568_SOURCES = lib568.c $(SUPPORTFILES)
+lib568_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib569_SOURCES = lib569.c $(SUPPORTFILES)
+lib569_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib570_SOURCES = lib570.c $(SUPPORTFILES)
+lib570_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib571_SOURCES = lib571.c $(SUPPORTFILES) $(WARNLESS)
+lib571_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib572_SOURCES = lib572.c $(SUPPORTFILES)
+lib572_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib573_SOURCES = lib573.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS) $(TSTTRACE)
+lib573_LDADD = $(TESTUTIL_LIBS)
+lib573_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib574_SOURCES = lib574.c $(SUPPORTFILES)
+lib574_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib575_SOURCES = lib575.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib575_LDADD = $(TESTUTIL_LIBS)
+lib575_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib576_SOURCES = lib576.c $(SUPPORTFILES)
+lib576_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib578_SOURCES = lib578.c $(SUPPORTFILES)
+lib578_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib579_SOURCES = lib579.c $(SUPPORTFILES)
+lib579_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib582_SOURCES = lib582.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib582_LDADD = $(TESTUTIL_LIBS)
+lib582_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib583_SOURCES = lib583.c $(SUPPORTFILES)
+lib583_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib585_SOURCES = lib500.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE)
+lib585_LDADD = $(TESTUTIL_LIBS)
+lib585_CPPFLAGS = $(AM_CPPFLAGS) -DLIB585
+
+lib586_SOURCES = lib586.c $(SUPPORTFILES)
+lib586_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib587_SOURCES = lib554.c $(SUPPORTFILES)
+lib587_CPPFLAGS = $(AM_CPPFLAGS) -DLIB587
+
+lib590_SOURCES = lib590.c $(SUPPORTFILES)
+lib590_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib591_SOURCES = lib591.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib591_LDADD = $(TESTUTIL_LIBS)
+lib591_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib597_SOURCES = lib597.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib597_LDADD = $(TESTUTIL_LIBS)
+lib597_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib598_SOURCES = lib598.c $(SUPPORTFILES)
+lib598_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib599_SOURCES = lib599.c $(SUPPORTFILES)
+lib599_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1500_SOURCES = lib1500.c $(SUPPORTFILES) $(TESTUTIL)
+lib1500_LDADD = $(TESTUTIL_LIBS)
+lib1500_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1501_SOURCES = lib1501.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1501_LDADD = $(TESTUTIL_LIBS)
+lib1501_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1502_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1502_LDADD = $(TESTUTIL_LIBS)
+lib1502_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1502
+
+lib1503_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1503_LDADD = $(TESTUTIL_LIBS)
+lib1503_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1503
+
+lib1504_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1504_LDADD = $(TESTUTIL_LIBS)
+lib1504_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1504
+
+lib1505_SOURCES = lib1502.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1505_LDADD = $(TESTUTIL_LIBS)
+lib1505_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1505
+
+lib1506_SOURCES = lib1506.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1506_LDADD = $(TESTUTIL_LIBS)
+lib1506_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1506
+
+lib1507_SOURCES = lib1507.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1507_LDADD = $(TESTUTIL_LIBS)
+lib1507_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1507
+
+lib1508_SOURCES = lib1508.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1508_LDADD = $(TESTUTIL_LIBS)
+lib1508_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1508
+
+lib1509_SOURCES = lib1509.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1509_LDADD = $(TESTUTIL_LIBS)
+lib1509_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1509
+
+lib1510_SOURCES = lib1510.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1510_LDADD = $(TESTUTIL_LIBS)
+lib1510_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1510
+
+lib1511_SOURCES = lib1511.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1511_LDADD = $(TESTUTIL_LIBS)
+lib1511_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1511
+
+lib1512_SOURCES = lib1512.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1512_LDADD = $(TESTUTIL_LIBS)
+lib1512_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1512
+
+lib1513_SOURCES = lib1513.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1513_LDADD = $(TESTUTIL_LIBS)
+lib1513_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1513
+
+lib1514_SOURCES = lib1514.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1514_LDADD = $(TESTUTIL_LIBS)
+lib1514_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1514
+
+lib1515_SOURCES = lib1515.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1515_LDADD = $(TESTUTIL_LIBS)
+lib1515_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1515
+
+lib1517_SOURCES = lib1517.c $(SUPPORTFILES)
+lib1517_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1517
+
+lib1520_SOURCES = lib1520.c $(SUPPORTFILES)
+lib1520_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1520
+
+lib1521_SOURCES = lib1521.c $(SUPPORTFILES)
+lib1521_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1525_SOURCES = lib1525.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1525_LDADD = $(TESTUTIL_LIBS)
+lib1525_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1525
+
+lib1526_SOURCES = lib1526.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1526_LDADD = $(TESTUTIL_LIBS)
+lib1526_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1526
+
+lib1527_SOURCES = lib1527.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1527_LDADD = $(TESTUTIL_LIBS)
+lib1527_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1527
+
+lib1528_SOURCES = lib1528.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1528_LDADD = $(TESTUTIL_LIBS)
+lib1528_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1528
+
+lib1529_SOURCES = lib1529.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1529_LDADD = $(TESTUTIL_LIBS)
+lib1529_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1529
+
+lib1530_SOURCES = lib1530.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1530_LDADD = $(TESTUTIL_LIBS)
+lib1530_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1530
+
+lib1531_SOURCES = lib1531.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1531_LDADD = $(TESTUTIL_LIBS)
+lib1531_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1531
+
+lib1532_SOURCES = lib1532.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1532_LDADD = $(TESTUTIL_LIBS)
+lib1532_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1532
+
+lib1533_SOURCES = lib1533.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1533_LDADD = $(TESTUTIL_LIBS)
+lib1533_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1533
+
+lib1534_SOURCES = lib1534.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1534_LDADD = $(TESTUTIL_LIBS)
+lib1534_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1534
+
+lib1535_SOURCES = lib1535.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1535_LDADD = $(TESTUTIL_LIBS)
+lib1535_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1535
+
+lib1536_SOURCES = lib1536.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1536_LDADD = $(TESTUTIL_LIBS)
+lib1536_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1536
+
+lib1537_SOURCES = lib1537.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1537_LDADD = $(TESTUTIL_LIBS)
+lib1537_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1538_SOURCES = lib1538.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1538_LDADD = $(TESTUTIL_LIBS)
+lib1538_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1540_SOURCES = lib1540.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1540_LDADD = $(TESTUTIL_LIBS)
+lib1540_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1541_SOURCES = lib1541.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1541_LDADD = $(TESTUTIL_LIBS)
+lib1541_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1900_SOURCES = lib1900.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib1900_LDADD = $(TESTUTIL_LIBS)
+lib1900_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib2033_SOURCES = libntlmconnect.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+lib2033_LDADD = $(TESTUTIL_LIBS)
+lib2033_CPPFLAGS = $(AM_CPPFLAGS) -DUSE_PIPELINING
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/chkhostname.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/chkhostname.c
new file mode 100644
index 0000000..79e382b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/chkhostname.c
@@ -0,0 +1,47 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curl_setup.h"
+
+#include "curl_gethostname.h"
+
+#define HOSTNAME_MAX 1024
+
+int main(int argc, char *argv[])
+{
+  char buff[HOSTNAME_MAX];
+  if(argc != 2) {
+    printf("Usage: %s EXPECTED_HOSTNAME\n", argv[0]);
+    return 1;
+  }
+
+  if(Curl_gethostname(buff, HOSTNAME_MAX)) {
+    printf("Curl_gethostname() failed\n");
+    return 1;
+  }
+
+  /* compare the name returned by Curl_gethostname() with the expected one */
+  if(strncmp(buff, argv[1], HOSTNAME_MAX)) {
+    printf("got unexpected host name back, LD_PRELOAD failed\n");
+    return 1;
+  }
+  return 0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/first.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/first.c
new file mode 100644
index 0000000..72140e3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/first.c
@@ -0,0 +1,183 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_LOCALE_H
+#  include <locale.h> /* for setlocale() */
+#endif
+
+#ifdef HAVE_IO_H
+#  include <io.h> /* for setmode() */
+#endif
+
+#ifdef HAVE_FCNTL_H
+#  include <fcntl.h> /* for setmode() */
+#endif
+
+#ifdef USE_NSS
+#include <nspr.h>
+#endif
+
+#ifdef CURLDEBUG
+#  define MEMDEBUG_NODEFINES
+#  include "memdebug.h"
+#endif
+
+int select_wrapper(int nfds, fd_set *rd, fd_set *wr, fd_set *exc,
+                   struct timeval *tv)
+{
+  if(nfds < 0) {
+    SET_SOCKERRNO(EINVAL);
+    return -1;
+  }
+#ifdef USE_WINSOCK
+  /*
+   * Winsock select() requires that at least one of the three fd_set
+   * pointers is not NULL and points to a non-empty fdset. IOW Winsock
+   * select() can not be used to sleep without a single fd_set.
+   */
+  if(!nfds) {
+    Sleep((1000*tv->tv_sec) + (DWORD)(((double)tv->tv_usec)/1000.0));
+    return 0;
+  }
+#endif
+  return select(nfds, rd, wr, exc, tv);
+}
+
+void wait_ms(int ms)
+{
+  struct timeval t;
+  t.tv_sec = ms/1000;
+  ms -= (int)t.tv_sec * 1000;
+  t.tv_usec = ms * 1000;
+  select_wrapper(0, NULL, NULL, NULL, &t);
+}
+
+char *libtest_arg2=NULL;
+char *libtest_arg3=NULL;
+int test_argc;
+char **test_argv;
+
+struct timeval tv_test_start; /* for test timing */
+
+#ifdef UNITTESTS
+int unitfail; /* for unittests */
+#endif
+
+#ifdef CURLDEBUG
+static void memory_tracking_init(void)
+{
+  char *env;
+  /* if CURL_MEMDEBUG is set, this starts memory tracking message logging */
+  env = curl_getenv("CURL_MEMDEBUG");
+  if(env) {
+    /* use the value as file name */
+    char fname[CURL_MT_LOGFNAME_BUFSIZE];
+    if(strlen(env) >= CURL_MT_LOGFNAME_BUFSIZE)
+      env[CURL_MT_LOGFNAME_BUFSIZE-1] = '\0';
+    strcpy(fname, env);
+    curl_free(env);
+    curl_memdebug(fname);
+    /* this weird stuff here is to make curl_free() get called
+       before curl_memdebug() as otherwise memory tracking will
+       log a free() without an alloc! */
+  }
+  /* if CURL_MEMLIMIT is set, this enables fail-on-alloc-number-N feature */
+  env = curl_getenv("CURL_MEMLIMIT");
+  if(env) {
+    char *endptr;
+    long num = strtol(env, &endptr, 10);
+    if((endptr != env) && (endptr == env + strlen(env)) && (num > 0))
+      curl_memlimit(num);
+    curl_free(env);
+  }
+}
+#else
+#  define memory_tracking_init() Curl_nop_stmt
+#endif
+
+/* returns a hexdump in a static memory area */
+char *hexdump(const unsigned char *buffer, size_t len)
+{
+  static char dump[200*3+1];
+  char *p = dump;
+  size_t i;
+  if(len > 200)
+    return NULL;
+  for(i=0; i<len; i++, p += 3)
+    snprintf(p, 4, "%02x ", buffer[i]);
+  return dump;
+}
+
+
+int main(int argc, char **argv)
+{
+  char *URL;
+  int result;
+
+#ifdef O_BINARY
+#  ifdef __HIGHC__
+  _setmode(stdout, O_BINARY);
+#  else
+  setmode(fileno(stdout), O_BINARY);
+#  endif
+#endif
+
+  memory_tracking_init();
+
+  /*
+   * Setup proper locale from environment. This is needed to enable locale-
+   * specific behaviour by the C library in order to test for undesired side
+   * effects that could cause in libcurl.
+   */
+#ifdef HAVE_SETLOCALE
+  setlocale(LC_ALL, "");
+#endif
+
+  if(argc< 2) {
+    fprintf(stderr, "Pass URL as argument please\n");
+    return 1;
+  }
+
+  test_argc = argc;
+  test_argv = argv;
+
+  if(argc>2)
+    libtest_arg2=argv[2];
+
+  if(argc>3)
+    libtest_arg3=argv[3];
+
+  URL = argv[1]; /* provide this to the rest */
+
+  fprintf(stderr, "URL: %s\n", URL);
+
+  result = test(URL);
+
+#ifdef USE_NSS
+  if(PR_Initialized())
+    /* prevent valgrind from reporting possibly lost memory (fd cache, ...) */
+    PR_Cleanup();
+#endif
+
+  return result;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1500.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1500.c
new file mode 100644
index 0000000..73d23a1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1500.c
@@ -0,0 +1,90 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  CURL *curls = NULL;
+  CURLM *multi = NULL;
+  int still_running;
+  int i = TEST_ERR_FAILURE;
+  int res = 0;
+  CURLMsg *msg;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(multi);
+
+  easy_init(curls);
+
+  easy_setopt(curls, CURLOPT_URL, URL);
+  easy_setopt(curls, CURLOPT_HEADER, 1L);
+
+  multi_add_handle(multi, curls);
+
+  multi_perform(multi, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    int num;
+    res = curl_multi_wait(multi, NULL, 0, TEST_HANG_TIMEOUT, &num);
+    if(res != CURLM_OK) {
+      printf("curl_multi_wait() returned %d\n", res);
+      res = TEST_ERR_MAJOR_BAD;
+      goto test_cleanup;
+    }
+
+    abort_on_test_timeout();
+
+    multi_perform(multi, &still_running);
+
+    abort_on_test_timeout();
+  }
+
+  msg = curl_multi_info_read(multi, &still_running);
+  if(msg)
+    /* this should now contain a result code from the easy handle,
+       get it */
+    i = msg->data.result;
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(multi);
+  curl_easy_cleanup(curls);
+  curl_global_cleanup();
+
+  if(res)
+    i = res;
+
+  return i; /* return the final return code */
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1501.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1501.c
new file mode 100644
index 0000000..8a6ef51
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1501.c
@@ -0,0 +1,111 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 30 * 1000
+
+/* 500 milliseconds allowed. An extreme number but lets be really conservative
+   to allow old and slow machines to run this test too */
+#define MAX_BLOCKED_TIME_MS 500
+
+int test(char *URL)
+{
+  CURL *handle = NULL;
+  CURLM *mhandle = NULL;
+  int res = 0;
+  int still_running = 0;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(handle);
+
+  easy_setopt(handle, CURLOPT_URL, URL);
+  easy_setopt(handle, CURLOPT_VERBOSE, 1L);
+
+  multi_init(mhandle);
+
+  multi_add_handle(mhandle, handle);
+
+  multi_perform(mhandle, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    struct timeval timeout;
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -99;
+    struct timeval before;
+    struct timeval after;
+    long e;
+
+    timeout.tv_sec = 0;
+    timeout.tv_usec = 100000L; /* 100 ms */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(mhandle, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+
+    fprintf(stderr, "ping\n");
+    before = tutil_tvnow();
+
+    multi_perform(mhandle, &still_running);
+
+    abort_on_test_timeout();
+
+    after = tutil_tvnow();
+    e = tutil_tvdiff(after, before);
+    fprintf(stderr, "pong = %ld\n", e);
+
+    if(e > MAX_BLOCKED_TIME_MS) {
+      res = 100;
+      break;
+    }
+  }
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(mhandle);
+  curl_easy_cleanup(handle);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1502.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1502.c
new file mode 100644
index 0000000..bd555cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1502.c
@@ -0,0 +1,146 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/*
+ * This source code is used for lib1502, lib1503, lib1504 and lib1505 with
+ * only #ifdefs controlling the cleanup sequence.
+ *
+ * Test case 1502 converted from bug report #3575448, identifying a memory
+ * leak in the CURLOPT_RESOLVE handling with the multi interface.
+ */
+
+#include "test.h"
+
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  CURL *easy = NULL;
+  CURLM *multi = NULL;
+  int still_running;
+  int res = 0;
+
+  char redirect[160];
+
+  /* DNS cache injection */
+  struct curl_slist *dns_cache_list;
+
+  snprintf(redirect, sizeof(redirect), "google.com:%s:%s", libtest_arg2,
+           libtest_arg3);
+
+  start_test_timing();
+
+  dns_cache_list = curl_slist_append(NULL, redirect);
+  if(!dns_cache_list) {
+    fprintf(stderr, "curl_slist_append() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    curl_slist_free_all(dns_cache_list);
+    return res;
+  }
+
+  easy_init(easy);
+
+  easy_setopt(easy, CURLOPT_URL, URL);
+  easy_setopt(easy, CURLOPT_HEADER, 1L);
+  easy_setopt(easy, CURLOPT_RESOLVE, dns_cache_list);
+
+  multi_init(multi);
+
+  multi_add_handle(multi, easy);
+
+  multi_perform(multi, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    struct timeval timeout;
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -99;
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+
+    multi_perform(multi, &still_running);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+#ifdef LIB1502
+  /* undocumented cleanup sequence - type UA */
+  curl_multi_cleanup(multi);
+  curl_easy_cleanup(easy);
+  curl_global_cleanup();
+#endif
+
+#ifdef LIB1503
+  /* proper cleanup sequence - type PA */
+  curl_multi_remove_handle(multi, easy);
+  curl_multi_cleanup(multi);
+  curl_easy_cleanup(easy);
+  curl_global_cleanup();
+#endif
+
+#ifdef LIB1504
+  /* undocumented cleanup sequence - type UB */
+  curl_easy_cleanup(easy);
+  curl_multi_cleanup(multi);
+  curl_global_cleanup();
+#endif
+
+#ifdef LIB1505
+  /* proper cleanup sequence - type PB */
+  curl_multi_remove_handle(multi, easy);
+  curl_easy_cleanup(easy);
+  curl_multi_cleanup(multi);
+  curl_global_cleanup();
+#endif
+
+  curl_slist_free_all(dns_cache_list);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1506.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1506.c
new file mode 100644
index 0000000..47fc335
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1506.c
@@ -0,0 +1,137 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2013, Linus Nielsen Feltzing <linus@haxx.se>
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define NUM_HANDLES 4
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl[NUM_HANDLES] = {0};
+  int running;
+  CURLM *m = NULL;
+  int i;
+  char target_url[256];
+  char dnsentry[256];
+  struct curl_slist *slist = NULL, *slist2;
+  char *port = libtest_arg3;
+  char *address = libtest_arg2;
+
+  (void)URL;
+
+  /* Create fake DNS entries for serverX.example.com for all handles */
+  for(i=0; i < NUM_HANDLES; i++) {
+    snprintf(dnsentry, sizeof(dnsentry), "server%d.example.com:%s:%s",
+             i + 1, port, address);
+    printf("%s\n", dnsentry);
+    slist2 = curl_slist_append(slist, dnsentry);
+    if(!slist2) {
+      fprintf(stderr, "curl_slist_append() failed\n");
+      goto test_cleanup;
+    }
+    slist = slist2;
+  }
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(m);
+
+  multi_setopt(m, CURLMOPT_MAXCONNECTS, 3L);
+
+  /* get NUM_HANDLES easy handles */
+  for(i=0; i < NUM_HANDLES; i++) {
+    /* get an easy handle */
+    easy_init(curl[i]);
+    /* specify target */
+    snprintf(target_url, sizeof(target_url),
+             "http://server%d.example.com:%s/path/1506%04i",
+             i + 1, port, i + 1);
+    target_url[sizeof(target_url) - 1] = '\0';
+    easy_setopt(curl[i], CURLOPT_URL, target_url);
+    /* go verbose */
+    easy_setopt(curl[i], CURLOPT_VERBOSE, 1L);
+    /* include headers */
+    easy_setopt(curl[i], CURLOPT_HEADER, 1L);
+
+    easy_setopt(curl[i], CURLOPT_RESOLVE, slist);
+  }
+
+  fprintf(stderr, "Start at URL 0\n");
+
+  for(i=0; i < NUM_HANDLES; i++) {
+    /* add handle to multi */
+    multi_add_handle(m, curl[i]);
+
+    for(;;) {
+      struct timeval interval;
+      fd_set rd, wr, exc;
+      int maxfd = -99;
+
+      interval.tv_sec = 1;
+      interval.tv_usec = 0;
+
+      multi_perform(m, &running);
+
+      abort_on_test_timeout();
+
+      if(!running)
+        break; /* done */
+
+      FD_ZERO(&rd);
+      FD_ZERO(&wr);
+      FD_ZERO(&exc);
+
+      multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+      /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+      select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+      abort_on_test_timeout();
+    }
+    wait_ms(1); /* to ensure different end times */
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  for(i=0; i < NUM_HANDLES; i++) {
+    curl_multi_remove_handle(m, curl[i]);
+    curl_easy_cleanup(curl[i]);
+  }
+
+  curl_slist_free_all(slist);
+
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1507.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1507.c
new file mode 100644
index 0000000..cd85001
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1507.c
@@ -0,0 +1,151 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+/*
+ * This is the list of basic details you need to tweak to get things right.
+ */
+#define USERNAME "user@example.com"
+#define PASSWORD "123qwerty"
+#define RECIPIENT "<1507-recipient@example.com>"
+#define MAILFROM "<1507-realuser@example.com>"
+
+#define MULTI_PERFORM_HANG_TIMEOUT 60 * 1000
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  (void)ptr;
+  (void)size;
+  (void)nmemb;
+  (void)userp;
+  return CURL_READFUNC_ABORT;
+}
+
+int test(char *URL)
+{
+   int res = 0;
+   CURL *curl = NULL;
+   CURLM *mcurl = NULL;
+   int still_running = 1;
+   struct timeval mp_start;
+   struct curl_slist *rcpt_list = NULL;
+
+   curl_global_init(CURL_GLOBAL_DEFAULT);
+
+   easy_init(curl);
+
+   multi_init(mcurl);
+
+   rcpt_list = curl_slist_append(rcpt_list, RECIPIENT);
+   /* more addresses can be added here
+      rcpt_list = curl_slist_append(rcpt_list, "<others@example.com>");
+   */
+
+   curl_easy_setopt(curl, CURLOPT_URL, URL);
+#if 0
+   curl_easy_setopt(curl, CURLOPT_USERNAME, USERNAME);
+   curl_easy_setopt(curl, CURLOPT_PASSWORD, PASSWORD);
+#endif
+   curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+   curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+   curl_easy_setopt(curl, CURLOPT_MAIL_FROM, MAILFROM);
+   curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, rcpt_list);
+   curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+   multi_add_handle(mcurl, curl);
+
+   mp_start = tutil_tvnow();
+
+  /* we start some action by calling perform right away */
+  curl_multi_perform(mcurl, &still_running);
+
+  while(still_running) {
+    struct timeval timeout;
+    int rc; /* select() return code */
+
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -1;
+
+    long curl_timeo = -1;
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    /* set a suitable timeout to play around with */
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    curl_multi_timeout(mcurl, &curl_timeo);
+    if(curl_timeo >= 0) {
+      timeout.tv_sec = curl_timeo / 1000;
+      if(timeout.tv_sec > 1)
+        timeout.tv_sec = 1;
+      else
+        timeout.tv_usec = (curl_timeo % 1000) * 1000;
+    }
+
+    /* get file descriptors from the transfers */
+    curl_multi_fdset(mcurl, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* In a real-world program you OF COURSE check the return code of the
+       function calls.  On success, the value of maxfd is guaranteed to be
+       greater or equal than -1.  We call select(maxfd + 1, ...), specially in
+       case of (maxfd == -1), we call select(0, ...), which is basically equal
+       to sleep. */
+
+    rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    if(tutil_tvdiff(tutil_tvnow(), mp_start) > MULTI_PERFORM_HANG_TIMEOUT) {
+      fprintf(stderr, "ABORTING TEST, since it seems "
+              "that it would have run forever.\n");
+      break;
+    }
+
+    switch(rc) {
+    case -1:
+      /* select error */
+      break;
+    case 0: /* timeout */
+    default: /* action */
+      curl_multi_perform(mcurl, &still_running);
+      break;
+    }
+  }
+
+test_cleanup:
+
+  curl_slist_free_all(rcpt_list);
+  curl_multi_remove_handle(mcurl, curl);
+  curl_multi_cleanup(mcurl);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1508.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1508.c
new file mode 100644
index 0000000..f536422
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1508.c
@@ -0,0 +1,49 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2013, Linus Nielsen Feltzing <linus@haxx.se>
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  int res = 0;
+  CURLM *m = NULL;
+
+  (void)URL;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(m);
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  printf("We are done\n");
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1509.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1509.c
new file mode 100644
index 0000000..ccb6683
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1509.c
@@ -0,0 +1,97 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+size_t WriteOutput(void *ptr, size_t size, size_t nmemb, void *stream);
+size_t WriteHeader(void *ptr, size_t size, size_t nmemb, void *stream);
+
+static unsigned long realHeaderSize = 0;
+
+int test(char *URL)
+{
+  long headerSize;
+  CURLcode code;
+  CURL *curl = NULL;
+  int res = 0;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); /* set in first.c */
+
+  easy_setopt(curl, CURLOPT_WRITEFUNCTION, *WriteOutput);
+  easy_setopt(curl, CURLOPT_HEADERFUNCTION, *WriteHeader);
+
+  easy_setopt(curl, CURLOPT_HEADER, 1L);
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L);
+
+  code = curl_easy_perform(curl);
+  if(CURLE_OK != code) {
+    fprintf(stderr, "%s:%d curl_easy_perform() failed, "
+            "with code %d (%s)\n",
+            __FILE__, __LINE__, (int)code, curl_easy_strerror(code));
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+
+  code = curl_easy_getinfo(curl, CURLINFO_HEADER_SIZE, &headerSize);
+  if(CURLE_OK != code) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed, "
+            "with code %d (%s)\n",
+            __FILE__, __LINE__, (int)code, curl_easy_strerror(code));
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+
+  printf("header length is ........: %lu\n", headerSize);
+  printf("header length should be..: %lu\n", realHeaderSize);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
+size_t WriteOutput(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  fwrite(ptr, size, nmemb, stream);
+  return nmemb * size;
+}
+
+size_t WriteHeader(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  (void)ptr;
+  (void)stream;
+
+  realHeaderSize += curlx_uztoul(size * nmemb);
+
+  return nmemb * size;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1510.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1510.c
new file mode 100644
index 0000000..25e9fed
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1510.c
@@ -0,0 +1,99 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2013, Linus Nielsen Feltzing <linus@haxx.se>
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define NUM_URLS 4
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  int i;
+  char target_url[256];
+  char dnsentry[256];
+  struct curl_slist *slist = NULL, *slist2;
+  char *port = libtest_arg3;
+  char *address = libtest_arg2;
+
+  (void)URL;
+
+  /* Create fake DNS entries for serverX.example.com for all handles */
+  for(i=0; i < NUM_URLS; i++) {
+    snprintf(dnsentry, sizeof(dnsentry), "server%d.example.com:%s:%s", i + 1,
+             port, address);
+    printf("%s\n", dnsentry);
+    slist2 = curl_slist_append(slist, dnsentry);
+    if(!slist2) {
+      fprintf(stderr, "curl_slist_append() failed\n");
+      goto test_cleanup;
+    }
+    slist = slist2;
+  }
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  /* get an easy handle */
+  easy_init(curl);
+
+  /* go verbose */
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+  /* include headers */
+  easy_setopt(curl, CURLOPT_HEADER, 1L);
+
+  easy_setopt(curl, CURLOPT_RESOLVE, slist);
+
+  easy_setopt(curl, CURLOPT_MAXCONNECTS, 3L);
+
+  /* get NUM_HANDLES easy handles */
+  for(i=0; i < NUM_URLS; i++) {
+    /* specify target */
+    snprintf(target_url, sizeof(target_url),
+             "http://server%d.example.com:%s/path/1510%04i",
+             i + 1, port, i + 1);
+    target_url[sizeof(target_url) - 1] = '\0';
+    easy_setopt(curl, CURLOPT_URL, target_url);
+
+    res = curl_easy_perform(curl);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  curl_easy_cleanup(curl);
+
+  curl_slist_free_all(slist);
+
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1511.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1511.c
new file mode 100644
index 0000000..e1840e7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1511.c
@@ -0,0 +1,75 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  long unmet;
+  CURL *curl = NULL;
+  int res = 0;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_HEADER, 1L);
+  easy_setopt(curl, CURLOPT_TIMECONDITION, (long)CURL_TIMECOND_IFMODSINCE);
+
+  /* TIMEVALUE in the future */
+  easy_setopt(curl, CURLOPT_TIMEVALUE, 1566210680L);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &unmet);
+  if(unmet != 1L) {
+    res = TEST_ERR_FAILURE; /* not correct */
+    goto test_cleanup;
+  }
+
+  /* TIMEVALUE in the past */
+  easy_setopt(curl, CURLOPT_TIMEVALUE, 1L);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &unmet);
+  if(unmet != 0L) {
+    res = TEST_ERR_FAILURE; /* not correct */
+    goto test_cleanup;
+  }
+
+  res = TEST_ERR_SUCCESS; /* this is where we should be */
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1512.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1512.c
new file mode 100644
index 0000000..f4091b4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1512.c
@@ -0,0 +1,91 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2013 - 2016, Linus Nielsen Feltzing <linus@haxx.se>
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * Use global DNS cache (while deprecated it should still work), populate it
+ * with CURLOPT_RESOLVE in the first request and then make sure a subsequent
+ * easy transfer finds and uses the populated stuff.
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+#define NUM_HANDLES 2
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl[NUM_HANDLES] = {NULL, NULL};
+  char *port = libtest_arg3;
+  char *address = libtest_arg2;
+  char dnsentry[256];
+  struct curl_slist *slist = NULL;
+  int i;
+  char target_url[256];
+  (void)URL; /* URL is setup in the code */
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  snprintf(dnsentry, sizeof(dnsentry), "server.example.curl:%s:%s",
+           port, address);
+  printf("%s\n", dnsentry);
+  slist = curl_slist_append(slist, dnsentry);
+
+  /* get NUM_HANDLES easy handles */
+  for(i=0; i < NUM_HANDLES; i++) {
+    /* get an easy handle */
+    easy_init(curl[i]);
+    /* specify target */
+    snprintf(target_url, sizeof(target_url),
+             "http://server.example.curl:%s/path/1512%04i",
+             port, i + 1);
+    target_url[sizeof(target_url) - 1] = '\0';
+    easy_setopt(curl[i], CURLOPT_URL, target_url);
+    /* go verbose */
+    easy_setopt(curl[i], CURLOPT_VERBOSE, 1L);
+    /* include headers */
+    easy_setopt(curl[i], CURLOPT_HEADER, 1L);
+
+    easy_setopt(curl[i], CURLOPT_DNS_USE_GLOBAL_CACHE, 1L);
+  }
+
+  /* make the first one populate the GLOBAL cache */
+  easy_setopt(curl[0], CURLOPT_RESOLVE, slist);
+
+  /* run NUM_HANDLES transfers */
+  for(i=0; (i < NUM_HANDLES) && !res; i++)
+    res = curl_easy_perform(curl[i]);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl[0]);
+  curl_easy_cleanup(curl[1]);
+  curl_slist_free_all(slist);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1513.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1513.c
new file mode 100644
index 0000000..d0123f1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1513.c
@@ -0,0 +1,74 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/*
+ * Test case converted from bug report #1318 by Petr Novak.
+ *
+ * Before the fix, this test program returned 52 (CURLE_GOT_NOTHING) instead
+ * of 42 (CURLE_ABORTED_BY_CALLBACK).
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+static int progressKiller(void *arg,
+                          double dltotal,
+                          double dlnow,
+                          double ultotal,
+                          double ulnow)
+{
+  (void)arg;
+  (void)dltotal;
+  (void)dlnow;
+  (void)ultotal;
+  (void)ulnow;
+  printf("PROGRESSFUNCTION called\n");
+  return 1;
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  int res=0;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_TIMEOUT, (long)7);
+  easy_setopt(curl, CURLOPT_NOSIGNAL, (long)1);
+  easy_setopt(curl, CURLOPT_PROGRESSFUNCTION, progressKiller);
+  easy_setopt(curl, CURLOPT_PROGRESSDATA, NULL);
+  easy_setopt(curl, CURLOPT_NOPROGRESS, (long)0);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1514.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1514.c
new file mode 100644
index 0000000..b4ab9dc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1514.c
@@ -0,0 +1,80 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/*
+ * Make sure libcurl does not send a `Content-Length: -1` header when HTTP POST
+ * size is unknown.
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data[]="dummy";
+
+struct WriteThis {
+  char *readptr;
+  size_t sizeleft;
+};
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct WriteThis *pooh = (struct WriteThis *)userp;
+
+  if(size*nmemb < 1)
+    return 0;
+
+  if(pooh->sizeleft) {
+    *(char *)ptr = pooh->readptr[0]; /* copy one single byte */
+    pooh->readptr++;                 /* advance pointer */
+    pooh->sizeleft--;                /* less data left */
+    return 1;                        /* we return 1 byte at a time! */
+  }
+
+  return 0;                         /* no more data left to deliver */
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode result = CURLE_OK;
+  int res = 0;
+  struct WriteThis pooh = { data, sizeof(data)-1 };
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_POST, 1L);
+  /* Purposely omit to set CURLOPT_POSTFIELDSIZE */
+  easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+  easy_setopt(curl, CURLOPT_READDATA, &pooh);
+
+  result = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)result;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1515.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1515.c
new file mode 100644
index 0000000..7763c22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1515.c
@@ -0,0 +1,152 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * Check for bugs #1303 and #1327: libcurl should never remove DNS entries
+ * created via CURLOPT_RESOLVE, neither after DNS_CACHE_TIMEOUT elapses
+ * (test1515) nor a dead connection is detected (test1616).
+ */
+
+#include "test.h"
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define DNS_TIMEOUT 1
+
+#if defined(WIN32) || defined(_WIN32)
+#define sleep(s) Sleep(s * 1000)
+#endif
+
+static int debug_callback(CURL *curl, curl_infotype info, char *msg,
+                          size_t len, void *ptr)
+{
+  (void)curl;
+  (void)ptr;
+
+  if(info == CURLINFO_TEXT)
+    fprintf(stderr, "debug: %.*s", (int) len, msg);
+
+  return 0;
+}
+
+static int do_one_request(CURLM *m, char *URL, char *resolve)
+{
+  CURL *curls;
+  struct curl_slist *resolve_list = NULL;
+  int still_running;
+  int res = 0;
+  CURLMsg *msg;
+  int msgs_left;
+
+  resolve_list = curl_slist_append(resolve_list, resolve);
+
+  easy_init(curls);
+
+  easy_setopt(curls, CURLOPT_URL, URL);
+  easy_setopt(curls, CURLOPT_RESOLVE, resolve_list);
+  easy_setopt(curls, CURLOPT_DEBUGFUNCTION, debug_callback);
+  easy_setopt(curls, CURLOPT_VERBOSE, 1);
+  easy_setopt(curls, CURLOPT_DNS_CACHE_TIMEOUT, DNS_TIMEOUT);
+
+  multi_add_handle(m, curls);
+  multi_perform(m, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    struct timeval timeout;
+    fd_set fdread, fdwrite, fdexcep;
+    int maxfd = -99;
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd);
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+    multi_perform(m, &still_running);
+
+    abort_on_test_timeout();
+  }
+
+  while((msg = curl_multi_info_read(m, &msgs_left))) {
+    if(msg->msg == CURLMSG_DONE && msg->easy_handle == curls) {
+      res = msg->data.result;
+      break;
+    }
+  }
+
+test_cleanup:
+
+  curl_multi_remove_handle(m, curls);
+  curl_easy_cleanup(curls);
+  curl_slist_free_all(resolve_list);
+
+  return res;
+}
+
+int test(char *URL)
+{
+  CURLM *multi = NULL;
+  int res = 0;
+  char *address = libtest_arg2;
+  char *port = libtest_arg3;
+  char *path = URL;
+  char dns_entry[256];
+  int i;
+  int count = 2;
+
+  snprintf(dns_entry, sizeof(dns_entry), "testserver.example.com:%s:%s",
+           port, address);
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+  multi_init(multi);
+
+  for(i = 1; i <= count; i++) {
+    char target_url[256];
+    snprintf(target_url, sizeof(target_url),
+             "http://testserver.example.com:%s/%s%04d", port, path, i);
+
+    /* second request must succeed like the first one */
+    res = do_one_request(multi, target_url, dns_entry);
+    if(res)
+      goto test_cleanup;
+
+    if(i < count)
+      sleep(DNS_TIMEOUT + 1);
+  }
+
+test_cleanup:
+
+  curl_multi_cleanup(multi);
+
+  return (int) res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1517.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1517.c
new file mode 100644
index 0000000..e270ed7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1517.c
@@ -0,0 +1,116 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data[]="this is what we post to the silly web server\n";
+
+struct WriteThis {
+  char *readptr;
+  size_t sizeleft;
+};
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct WriteThis *pooh = (struct WriteThis *)userp;
+  size_t tocopy = size * nmemb;
+
+  /* Wait one second before return POST data          *
+   * so libcurl will wait before sending request body */
+  wait_ms(1000);
+
+  if(tocopy < 1 || !pooh->sizeleft)
+    return 0;
+
+  if(pooh->sizeleft < tocopy)
+    tocopy = pooh->sizeleft;
+
+  memcpy(ptr, pooh->readptr, tocopy);/* copy requested data */
+  pooh->readptr += tocopy;           /* advance pointer */
+  pooh->sizeleft -= tocopy;          /* less data left */
+  return tocopy;
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  struct WriteThis pooh;
+
+  pooh.readptr = data;
+  pooh.sizeleft = strlen(data);
+
+  if(curl_global_init(CURL_GLOBAL_ALL)) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+
+  /* Set the expected POST size */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)pooh.sizeleft);
+
+  /* we want to use our own read function */
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* pointer to pass to our read function */
+  test_setopt(curl, CURLOPT_READDATA, &pooh);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* detect HTTP error codes >= 400 */
+  /* test_setopt(curl, CURLOPT_FAILONERROR, 1L); */
+
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1520.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1520.c
new file mode 100644
index 0000000..4d5b0c8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1520.c
@@ -0,0 +1,115 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/*
+ * This is the list of basic details you need to tweak to get things right.
+ */
+#define TO "<recipient@example.com>"
+#define FROM "<sender@example.com>"
+
+static const char *payload_text[] = {
+  "From: different\r\n",
+  "To: another\r\n",
+  "\r\n",
+  "\r\n",
+  ".\r\n",
+  ".\r\n",
+  "\r\n",
+  ".\r\n",
+  "\r\n",
+  "body",
+  NULL
+};
+
+struct upload_status {
+  int lines_read;
+};
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct upload_status *upload_ctx = (struct upload_status *)userp;
+  const char *data;
+
+  if((size == 0) || (nmemb == 0) || ((size*nmemb) < 1)) {
+    return 0;
+  }
+
+  data = payload_text[upload_ctx->lines_read];
+
+  if(data) {
+    size_t len = strlen(data);
+    memcpy(ptr, data, len);
+    upload_ctx->lines_read++;
+
+    return len;
+  }
+
+  return 0;
+}
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+  struct curl_slist *rcpt_list = NULL;
+  struct upload_status upload_ctx = {0};
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  rcpt_list = curl_slist_append(rcpt_list, TO);
+  /* more addresses can be added here
+     rcpt_list = curl_slist_append(rcpt_list, "<others@example.com>");
+  */
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+  test_setopt(curl, CURLOPT_READDATA, &upload_ctx);
+  test_setopt(curl, CURLOPT_MAIL_FROM, FROM);
+  test_setopt(curl, CURLOPT_MAIL_RCPT, rcpt_list);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_slist_free_all(rcpt_list);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1521.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1521.c
new file mode 100644
index 0000000..186013a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1521.c
@@ -0,0 +1,849 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2017, Daniel Stenberg, <daniel.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+#include "memdebug.h"
+#include <limits.h>
+
+/* This source code is generated by mk-lib1521.pl ! */
+
+struct data {
+    char *blaha;
+};
+
+#define LO LONG_MIN
+#define HI LONG_MAX
+#define OFF_VAL (curl_off_t) 3123123123
+#define OFF_LO (curl_off_t) LO
+#define OFF_HI (curl_off_t) HI
+#define OFF_NO (curl_off_t) 0
+
+static size_t writecb(char *buffer, size_t size, size_t nitems,
+                      void *outstream)
+{
+  (void)buffer;
+  (void)size;
+  (void)nitems;
+  (void)outstream;
+  return 0;
+}
+
+static size_t readcb(char *buffer,
+              size_t size,
+              size_t nitems,
+              void *instream)
+{
+  (void)buffer;
+  (void)size;
+  (void)nitems;
+  (void)instream;
+  return 0;
+}
+
+curl_progress_callback progresscb;
+curl_write_callback headercb;
+curl_debug_callback debugcb;
+curl_ssl_ctx_callback ssl_ctx_cb;
+curl_ioctl_callback ioctlcb;
+curl_sockopt_callback sockoptcb;
+curl_opensocket_callback opensocketcb;
+curl_seek_callback seekcb;
+curl_sshkeycallback ssh_keycb;
+curl_chunk_bgn_callback chunk_bgn_cb;
+curl_chunk_end_callback chunk_end_cb;
+curl_fnmatch_callback fnmatch_cb;
+curl_closesocket_callback closesocketcb;
+curl_xferinfo_callback xferinfocb;
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  CURL *dep = NULL;
+  CURLSH *share = NULL;
+  char errorbuffer[CURL_ERROR_SIZE];
+  void *conv_from_network_cb = NULL;
+  void *conv_to_network_cb = NULL;
+  void *conv_from_utf8_cb = NULL;
+  void *interleavecb = NULL;
+  char *stringpointerextra=(char *)"moooo";
+  struct curl_slist *slist=NULL;
+  struct curl_httppost *httppost=NULL;
+  FILE *stream = stderr;
+  struct data object;
+  (void)URL; /* not used */
+  easy_init(dep);
+  easy_init(curl);
+  share = curl_share_init();
+  if(!share) {
+    res = CURLE_OUT_OF_MEMORY;
+    goto test_cleanup;
+  }
+
+  (void)curl_easy_setopt(curl, CURLOPT_WRITEDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_WRITEDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_URL, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_URL, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PORT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PORT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PORT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PORT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_USERPWD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_USERPWD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_RANGE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_RANGE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_READDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_READDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errorbuffer);
+  (void)curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION,
+                         writecb);
+  (void)curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_READFUNCTION,
+                         readcb);
+  (void)curl_easy_setopt(curl, CURLOPT_READFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDS, stringpointerextra);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_REFERER, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_REFERER, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FTPPORT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_FTPPORT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_USERAGENT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_USERAGENT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPHEADER, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPHEADER, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPPOST, httppost);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPPOST, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLCERT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSLCERT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_KEYPASSWD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_KEYPASSWD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CRLF, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_CRLF, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_CRLF, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_CRLF, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_QUOTE, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_QUOTE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADERDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADERDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIEFILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLVERSION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLVERSION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLVERSION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLVERSION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMECONDITION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMECONDITION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMECONDITION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMECONDITION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEVALUE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEVALUE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEVALUE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEVALUE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_STDERR, stream);
+  (void)curl_easy_setopt(curl, CURLOPT_STDERR, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTQUOTE, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTQUOTE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_OBSOLETE40, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_OBSOLETE40, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_VERBOSE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_VERBOSE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_VERBOSE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADER, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADER, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADER, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADER, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_NOPROGRESS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NOPROGRESS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_NOBODY, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_NOBODY, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_NOBODY, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NOBODY, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FAILONERROR, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FAILONERROR, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FAILONERROR, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FAILONERROR, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_UPLOAD, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_UPLOAD, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_UPLOAD, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_UPLOAD, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_POST, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_POST, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_POST, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_POST, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_DIRLISTONLY, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_DIRLISTONLY, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_DIRLISTONLY, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_DIRLISTONLY, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_APPEND, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_APPEND, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_APPEND, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_APPEND, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_NETRC, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_NETRC, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_NETRC, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NETRC, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFERTEXT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFERTEXT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFERTEXT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFERTEXT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PUT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PUT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PUT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PUT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROGRESSFUNCTION,
+                         progresscb);
+  (void)curl_easy_setopt(curl, CURLOPT_PROGRESSFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROGRESSDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_PROGRESSDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_AUTOREFERER, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_AUTOREFERER, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYPORT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYPORT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYPORT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYPORT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_INTERFACE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_INTERFACE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_KRBLEVEL, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_KRBLEVEL, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CAINFO, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_CAINFO, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXREDIRS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXREDIRS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FILETIME, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FILETIME, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FILETIME, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FILETIME, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TELNETOPTIONS, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_TELNETOPTIONS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXCONNECTS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXCONNECTS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXCONNECTS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXCONNECTS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_OBSOLETE72, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_OBSOLETE72, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_OBSOLETE72, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_OBSOLETE72, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FORBID_REUSE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FORBID_REUSE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FORBID_REUSE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FORBID_REUSE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_RANDOM_FILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_RANDOM_FILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_EGDSOCKET, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_EGDSOCKET, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION,
+                         headercb);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPGET, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPGET, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPGET, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPGET, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIEJAR, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIEJAR, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_CIPHER_LIST, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_CIPHER_LIST, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPSV, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPSV, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPSV, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPSV, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLKEY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSLKEY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLKEYTYPE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSLKEYTYPE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLENGINE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSLENGINE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_USE_GLOBAL_CACHE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_USE_GLOBAL_CACHE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_USE_GLOBAL_CACHE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_USE_GLOBAL_CACHE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PREQUOTE, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_PREQUOTE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION,
+                         debugcb);
+  (void)curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_DEBUGDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIESESSION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIESESSION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIESESSION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIESESSION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CAPATH, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_CAPATH, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_NOSIGNAL, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NOSIGNAL, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SHARE, share);
+  (void)curl_easy_setopt(curl, CURLOPT_SHARE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYTYPE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYTYPE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYTYPE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYTYPE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_ACCEPT_ENCODING, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_ACCEPT_ENCODING, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PRIVATE, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_PRIVATE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP200ALIASES, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP200ALIASES, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_UNRESTRICTED_AUTH, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_UNRESTRICTED_AUTH, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_UNRESTRICTED_AUTH, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_UNRESTRICTED_AUTH, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPAUTH, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPAUTH, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPAUTH, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTPAUTH, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION,
+                         ssl_ctx_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_CTX_DATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_CTX_DATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYAUTH, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYAUTH, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYAUTH, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYAUTH, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_RESPONSE_TIMEOUT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_RESPONSE_TIMEOUT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_RESPONSE_TIMEOUT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_RESPONSE_TIMEOUT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_IPRESOLVE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_IPRESOLVE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_IPRESOLVE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_IPRESOLVE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, OFF_NO);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, OFF_VAL);
+  (void)curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, OFF_LO);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, OFF_NO);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, OFF_VAL);
+  (void)curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, OFF_LO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE_LARGE, OFF_NO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE_LARGE, OFF_VAL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAXFILESIZE_LARGE, OFF_LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NETRC_FILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_NETRC_FILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_USE_SSL, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_USE_SSL, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_USE_SSL, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_USE_SSL, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, OFF_NO);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, OFF_VAL);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, OFF_LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_NODELAY, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_NODELAY, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_NODELAY, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_NODELAY, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FTPSSLAUTH, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTPSSLAUTH, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTPSSLAUTH, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTPSSLAUTH, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_IOCTLFUNCTION,
+                         ioctlcb);
+  (void)curl_easy_setopt(curl, CURLOPT_IOCTLFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_IOCTLDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_IOCTLDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_ACCOUNT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_ACCOUNT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIELIST, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_COOKIELIST, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_FILEMETHOD, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_FILEMETHOD, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_FILEMETHOD, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_FILEMETHOD, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORTRANGE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORTRANGE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORTRANGE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_LOCALPORTRANGE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CONV_FROM_NETWORK_FUNCTION,
+                         conv_from_network_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_CONV_FROM_NETWORK_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CONV_TO_NETWORK_FUNCTION,
+                         conv_to_network_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_CONV_TO_NETWORK_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CONV_FROM_UTF8_FUNCTION,
+                         conv_from_utf8_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_CONV_FROM_UTF8_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAX_SEND_SPEED_LARGE, OFF_NO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAX_SEND_SPEED_LARGE, OFF_VAL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAX_SEND_SPEED_LARGE, OFF_LO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, OFF_NO);
+  (void)curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, OFF_VAL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, OFF_LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_ALTERNATIVE_TO_USER, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_ALTERNATIVE_TO_USER, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKOPTFUNCTION,
+                         sockoptcb);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKOPTFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKOPTDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKOPTDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_SESSIONID_CACHE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_SESSIONID_CACHE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_SESSIONID_CACHE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_SESSIONID_CACHE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_AUTH_TYPES, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_AUTH_TYPES, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_AUTH_TYPES, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_AUTH_TYPES, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_PUBLIC_KEYFILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_PUBLIC_KEYFILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_PRIVATE_KEYFILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_PRIVATE_KEYFILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SSL_CCC, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SSL_CCC, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SSL_CCC, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_SSL_CCC, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_TRANSFER_DECODING, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_TRANSFER_DECODING, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_TRANSFER_DECODING, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_TRANSFER_DECODING, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_CONTENT_DECODING, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_CONTENT_DECODING, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_CONTENT_DECODING, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HTTP_CONTENT_DECODING, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_FILE_PERMS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_FILE_PERMS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_FILE_PERMS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_FILE_PERMS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_DIRECTORY_PERMS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_DIRECTORY_PERMS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_DIRECTORY_PERMS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_NEW_DIRECTORY_PERMS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTREDIR, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTREDIR, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTREDIR, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_POSTREDIR, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_OPENSOCKETFUNCTION,
+                         opensocketcb);
+  (void)curl_easy_setopt(curl, CURLOPT_OPENSOCKETFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_OPENSOCKETDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_OPENSOCKETDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, stringpointerextra);
+  (void)curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TRANSFER_MODE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TRANSFER_MODE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TRANSFER_MODE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TRANSFER_MODE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SEEKFUNCTION,
+                         seekcb);
+  (void)curl_easy_setopt(curl, CURLOPT_SEEKFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SEEKDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_SEEKDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CRLFILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_CRLFILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_ISSUERCERT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_ISSUERCERT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_ADDRESS_SCOPE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_ADDRESS_SCOPE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_ADDRESS_SCOPE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_ADDRESS_SCOPE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CERTINFO, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_CERTINFO, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_CERTINFO, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_CERTINFO, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_USERNAME, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_USERNAME, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PASSWORD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PASSWORD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYUSERNAME, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYUSERNAME, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYPASSWORD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYPASSWORD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_NOPROXY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_NOPROXY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_BLKSIZE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_BLKSIZE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_BLKSIZE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_BLKSIZE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKS5_GSSAPI_SERVICE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKS5_GSSAPI_SERVICE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKS5_GSSAPI_NEC, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKS5_GSSAPI_NEC, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKS5_GSSAPI_NEC, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SOCKS5_GSSAPI_NEC, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROTOCOLS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROTOCOLS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROTOCOLS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROTOCOLS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_KNOWNHOSTS, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_KNOWNHOSTS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_KEYFUNCTION,
+                         ssh_keycb);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_KEYFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_KEYDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_SSH_KEYDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAIL_FROM, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_MAIL_FROM, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_PRET, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_PRET, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_PRET, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_FTP_USE_PRET, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_REQUEST, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_REQUEST, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_REQUEST, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_REQUEST, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_SESSION_ID, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_SESSION_ID, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_STREAM_URI, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_STREAM_URI, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_TRANSPORT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_TRANSPORT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_CLIENT_CSEQ, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_CLIENT_CSEQ, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_CLIENT_CSEQ, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_CLIENT_CSEQ, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_SERVER_CSEQ, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_SERVER_CSEQ, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_SERVER_CSEQ, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_RTSP_SERVER_CSEQ, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_INTERLEAVEDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_INTERLEAVEDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_INTERLEAVEFUNCTION,
+                         interleavecb);
+  (void)curl_easy_setopt(curl, CURLOPT_INTERLEAVEFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_WILDCARDMATCH, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_WILDCARDMATCH, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_WILDCARDMATCH, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_WILDCARDMATCH, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CHUNK_BGN_FUNCTION,
+                         chunk_bgn_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_CHUNK_BGN_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CHUNK_END_FUNCTION,
+                         chunk_end_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_CHUNK_END_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FNMATCH_FUNCTION,
+                         fnmatch_cb);
+  (void)curl_easy_setopt(curl, CURLOPT_FNMATCH_FUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CHUNK_DATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_CHUNK_DATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_FNMATCH_DATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_FNMATCH_DATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_RESOLVE, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_RESOLVE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TLSAUTH_USERNAME, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_TLSAUTH_USERNAME, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TLSAUTH_PASSWORD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_TLSAUTH_PASSWORD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TLSAUTH_TYPE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_TLSAUTH_TYPE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFER_ENCODING, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFER_ENCODING, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFER_ENCODING, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TRANSFER_ENCODING, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CLOSESOCKETFUNCTION,
+                         closesocketcb);
+  (void)curl_easy_setopt(curl, CURLOPT_CLOSESOCKETFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_CLOSESOCKETDATA, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_CLOSESOCKETDATA, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_GSSAPI_DELEGATION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_GSSAPI_DELEGATION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_GSSAPI_DELEGATION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_GSSAPI_DELEGATION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_SERVERS, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_SERVERS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_ACCEPTTIMEOUT_MS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_ACCEPTTIMEOUT_MS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_ACCEPTTIMEOUT_MS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_ACCEPTTIMEOUT_MS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_OPTIONS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_OPTIONS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_OPTIONS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_OPTIONS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_MAIL_AUTH, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_MAIL_AUTH, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SASL_IR, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SASL_IR, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SASL_IR, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SASL_IR, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_XFERINFOFUNCTION,
+                         xferinfocb);
+  (void)curl_easy_setopt(curl, CURLOPT_XFERINFOFUNCTION, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_XOAUTH2_BEARER, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_XOAUTH2_BEARER, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_INTERFACE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_INTERFACE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_LOCAL_IP4, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_LOCAL_IP4, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_LOCAL_IP6, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_DNS_LOCAL_IP6, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_LOGIN_OPTIONS, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_LOGIN_OPTIONS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_NPN, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_NPN, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_NPN, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_NPN, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_ALPN, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_ALPN, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_ALPN, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_ALPN, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_EXPECT_100_TIMEOUT_MS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_EXPECT_100_TIMEOUT_MS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_EXPECT_100_TIMEOUT_MS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_EXPECT_100_TIMEOUT_MS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYHEADER, slist);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXYHEADER, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADEROPT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADEROPT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADEROPT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_HEADEROPT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PINNEDPUBLICKEY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PINNEDPUBLICKEY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_UNIX_SOCKET_PATH, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_UNIX_SOCKET_PATH, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_FALSESTART, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_FALSESTART, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_FALSESTART, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SSL_FALSESTART, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SERVICE_NAME, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SERVICE_NAME, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SERVICE_NAME, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_SERVICE_NAME, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PIPEWAIT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PIPEWAIT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_WEIGHT, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_WEIGHT, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_WEIGHT, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_WEIGHT, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_DEPENDS, dep);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_DEPENDS, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_DEPENDS_E, dep);
+  (void)curl_easy_setopt(curl, CURLOPT_STREAM_DEPENDS_E, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_NO_OPTIONS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_NO_OPTIONS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_NO_OPTIONS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TFTP_NO_OPTIONS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECT_TO, &object);
+  (void)curl_easy_setopt(curl, CURLOPT_CONNECT_TO, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_FASTOPEN, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_FASTOPEN, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_FASTOPEN, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_TCP_FASTOPEN, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_KEEP_SENDING_ON_ERROR, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_KEEP_SENDING_ON_ERROR, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_KEEP_SENDING_ON_ERROR, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_KEEP_SENDING_ON_ERROR, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_CAINFO, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_CAINFO, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_CAPATH, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_CAPATH, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYPEER, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYPEER, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYPEER, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYPEER, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYHOST, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYHOST, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYHOST, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_VERIFYHOST, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLVERSION, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLVERSION, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLVERSION, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLVERSION, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TLSAUTH_USERNAME, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TLSAUTH_USERNAME, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TLSAUTH_PASSWORD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TLSAUTH_PASSWORD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TLSAUTH_TYPE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_TLSAUTH_TYPE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLCERT, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLCERT, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLCERTTYPE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLCERTTYPE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLKEY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLKEY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLKEYTYPE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSLKEYTYPE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_KEYPASSWD, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_KEYPASSWD, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_CIPHER_LIST, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_CIPHER_LIST, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_CRLFILE, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_CRLFILE, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_OPTIONS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_OPTIONS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_OPTIONS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_SSL_OPTIONS, HI);
+  (void)curl_easy_setopt(curl, CURLOPT_PRE_PROXY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PRE_PROXY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_PINNEDPUBLICKEY, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_PROXY_PINNEDPUBLICKEY, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_ABSTRACT_UNIX_SOCKET, "string");
+  (void)curl_easy_setopt(curl, CURLOPT_ABSTRACT_UNIX_SOCKET, NULL);
+  (void)curl_easy_setopt(curl, CURLOPT_SUPPRESS_CONNECT_HEADERS, 0L);
+  (void)curl_easy_setopt(curl, CURLOPT_SUPPRESS_CONNECT_HEADERS, 22L);
+  (void)curl_easy_setopt(curl, CURLOPT_SUPPRESS_CONNECT_HEADERS, LO);
+  (void)curl_easy_setopt(curl, CURLOPT_SUPPRESS_CONNECT_HEADERS, HI);
+  curl_easy_setopt(curl, 1, 0);
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_easy_cleanup(dep);
+  curl_share_cleanup(share);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1525.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1525.c
new file mode 100644
index 0000000..a764945
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1525.c
@@ -0,0 +1,98 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2014, Vijay Panghal, <vpanghal@maginatics.com>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * This unit test PUT http data over proxy. Proxy header will be different
+ * from server http header
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data [] = "Hello Cloud!\n";
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  size_t  amount = nmemb * size; /* Total bytes curl wants */
+  if(amount < strlen(data)) {
+    return strlen(data);
+  }
+  (void)stream;
+  memcpy(ptr, data, strlen(data));
+  return strlen(data);
+}
+
+
+int test(char *URL)
+{
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+  /* http and proxy header list*/
+  struct curl_slist *hhl = NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  hhl = curl_slist_append(hhl, "User-Agent: Http Agent");
+
+  if(!hhl) {
+    goto test_cleanup;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_HTTPHEADER, hhl);
+  test_setopt(curl, CURLOPT_PROXYHEADER, hhl);
+  test_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_UNIFIED);
+  test_setopt(curl, CURLOPT_POST, 0L);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_WRITEFUNCTION, fwrite);
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+  test_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L);
+  test_setopt(curl, CURLOPT_INFILESIZE, (long)strlen(data));
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+
+  curl_slist_free_all(hhl);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1526.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1526.c
new file mode 100644
index 0000000..704ae49
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1526.c
@@ -0,0 +1,104 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Vijay Panghal, <vpanghal@maginatics.com>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * This unit test PUT http data over proxy. Proxy header will be different
+ * from server http header
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data [] = "Hello Cloud!\n";
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  size_t  amount = nmemb * size; /* Total bytes curl wants */
+  if(amount < strlen(data)) {
+    return strlen(data);
+  }
+  (void)stream;
+  memcpy(ptr, data, strlen(data));
+  return strlen(data);
+}
+
+int test(char *URL)
+{
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+  /* http and proxy header list*/
+  struct curl_slist *hhl = NULL, *phl = NULL, *tmp = NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  hhl = curl_slist_append(hhl, "User-Agent: Http Agent");
+  phl = curl_slist_append(phl, "User-Agent: Proxy Agent");
+  if(!hhl || !phl) {
+    goto test_cleanup;
+  }
+  tmp = curl_slist_append(phl, "Expect:");
+  if(!tmp) {
+    goto test_cleanup;
+  }
+  phl = tmp;
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_HTTPHEADER, hhl);
+  test_setopt(curl, CURLOPT_PROXYHEADER, phl);
+  test_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_SEPARATE);
+  test_setopt(curl, CURLOPT_POST, 0L);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_WRITEFUNCTION, fwrite);
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+  test_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L);
+  test_setopt(curl, CURLOPT_INFILESIZE, (long)strlen(data));
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+
+  curl_slist_free_all(hhl);
+
+  curl_slist_free_all(phl);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1527.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1527.c
new file mode 100644
index 0000000..689839e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1527.c
@@ -0,0 +1,100 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Vijay Panghal, <vpanghal@maginatics.com>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * This unit test PUT http data over proxy. Same  http header will be generated
+ * for server and proxy
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data [] = "Hello Cloud!\n";
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  size_t  amount = nmemb * size; /* Total bytes curl wants */
+  if(amount < strlen(data)) {
+    return strlen(data);
+  }
+  (void)stream;
+  memcpy(ptr, data, strlen(data));
+  return strlen(data);
+}
+
+
+int test(char *URL)
+{
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+  /* http header list*/
+  struct curl_slist *hhl = NULL, *tmp = NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  hhl = curl_slist_append(hhl, "User-Agent: Http Agent");
+  if(!hhl) {
+    goto test_cleanup;
+  }
+  tmp = curl_slist_append(hhl, "Expect: 100-continue");
+  if(!tmp) {
+    goto test_cleanup;
+  }
+  hhl = tmp;
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_HTTPHEADER, hhl);
+  test_setopt(curl, CURLOPT_POST, 0L);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_WRITEFUNCTION, fwrite);
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+  test_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L);
+  test_setopt(curl, CURLOPT_INFILESIZE, (long)strlen(data));
+  test_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_UNIFIED);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+
+  curl_slist_free_all(hhl);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1528.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1528.c
new file mode 100644
index 0000000..a130c49
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1528.c
@@ -0,0 +1,73 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+  /* http header list*/
+  struct curl_slist *hhl = NULL;
+  struct curl_slist *phl = NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  hhl = curl_slist_append(hhl, "User-Agent: Http Agent");
+  phl = curl_slist_append(phl, "Proxy-User-Agent: Http Agent2");
+
+  if(!hhl) {
+    goto test_cleanup;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_HTTPHEADER, hhl);
+  test_setopt(curl, CURLOPT_PROXYHEADER, phl);
+  test_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_SEPARATE);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_slist_free_all(hhl);
+  curl_slist_free_all(phl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1529.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1529.c
new file mode 100644
index 0000000..c63a109
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1529.c
@@ -0,0 +1,60 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+  char bURL[512];
+  snprintf(bURL, sizeof(bURL), "%s HTTP/1.1\r\nGET http://1529.com/1529", URL);
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, bURL);
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1530.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1530.c
new file mode 100644
index 0000000..6fc69f2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1530.c
@@ -0,0 +1,68 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#include "test.h"
+
+#include "memdebug.h"
+
+static curl_socket_t opensocket(void *clientp,
+                                curlsocktype purpose,
+                                struct curl_sockaddr *address)
+{
+  (void)purpose;
+  (void)address;
+  (void)clientp;
+  fprintf(stderr, "opensocket() returns CURL_SOCKET_BAD\n");
+  return CURL_SOCKET_BAD;
+}
+
+int test(char *URL)
+{
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+  (void)URL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, "http://99.99.99.99:9999");
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_OPENSOCKETFUNCTION, opensocket);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1531.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1531.c
new file mode 100644
index 0000000..e6386b2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1531.c
@@ -0,0 +1,144 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+static char const testData[] = ".abc\0xyz";
+static off_t const testDataSize = sizeof(testData) - 1;
+
+int test(char *URL)
+{
+  CURL *easy;
+  CURLM *multi_handle;
+  int still_running; /* keep number of running handles */
+  CURLMsg *msg; /* for picking up messages with the transfer status */
+  int msgs_left; /* how many messages are left */
+
+  /* Allocate one CURL handle per transfer */
+  easy = curl_easy_init();
+
+  /* init a multi stack */
+  multi_handle = curl_multi_init();
+
+  /* add the individual transfer */
+  curl_multi_add_handle(multi_handle, easy);
+
+  /* set the options (I left out a few, you'll get the point anyway) */
+  curl_easy_setopt(easy, CURLOPT_URL, URL);
+  curl_easy_setopt(easy, CURLOPT_POSTFIELDSIZE_LARGE,
+                   (curl_off_t)testDataSize);
+  curl_easy_setopt(easy, CURLOPT_POSTFIELDS, testData);
+
+  /* we start some action by calling perform right away */
+  curl_multi_perform(multi_handle, &still_running);
+
+  do {
+    struct timeval timeout;
+    int rc; /* select() return code */
+    CURLMcode mc; /* curl_multi_fdset() return code */
+
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -1;
+
+    long curl_timeo = -1;
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    /* set a suitable timeout to play around with */
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    curl_multi_timeout(multi_handle, &curl_timeo);
+    if(curl_timeo >= 0) {
+      timeout.tv_sec = curl_timeo / 1000;
+      if(timeout.tv_sec > 1)
+        timeout.tv_sec = 1;
+      else
+        timeout.tv_usec = (curl_timeo % 1000) * 1000;
+    }
+
+    /* get file descriptors from the transfers */
+    mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    if(mc != CURLM_OK) {
+      fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
+      break;
+    }
+
+    /* On success the value of maxfd is guaranteed to be >= -1. We call
+       select(maxfd + 1, ...); specially in case of (maxfd == -1) there are
+       no fds ready yet so we call select(0, ...) --or Sleep() on Windows--
+       to sleep 100ms, which is the minimum suggested value in the
+       curl_multi_fdset() doc. */
+
+    if(maxfd == -1) {
+#ifdef _WIN32
+      Sleep(100);
+      rc = 0;
+#else
+      /* Portable sleep for platforms other than Windows. */
+      struct timeval wait = { 0, 100 * 1000 }; /* 100ms */
+      rc = select(0, NULL, NULL, NULL, &wait);
+#endif
+    }
+    else {
+      /* Note that on some platforms 'timeout' may be modified by select().
+         If you need access to the original value save a copy beforehand. */
+      rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+    }
+
+    switch(rc) {
+    case -1:
+      /* select error */
+      break;
+    case 0: /* timeout */
+    default: /* action */
+      curl_multi_perform(multi_handle, &still_running);
+      break;
+    }
+  } while(still_running);
+
+  /* See how the transfers went */
+  while((msg = curl_multi_info_read(multi_handle, &msgs_left))) {
+    if(msg->msg == CURLMSG_DONE) {
+      printf("HTTP transfer completed with status %d\n", msg->data.result);
+      break;
+    }
+  }
+
+  curl_multi_cleanup(multi_handle);
+
+  /* Free the CURL handles */
+  curl_easy_cleanup(easy);
+
+  return 0;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1532.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1532.c
new file mode 100644
index 0000000..4a3ff32
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1532.c
@@ -0,0 +1,80 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/* Test CURLINFO_RESPONSE_CODE */
+
+int test(char *URL)
+{
+  CURL *curl;
+  long httpcode;
+  int res = CURLE_OK;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_perform() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+
+  res = curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &httpcode);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(httpcode != 200) {
+    fprintf(stderr, "%s:%d unexpected response code %ld\n",
+            __FILE__, __LINE__, httpcode);
+    res = CURLE_HTTP_RETURNED_ERROR;
+    goto test_cleanup;
+  }
+
+  /* Test for a regression of github bug 1017 (response code does not reset) */
+  curl_easy_reset(curl);
+
+  res = curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &httpcode);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(httpcode != 0) {
+    fprintf(stderr, "%s:%d curl_easy_reset failed to zero the response code\n"
+            "possible regression of github bug 1017\n", __FILE__, __LINE__);
+    res = CURLE_HTTP_RETURNED_ERROR;
+    goto test_cleanup;
+  }
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1533.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1533.c
new file mode 100644
index 0000000..ada94b9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1533.c
@@ -0,0 +1,200 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * This test sends data with CURLOPT_KEEP_SENDING_ON_ERROR.
+ * The server responds with an early error response.
+ * The test is successful if the connection can be reused for the next request,
+ * because this implies that the data has been sent completely to the server.
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+struct cb_data {
+  CURL *easy_handle;
+  int response_received;
+  int paused;
+  size_t remaining_bytes;
+};
+
+
+static void reset_data(struct cb_data *data, CURL *curl)
+{
+  data->easy_handle = curl;
+  data->response_received = 0;
+  data->paused = 0;
+  data->remaining_bytes = 3;
+}
+
+
+static size_t read_callback(void *ptr, size_t size, size_t nitems,
+                            void *userdata)
+{
+  struct cb_data *data = (struct cb_data *)userdata;
+
+  /* wait until the server has sent all response headers */
+  if(data->response_received) {
+    size_t totalsize = nitems * size;
+
+    size_t bytes_to_send = data->remaining_bytes;
+    if(bytes_to_send > totalsize) {
+      bytes_to_send = totalsize;
+    }
+
+    memset(ptr, 'a', bytes_to_send);
+    data->remaining_bytes -= bytes_to_send;
+
+    return bytes_to_send;
+  }
+  else {
+    data->paused = 1;
+    return CURL_READFUNC_PAUSE;
+  }
+}
+
+
+static size_t write_callback(char *ptr, size_t size, size_t nmemb,
+                             void *userdata)
+{
+  struct cb_data *data = (struct cb_data *)userdata;
+  size_t totalsize = nmemb * size;
+
+  /* unused parameter */
+  (void)ptr;
+
+  /* all response headers have been received */
+  data->response_received = 1;
+
+  if(data->paused) {
+    /* continue to send request body data */
+    data->paused = 0;
+    curl_easy_pause(data->easy_handle, CURLPAUSE_CONT);
+  }
+
+  return totalsize;
+}
+
+
+static int perform_and_check_connections(CURL *curl, const char *description,
+                                         long expected_connections)
+{
+  CURLcode res;
+  long connections = 0;
+
+  res = curl_easy_perform(curl);
+  if(res != CURLE_OK) {
+    fprintf(stderr, "curl_easy_perform() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  res = curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &connections);
+  if(res != CURLE_OK) {
+    fprintf(stderr, "curl_easy_getinfo() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  fprintf(stderr, "%s: expected: %ld connections; actual: %ld connections\n",
+          description, expected_connections, connections);
+
+  if(connections != expected_connections) {
+    return TEST_ERR_FAILURE;
+  }
+
+  return TEST_ERR_SUCCESS;
+}
+
+
+int test(char *URL)
+{
+  struct cb_data data;
+  CURL *curl = NULL;
+  CURLcode res = CURLE_FAILED_INIT;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(curl == NULL) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  reset_data(&data, curl);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_POST, 1L);
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE,
+              (curl_off_t)data.remaining_bytes);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+  test_setopt(curl, CURLOPT_READDATA, &data);
+  test_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
+  test_setopt(curl, CURLOPT_WRITEDATA, &data);
+
+  res = perform_and_check_connections(curl,
+    "First request without CURLOPT_KEEP_SENDING_ON_ERROR", 1);
+  if(res != TEST_ERR_SUCCESS) {
+    goto test_cleanup;
+  }
+
+  reset_data(&data, curl);
+
+  res = perform_and_check_connections(curl,
+    "Second request without CURLOPT_KEEP_SENDING_ON_ERROR", 1);
+  if(res != TEST_ERR_SUCCESS) {
+    goto test_cleanup;
+  }
+
+  test_setopt(curl, CURLOPT_KEEP_SENDING_ON_ERROR, 1L);
+
+  reset_data(&data, curl);
+
+  res = perform_and_check_connections(curl,
+    "First request with CURLOPT_KEEP_SENDING_ON_ERROR", 1);
+  if(res != TEST_ERR_SUCCESS) {
+    goto test_cleanup;
+  }
+
+  reset_data(&data, curl);
+
+  res = perform_and_check_connections(curl,
+    "Second request with CURLOPT_KEEP_SENDING_ON_ERROR", 0);
+  if(res != TEST_ERR_SUCCESS) {
+    goto test_cleanup;
+  }
+
+  res = TEST_ERR_SUCCESS;
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1534.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1534.c
new file mode 100644
index 0000000..61e72ab
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1534.c
@@ -0,0 +1,129 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/* Test CURLINFO_FILETIME */
+
+int test(char *URL)
+{
+  CURL *curl, *dupe = NULL;
+  long filetime;
+  int res = CURLE_OK;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  /* Test that a filetime is properly initialized on curl_easy_init.
+  */
+
+  res = curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(filetime != -1) {
+    fprintf(stderr, "%s:%d filetime init failed; expected -1 but is %ld\n",
+            __FILE__, __LINE__, filetime);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_FILETIME, 1L);
+
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_perform() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+
+  /* Test that a filetime is properly set after receiving an HTTP resource.
+  */
+
+  res = curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(filetime != 30) {
+    fprintf(stderr, "%s:%d filetime of http resource is incorrect; "
+            "expected 30 but is %ld\n",
+            __FILE__, __LINE__, filetime);
+    res = CURLE_HTTP_RETURNED_ERROR;
+    goto test_cleanup;
+  }
+
+  /* Test that a filetime is properly initialized on curl_easy_duphandle.
+  */
+
+  dupe = curl_easy_duphandle(curl);
+  if(!dupe) {
+    fprintf(stderr, "%s:%d curl_easy_duphandle() failed\n",
+            __FILE__, __LINE__);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+  res = curl_easy_getinfo(dupe, CURLINFO_FILETIME, &filetime);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(filetime != -1) {
+    fprintf(stderr, "%s:%d filetime init failed; expected -1 but is %ld\n",
+            __FILE__, __LINE__, filetime);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+
+  /* Test that a filetime is properly initialized on curl_easy_reset.
+  */
+
+  curl_easy_reset(curl);
+
+  res = curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(filetime != -1) {
+    fprintf(stderr, "%s:%d filetime init failed; expected -1 but is %ld\n",
+            __FILE__, __LINE__, filetime);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_easy_cleanup(dupe);
+  curl_global_cleanup();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1535.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1535.c
new file mode 100644
index 0000000..32519f2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1535.c
@@ -0,0 +1,128 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/* Test CURLINFO_PROTOCOL */
+
+int test(char *URL)
+{
+  CURL *curl, *dupe = NULL;
+  long protocol;
+  int res = CURLE_OK;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  /* Test that protocol is properly initialized on curl_easy_init.
+  */
+
+  res = curl_easy_getinfo(curl, CURLINFO_PROTOCOL, &protocol);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(protocol != 0) {
+    fprintf(stderr, "%s:%d protocol init failed; expected 0 but is %ld\n",
+            __FILE__, __LINE__, protocol);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_perform() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+
+  /* Test that a protocol is properly set after receiving an HTTP resource.
+  */
+
+  res = curl_easy_getinfo(curl, CURLINFO_PROTOCOL, &protocol);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(protocol != CURLPROTO_HTTP) {
+    fprintf(stderr, "%s:%d protocol of http resource is incorrect; "
+            "expected %ld but is %ld\n",
+            __FILE__, __LINE__, CURLPROTO_HTTP, protocol);
+    res = CURLE_HTTP_RETURNED_ERROR;
+    goto test_cleanup;
+  }
+
+  /* Test that a protocol is properly initialized on curl_easy_duphandle.
+  */
+
+  dupe = curl_easy_duphandle(curl);
+  if(!dupe) {
+    fprintf(stderr, "%s:%d curl_easy_duphandle() failed\n",
+            __FILE__, __LINE__);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+  res = curl_easy_getinfo(dupe, CURLINFO_PROTOCOL, &protocol);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(protocol != 0) {
+    fprintf(stderr, "%s:%d protocol init failed; expected 0 but is %ld\n",
+            __FILE__, __LINE__, protocol);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+
+  /* Test that a protocol is properly initialized on curl_easy_reset.
+  */
+
+  curl_easy_reset(curl);
+
+  res = curl_easy_getinfo(curl, CURLINFO_PROTOCOL, &protocol);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(protocol != 0) {
+    fprintf(stderr, "%s:%d protocol init failed; expected 0 but is %ld\n",
+            __FILE__, __LINE__, protocol);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_easy_cleanup(dupe);
+  curl_global_cleanup();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1536.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1536.c
new file mode 100644
index 0000000..7f5b614
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1536.c
@@ -0,0 +1,129 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/* Test CURLINFO_SCHEME */
+
+int test(char *URL)
+{
+  CURL *curl, *dupe = NULL;
+  char *scheme;
+  int res = CURLE_OK;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  /* Test that scheme is properly initialized on curl_easy_init.
+  */
+
+  res = curl_easy_getinfo(curl, CURLINFO_SCHEME, &scheme);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(scheme != NULL) {
+    fprintf(stderr, "%s:%d scheme init failed; expected NULL\n",
+            __FILE__, __LINE__);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_perform() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+
+  /* Test that a scheme is properly set after receiving an HTTP resource.
+  */
+
+  res = curl_easy_getinfo(curl, CURLINFO_SCHEME, &scheme);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(memcmp(scheme, "HTTP", 5) != 0) {
+    fprintf(stderr, "%s:%d scheme of http resource is incorrect; "
+            "expected 'HTTP' but is %s\n",
+            __FILE__, __LINE__, CURLPROTO_HTTP,
+            (scheme == NULL ? "NULL" : "invalid"));
+    res = CURLE_HTTP_RETURNED_ERROR;
+    goto test_cleanup;
+  }
+
+  /* Test that a scheme is properly initialized on curl_easy_duphandle.
+  */
+
+  dupe = curl_easy_duphandle(curl);
+  if(!dupe) {
+    fprintf(stderr, "%s:%d curl_easy_duphandle() failed\n",
+            __FILE__, __LINE__);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+  res = curl_easy_getinfo(dupe, CURLINFO_SCHEME, &scheme);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(scheme != 0) {
+    fprintf(stderr, "%s:%d scheme init failed; expected NULL\n",
+            __FILE__, __LINE__);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+
+  /* Test that a scheme is properly initialized on curl_easy_reset.
+  */
+
+  curl_easy_reset(curl);
+
+  res = curl_easy_getinfo(curl, CURLINFO_SCHEME, &scheme);
+  if(res) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed with code %d (%s)\n",
+            __FILE__, __LINE__, res, curl_easy_strerror(res));
+    goto test_cleanup;
+  }
+  if(scheme != 0) {
+    fprintf(stderr, "%s:%d scheme init failed; expected NULL\n",
+            __FILE__, __LINE__);
+    res = CURLE_FAILED_INIT;
+    goto test_cleanup;
+  }
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_easy_cleanup(dupe);
+  curl_global_cleanup();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1537.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1537.c
new file mode 100644
index 0000000..d449164
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1537.c
@@ -0,0 +1,83 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  unsigned char a[] = {0x2f, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+                       0x91, 0xa2, 0xb3, 0xc4, 0xd5, 0xe6, 0xf7};
+  CURLcode res = CURLE_OK;
+  char *ptr = NULL;
+  int asize;
+  int outlen;
+  char *raw;
+
+  (void)URL; /* we don't use this */
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  asize = (int)sizeof(a);
+  ptr = curl_easy_escape(NULL, (char *)a, asize);
+  printf("%s\n", ptr);
+  if(ptr)
+    curl_free(ptr);
+
+  /* deprecated API */
+  ptr = curl_escape((char *)a, asize);
+  printf("%s\n", ptr);
+
+  raw = curl_easy_unescape(NULL, ptr, (int)strlen(ptr), &outlen);
+  printf("outlen == %d\n", outlen);
+  printf("unescape == original? %s\n",
+         memcmp(raw, a, outlen) ? "no" : "YES");
+  if(raw)
+    curl_free(raw);
+
+  /* deprecated API */
+  raw = curl_unescape(ptr, (int)strlen(ptr));
+  outlen = (int)strlen(raw);
+  printf("[old] outlen == %d\n", outlen);
+  printf("[old] unescape == original? %s\n",
+         memcmp(raw, a, outlen) ? "no" : "YES");
+  if(raw)
+    curl_free(raw);
+  if(ptr)
+    curl_free(ptr);
+
+  /* weird input length */
+  ptr = curl_easy_escape(NULL, (char *)a, -1);
+  printf("escape -1 length: %s\n", ptr);
+
+  /* weird input length */
+  outlen = 2017; /* just a value */
+  ptr = curl_easy_unescape(NULL, (char *)"moahahaha", -1, &outlen);
+  printf("unescape -1 length: %s %d\n", ptr, outlen);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1538.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1538.c
new file mode 100644
index 0000000..e4e16f2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1538.c
@@ -0,0 +1,51 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  int res = 0;
+  CURLcode easyret;
+  CURLMcode multiret;
+  CURLSHcode shareret;
+  (void)URL;
+
+  curl_easy_strerror(INT_MAX);
+  curl_multi_strerror(INT_MAX);
+  curl_share_strerror(INT_MAX);
+  curl_easy_strerror(-INT_MAX);
+  curl_multi_strerror(-INT_MAX);
+  curl_share_strerror(-INT_MAX);
+  for(easyret=CURLE_OK; easyret <= CURL_LAST; easyret++) {
+    printf("e%d: %s\n", (int)easyret, curl_easy_strerror(easyret));
+  }
+  for(multiret=CURLM_CALL_MULTI_PERFORM; multiret <= CURLM_LAST; multiret++) {
+    printf("m%d: %s\n", (int)multiret, curl_multi_strerror(multiret));
+  }
+  for(shareret=CURLSHE_OK; shareret <= CURLSHE_LAST; shareret++) {
+    printf("s%d: %s\n", (int)shareret, curl_share_strerror(shareret));
+  }
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1540.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1540.c
new file mode 100644
index 0000000..86ba085
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1540.c
@@ -0,0 +1,121 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+struct transfer_status {
+  CURL *easy;
+  int halted;
+  int counter; /* count write callback invokes */
+  int please;  /* number of times xferinfo is called while halted */
+};
+
+static int please_continue(void *userp,
+                           curl_off_t dltotal,
+                           curl_off_t dlnow,
+                           curl_off_t ultotal,
+                           curl_off_t ulnow)
+{
+  struct transfer_status *st = (struct transfer_status *)userp;
+  (void)dltotal;
+  (void)dlnow;
+  (void)ultotal;
+  (void)ulnow;
+  if(st->halted) {
+    st->please++;
+    if(st->please == 2) {
+      /* waited enough, unpause! */
+      curl_easy_pause(st->easy, CURLPAUSE_CONT);
+    }
+  }
+  fprintf(stderr, "xferinfo: paused %d\n", st->halted);
+  return 0; /* go on */
+}
+
+static size_t header_callback(void *ptr, size_t size, size_t nmemb,
+                              void *userp)
+{
+  size_t len = size * nmemb;
+  (void)userp;
+  (void)fwrite(ptr, size, nmemb, stdout);
+  return len;
+}
+
+static size_t write_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct transfer_status *st = (struct transfer_status *)userp;
+  size_t len = size * nmemb;
+  st->counter++;
+  if(st->counter > 1) {
+    /* the first call puts us on pause, so subsequent calls are after
+       unpause */
+    fwrite(ptr, size, nmemb, stdout);
+    return len;
+  }
+  printf("Got %d bytes but pausing!\n", (int)len);
+  st->halted = 1;
+  return CURL_WRITEFUNC_PAUSE;
+}
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  CURL *curls = NULL;
+  int i = 0;
+  int res = 0;
+  struct transfer_status st;
+
+  start_test_timing();
+
+  memset(&st, 0, sizeof(st));
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curls);
+  st.easy = curls; /* to allow callbacks access */
+
+  easy_setopt(curls, CURLOPT_URL, URL);
+  easy_setopt(curls, CURLOPT_WRITEFUNCTION, write_callback);
+  easy_setopt(curls, CURLOPT_WRITEDATA, &st);
+  easy_setopt(curls, CURLOPT_HEADERFUNCTION, header_callback);
+  easy_setopt(curls, CURLOPT_HEADERDATA, &st);
+
+  easy_setopt(curls, CURLOPT_XFERINFOFUNCTION, please_continue);
+  easy_setopt(curls, CURLOPT_XFERINFODATA, &st);
+  easy_setopt(curls, CURLOPT_NOPROGRESS, 0L);
+
+  res = curl_easy_perform(curls);
+
+test_cleanup:
+
+  curl_easy_cleanup(curls);
+  curl_global_cleanup();
+
+  if(res)
+    i = res;
+
+  return i; /* return the final return code */
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1541.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1541.c
new file mode 100644
index 0000000..3675592
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1541.c
@@ -0,0 +1,129 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define XSTR(x) #x
+#define STRING(y) XSTR(y)
+
+int test(char *URL)
+{
+  char detect[512];
+  char syst[512];
+
+  const char *types_h = "No";
+  const char *socket_h = "No";
+  const char *ws2tcpip_h = "No";
+  const char *stypes_h = "No";
+  const char *ssocket_h = "No";
+  const char *sws2tcpip_h = "No";
+
+  (void)(URL);
+
+#ifdef CURL_PULL_SYS_TYPES_H
+  types_h = "Yes";
+#endif
+#ifdef CURL_PULL_SYS_SOCKET_H
+  socket_h = "Yes";
+#endif
+#ifdef CURL_PULL_WS2TCPIP_H
+  ws2tcpip_h = "Yes";
+#endif
+  snprintf(detect, sizeof(detect),
+#ifdef CHECK_CURL_OFF_T
+           "CURL_TYPEOF_CURL_OFF_T:     %s\n"
+#endif
+           "CURL_FORMAT_CURL_OFF_T:     %s\n"
+           "CURL_FORMAT_CURL_OFF_TU:    %s\n"
+           "CURL_SUFFIX_CURL_OFF_T:     %s\n"
+           "CURL_SUFFIX_CURL_OFF_TU:    %s\n"
+           "CURL_SIZEOF_CURL_OFF_T:     %d\n"
+           "CURL_SIZEOF_LONG:           %d\n"
+           "CURL_TYPEOF_CURL_SOCKLEN_T: %s\n"
+           "CURL_PULL_SYS_TYPES_H:      %s\n"
+           "CURL_PULL_SYS_SOCKET_H:     %s\n"
+           "CURL_PULL_WS2TCPIP_H:       %s\n"
+
+#ifdef CHECK_CURL_OFF_T
+           , STRING(CURL_TYPEOF_CURL_OFF_T)
+#endif
+           , CURL_FORMAT_CURL_OFF_T
+           , CURL_FORMAT_CURL_OFF_TU
+           , STRING(CURL_SUFFIX_CURL_OFF_T)
+           , STRING(CURL_SUFFIX_CURL_OFF_TU)
+           , CURL_SIZEOF_CURL_OFF_T
+           , CURL_SIZEOF_LONG
+           , STRING(CURL_TYPEOF_CURL_SOCKLEN_T)
+           , types_h
+           , socket_h
+           , ws2tcpip_h);
+
+#ifdef CURLSYS_PULL_SYS_TYPES_H
+  stypes_h = "Yes";
+#endif
+#ifdef CURLSYS_PULL_SYS_SOCKET_H
+  ssocket_h = "Yes";
+#endif
+#ifdef CURLSYS_PULL_WS2TCPIP_H
+  sws2tcpip_h = "Yes";
+#endif
+  snprintf(syst, sizeof(syst),
+#ifdef CHECK_CURL_OFF_T
+           "CURL_TYPEOF_CURL_OFF_T:     %s\n"
+#endif
+           "CURL_FORMAT_CURL_OFF_T:     %s\n"
+           "CURL_FORMAT_CURL_OFF_TU:    %s\n"
+           "CURL_SUFFIX_CURL_OFF_T:     %s\n"
+           "CURL_SUFFIX_CURL_OFF_TU:    %s\n"
+           "CURL_SIZEOF_CURL_OFF_T:     %d\n"
+           "CURL_SIZEOF_LONG:           %d\n"
+           "CURL_TYPEOF_CURL_SOCKLEN_T: %s\n"
+           "CURL_PULL_SYS_TYPES_H:      %s\n"
+           "CURL_PULL_SYS_SOCKET_H:     %s\n"
+           "CURL_PULL_WS2TCPIP_H:       %s\n"
+
+#ifdef CHECK_CURL_OFF_T
+           , STRING(CURLSYS_TYPEOF_CURL_OFF_T)
+#endif
+           , CURLSYS_FORMAT_CURL_OFF_T
+           , CURLSYS_FORMAT_CURL_OFF_TU
+           , STRING(CURLSYS_SUFFIX_CURL_OFF_T)
+           , STRING(CURLSYS_SUFFIX_CURL_OFF_TU)
+           , CURLSYS_SIZEOF_CURL_OFF_T
+           , CURLSYS_SIZEOF_LONG
+           , STRING(CURLSYS_TYPEOF_CURL_SOCKLEN_T)
+           , stypes_h
+           , ssocket_h
+           , sws2tcpip_h);
+
+  if(strcmp(detect, syst)) {
+    printf("===> Type detection failed <====\n");
+    printf("[Detected]\n%s", detect);
+    printf("[System]\n%s", syst);
+    return 1; /* FAIL! */
+  }
+
+  return 0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1900.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1900.c
new file mode 100644
index 0000000..b55f3b7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib1900.c
@@ -0,0 +1,247 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2013 - 2016, Linus Nielsen Feltzing, <linus@haxx.se>
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+#define MAX_URLS 200
+#define MAX_BLACKLIST 20
+
+static int urltime[MAX_URLS];
+static char *urlstring[MAX_URLS];
+static CURL *handles[MAX_URLS];
+static char *site_blacklist[MAX_BLACKLIST];
+static char *server_blacklist[MAX_BLACKLIST];
+static int num_handles;
+static int blacklist_num_servers;
+static int blacklist_num_sites;
+
+static size_t
+write_callback(void *contents, size_t size, size_t nmemb, void *userp)
+{
+  size_t realsize = size * nmemb;
+  (void)contents;
+  (void)userp;
+
+  return realsize;
+}
+
+static int parse_url_file(const char *filename)
+{
+  FILE *f;
+  int filetime;
+  char buf[200];
+
+  num_handles = 0;
+  blacklist_num_sites = 0;
+  blacklist_num_servers = 0;
+
+  f = fopen(filename, "rb");
+  if(!f)
+    return 0;
+
+  while(!feof(f)) {
+    if(fscanf(f, "%d %s\n", &filetime, buf)) {
+      urltime[num_handles] = filetime;
+      urlstring[num_handles] = strdup(buf);
+      num_handles++;
+      continue;
+    }
+
+    if(fscanf(f, "blacklist_site %s\n", buf)) {
+      site_blacklist[blacklist_num_sites] = strdup(buf);
+      blacklist_num_sites++;
+      continue;
+    }
+
+    break;
+  }
+  fclose(f);
+
+  site_blacklist[blacklist_num_sites] = NULL;
+  server_blacklist[blacklist_num_servers] = NULL;
+  return num_handles;
+}
+
+static void free_urls(void)
+{
+  int i;
+  for(i = 0;i < num_handles;i++) {
+    Curl_safefree(urlstring[i]);
+  }
+  for(i = 0;i < blacklist_num_servers;i++) {
+    Curl_safefree(server_blacklist[i]);
+  }
+  for(i = 0;i < blacklist_num_sites;i++) {
+    Curl_safefree(site_blacklist[i]);
+  }
+}
+
+static int create_handles(void)
+{
+  int i;
+
+  for(i = 0;i < num_handles;i++) {
+    handles[i] = curl_easy_init();
+  }
+  return 0;
+}
+
+static void setup_handle(char *base_url, CURLM *m, int handlenum)
+{
+  char urlbuf[256];
+
+  snprintf(urlbuf, sizeof(urlbuf), "%s%s", base_url, urlstring[handlenum]);
+  curl_easy_setopt(handles[handlenum], CURLOPT_URL, urlbuf);
+  curl_easy_setopt(handles[handlenum], CURLOPT_VERBOSE, 1L);
+  curl_easy_setopt(handles[handlenum], CURLOPT_FAILONERROR, 1L);
+  curl_easy_setopt(handles[handlenum], CURLOPT_WRITEFUNCTION, write_callback);
+  curl_easy_setopt(handles[handlenum], CURLOPT_WRITEDATA, NULL);
+  curl_multi_add_handle(m, handles[handlenum]);
+}
+
+static void remove_handles(void)
+{
+  int i;
+
+  for(i = 0;i < num_handles;i++) {
+    if(handles[i])
+      curl_easy_cleanup(handles[i]);
+  }
+}
+
+int test(char *URL)
+{
+  int res = 0;
+  CURLM *m = NULL;
+  CURLMsg *msg; /* for picking up messages with the transfer status */
+  int msgs_left; /* how many messages are left */
+  int running;
+  int handlenum = 0;
+  struct timeval last_handle_add;
+
+  if(parse_url_file(libtest_arg2) <= 0)
+    goto test_cleanup;
+
+  start_test_timing();
+
+  curl_global_init(CURL_GLOBAL_ALL);
+
+  multi_init(m);
+
+  create_handles();
+
+  multi_setopt(m, CURLMOPT_PIPELINING, 1L);
+  multi_setopt(m, CURLMOPT_MAX_HOST_CONNECTIONS, 2L);
+  multi_setopt(m, CURLMOPT_MAX_PIPELINE_LENGTH, 3L);
+  multi_setopt(m, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, 15000L);
+  multi_setopt(m, CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, 10000L);
+
+  multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_blacklist);
+  multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_blacklist);
+
+  last_handle_add = tutil_tvnow();
+
+  for(;;) {
+    struct timeval interval;
+    struct timeval now;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+    long timeout;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    if(handlenum < num_handles) {
+      now = tutil_tvnow();
+      if(tutil_tvdiff(now, last_handle_add) >= urltime[handlenum]) {
+        fprintf(stdout, "Adding handle %d\n", handlenum);
+        setup_handle(URL, m, handlenum);
+        last_handle_add = now;
+        handlenum++;
+      }
+    }
+
+    curl_multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    /* See how the transfers went */
+    while((msg = curl_multi_info_read(m, &msgs_left))) {
+      if(msg->msg == CURLMSG_DONE) {
+        int i, found = 0;
+
+        /* Find out which handle this message is about */
+        for(i = 0; i < num_handles; i++) {
+          found = (msg->easy_handle == handles[i]);
+          if(found)
+            break;
+        }
+
+        printf("Handle %d Completed with status %d\n", i, msg->data.result);
+        curl_multi_remove_handle(m, handles[i]);
+      }
+    }
+
+    if(handlenum == num_handles && !running) {
+      break; /* done */
+    }
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    curl_multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    curl_multi_timeout(m, &timeout);
+
+    if(timeout < 0)
+      timeout = 1;
+
+    interval.tv_sec = timeout / 1000;
+    interval.tv_usec = (timeout % 1000) * 1000;
+
+    interval.tv_sec = 0;
+    interval.tv_usec = 1000;
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  remove_handles();
+
+  /* undocumented cleanup sequence - type UB */
+
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  free_urls();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib500.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib500.c
new file mode 100644
index 0000000..d17b24b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib500.c
@@ -0,0 +1,143 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testtrace.h"
+#include "memdebug.h"
+
+#ifdef LIB585
+
+static int counter;
+
+static curl_socket_t tst_opensocket(void *clientp,
+                                    curlsocktype purpose,
+                                    struct curl_sockaddr *addr)
+{
+  (void)clientp;
+  (void)purpose;
+  printf("[OPEN] counter: %d\n", ++counter);
+  return socket(addr->family, addr->socktype, addr->protocol);
+}
+
+static int tst_closesocket(void *clientp, curl_socket_t sock)
+{
+  (void)clientp;
+  printf("[CLOSE] counter: %d\n", counter--);
+  return sclose(sock);
+}
+
+static void setupcallbacks(CURL *curl)
+{
+  curl_easy_setopt(curl, CURLOPT_OPENSOCKETFUNCTION, tst_opensocket);
+  curl_easy_setopt(curl, CURLOPT_CLOSESOCKETFUNCTION, tst_closesocket);
+  counter = 0;
+}
+
+#else
+#define setupcallbacks(x) Curl_nop_stmt
+#endif
+
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+  char *ipstr=NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  libtest_debug_config.nohex = 1;
+  libtest_debug_config.tracetime = 1;
+  test_setopt(curl, CURLOPT_DEBUGDATA, &libtest_debug_config);
+  test_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  if(libtest_arg3 && !strcmp(libtest_arg3, "activeftp"))
+    test_setopt(curl, CURLOPT_FTPPORT, "-");
+
+  setupcallbacks(curl);
+
+  res = curl_easy_perform(curl);
+
+  if(!res) {
+    res = curl_easy_getinfo(curl, CURLINFO_PRIMARY_IP, &ipstr);
+    if(libtest_arg2) {
+      FILE *moo = fopen(libtest_arg2, "wb");
+      if(moo) {
+        double time_namelookup;
+        double time_connect;
+        double time_pretransfer;
+        double time_starttransfer;
+        double time_total;
+        fprintf(moo, "IP: %s\n", ipstr);
+        curl_easy_getinfo(curl, CURLINFO_NAMELOOKUP_TIME, &time_namelookup);
+        curl_easy_getinfo(curl, CURLINFO_CONNECT_TIME, &time_connect);
+        curl_easy_getinfo(curl, CURLINFO_PRETRANSFER_TIME, &time_pretransfer);
+        curl_easy_getinfo(curl, CURLINFO_STARTTRANSFER_TIME,
+                          &time_starttransfer);
+        curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &time_total);
+
+        /* since the timing will always vary we only compare relative
+           differences between these 5 times */
+        if(time_namelookup > time_connect) {
+          fprintf(moo, "namelookup vs connect: %f %f\n",
+                  time_namelookup, time_connect);
+        }
+        if(time_connect > time_pretransfer) {
+          fprintf(moo, "connect vs pretransfer: %f %f\n",
+                  time_connect, time_pretransfer);
+        }
+        if(time_pretransfer > time_starttransfer) {
+          fprintf(moo, "pretransfer vs starttransfer: %f %f\n",
+                  time_pretransfer, time_starttransfer);
+        }
+        if(time_starttransfer > time_total) {
+          fprintf(moo, "starttransfer vs total: %f %f\n",
+                  time_starttransfer, time_total);
+        }
+
+        fclose(moo);
+      }
+    }
+  }
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib501.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib501.c
new file mode 100644
index 0000000..7a23412
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib501.c
@@ -0,0 +1,56 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  (void)URL; /* we don't use this */
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib502.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib502.c
new file mode 100644
index 0000000..7cf6415
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib502.c
@@ -0,0 +1,92 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+/*
+ * Get a single URL without select().
+ */
+
+int test(char *URL)
+{
+  CURL *c = NULL;
+  CURLM *m = NULL;
+  int res = 0;
+  int running;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(c);
+
+  easy_setopt(c, CURLOPT_URL, URL);
+
+  multi_init(m);
+
+  multi_add_handle(m, c);
+
+  for(;;) {
+    struct timeval timeout;
+    fd_set fdread, fdwrite, fdexcep;
+    int maxfd = -99;
+
+    timeout.tv_sec = 0;
+    timeout.tv_usec = 100000L; /* 100 ms */
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PA */
+
+  curl_multi_remove_handle(m, c);
+  curl_multi_cleanup(m);
+  curl_easy_cleanup(c);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib503.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib503.c
new file mode 100644
index 0000000..2eb2874
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib503.c
@@ -0,0 +1,102 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+/*
+ * Source code in here hugely as reported in bug report 651460 by
+ * Christopher R. Palmer.
+ *
+ * Use multi interface to get HTTPS document over proxy, and provide
+ * auth info.
+ */
+
+int test(char *URL)
+{
+  CURL *c = NULL;
+  CURLM *m = NULL;
+  int res = 0;
+  int running;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(c);
+
+  easy_setopt(c, CURLOPT_PROXY, libtest_arg2); /* set in first.c */
+  easy_setopt(c, CURLOPT_URL, URL);
+  easy_setopt(c, CURLOPT_USERPWD, "test:ing");
+  easy_setopt(c, CURLOPT_PROXYUSERPWD, "test:ing");
+  easy_setopt(c, CURLOPT_HTTPPROXYTUNNEL, 1L);
+  easy_setopt(c, CURLOPT_HEADER, 1L);
+  easy_setopt(c, CURLOPT_VERBOSE, 1L);
+
+  multi_init(m);
+
+  multi_add_handle(m, c);
+
+  for(;;) {
+    struct timeval interval;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PA */
+
+  curl_multi_remove_handle(m, c);
+  curl_multi_cleanup(m);
+  curl_easy_cleanup(c);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib504.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib504.c
new file mode 100644
index 0000000..3466dc9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib504.c
@@ -0,0 +1,114 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+/*
+ * Source code in here hugely as reported in bug report 651464 by
+ * Christopher R. Palmer.
+ *
+ * Use multi interface to get document over proxy with bad port number.
+ * This caused the interface to "hang" in libcurl 7.10.2.
+ */
+int test(char *URL)
+{
+  CURL *c = NULL;
+  int res = 0;
+  CURLM *m = NULL;
+  fd_set rd, wr, exc;
+  int running;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(c);
+
+  /* The point here is that there must not be anything running on the given
+     proxy port */
+  if(libtest_arg2)
+    easy_setopt(c, CURLOPT_PROXY, libtest_arg2);
+  easy_setopt(c, CURLOPT_URL, URL);
+  easy_setopt(c, CURLOPT_VERBOSE, 1L);
+
+  multi_init(m);
+
+  multi_add_handle(m, c);
+
+  for(;;) {
+    struct timeval interval;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    fprintf(stderr, "curl_multi_perform()\n");
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running) {
+      /* This is where this code is expected to reach */
+      int numleft;
+      CURLMsg *msg = curl_multi_info_read(m, &numleft);
+      fprintf(stderr, "Expected: not running\n");
+      if(msg && !numleft)
+        res = TEST_ERR_SUCCESS; /* this is where we should be */
+      else
+        res = TEST_ERR_FAILURE; /* not correct */
+      break; /* done */
+    }
+    fprintf(stderr, "running == %d\n", running);
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    fprintf(stderr, "curl_multi_fdset()\n");
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PA */
+
+  curl_multi_remove_handle(m, c);
+  curl_multi_cleanup(m);
+  curl_easy_cleanup(c);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib505.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib505.c
new file mode 100644
index 0000000..127fde7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib505.c
@@ -0,0 +1,153 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#include "memdebug.h"
+
+/*
+ * This example shows an FTP upload, with a rename of the file just after
+ * a successful upload.
+ *
+ * Example based on source code provided by Erick Nuwendam. Thanks!
+ */
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = CURLE_OK;
+  FILE *hd_src;
+  int hd;
+  struct_stat file_info;
+  struct curl_slist *hl;
+  int error;
+
+  struct curl_slist *headerlist=NULL;
+  const char *buf_1 = "RNFR 505";
+  const char *buf_2 = "RNTO 505-forreal";
+
+  if(!libtest_arg2) {
+    fprintf(stderr, "Usage: <url> <file-to-upload>\n");
+    return TEST_ERR_USAGE;
+  }
+
+  hd_src = fopen(libtest_arg2, "rb");
+  if(NULL == hd_src) {
+    error = ERRNO;
+    fprintf(stderr, "fopen failed with error: %d %s\n",
+            error, strerror(error));
+    fprintf(stderr, "Error opening file: %s\n", libtest_arg2);
+    return TEST_ERR_MAJOR_BAD; /* if this happens things are major weird */
+  }
+
+  /* get the file size of the local file */
+  hd = fstat(fileno(hd_src), &file_info);
+  if(hd == -1) {
+    /* can't open file, bail out */
+    error = ERRNO;
+    fprintf(stderr, "fstat() failed with error: %d %s\n",
+            error, strerror(error));
+    fprintf(stderr, "ERROR: cannot open file %s\n", libtest_arg2);
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(! file_info.st_size) {
+    fprintf(stderr, "ERROR: file %s has zero size!\n", libtest_arg2);
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* get a curl handle */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* build a list of commands to pass to libcurl */
+
+  hl = curl_slist_append(headerlist, buf_1);
+  if(!hl) {
+    fprintf(stderr, "curl_slist_append() failed\n");
+    curl_easy_cleanup(curl);
+    curl_global_cleanup();
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+  headerlist = curl_slist_append(hl, buf_2);
+  if(!headerlist) {
+    fprintf(stderr, "curl_slist_append() failed\n");
+    curl_slist_free_all(hl);
+    curl_easy_cleanup(curl);
+    curl_global_cleanup();
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+  headerlist = hl;
+
+  /* enable uploading */
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* enable verbose */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* specify target */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* pass in that last of FTP commands to run after the transfer */
+  test_setopt(curl, CURLOPT_POSTQUOTE, headerlist);
+
+  /* now specify which file to upload */
+  test_setopt(curl, CURLOPT_READDATA, hd_src);
+
+  /* and give the size of the upload (optional) */
+  test_setopt(curl, CURLOPT_INFILESIZE_LARGE,
+                   (curl_off_t)file_info.st_size);
+
+  /* Now run off and do what you've been told! */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* clean up the FTP commands list */
+  curl_slist_free_all(headerlist);
+
+  /* close the local file */
+  fclose(hd_src);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib506.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib506.c
new file mode 100644
index 0000000..d26252b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib506.c
@@ -0,0 +1,380 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+#include "memdebug.h"
+
+static const char *HOSTHEADER = "Host: www.host.foo.com";
+static const char *JAR = "log/jar506";
+#define THREADS 2
+
+/* struct containing data of a thread */
+struct Tdata {
+  CURLSH *share;
+  char *url;
+};
+
+struct userdata {
+  const char *text;
+  int counter;
+};
+
+static int locks[3];
+
+/* lock callback */
+static void my_lock(CURL *handle, curl_lock_data data,
+                    curl_lock_access laccess, void *useptr)
+{
+  const char *what;
+  struct userdata *user = (struct userdata *)useptr;
+  int locknum;
+
+  (void)handle;
+  (void)laccess;
+
+  switch(data) {
+    case CURL_LOCK_DATA_SHARE:
+      what = "share";
+      locknum = 0;
+      break;
+    case CURL_LOCK_DATA_DNS:
+      what = "dns";
+      locknum = 1;
+      break;
+    case CURL_LOCK_DATA_COOKIE:
+      what = "cookie";
+      locknum = 2;
+      break;
+    default:
+      fprintf(stderr, "lock: no such data: %d\n", (int)data);
+      return;
+  }
+
+  /* detect locking of locked locks */
+  if(locks[locknum]) {
+    printf("lock: double locked %s\n", what);
+    return;
+  }
+  locks[locknum]++;
+
+  printf("lock:   %-6s [%s]: %d\n", what, user->text, user->counter);
+  user->counter++;
+}
+
+/* unlock callback */
+static void my_unlock(CURL *handle, curl_lock_data data, void *useptr)
+{
+  const char *what;
+  struct userdata *user = (struct userdata *)useptr;
+  int locknum;
+  (void)handle;
+  switch(data) {
+    case CURL_LOCK_DATA_SHARE:
+      what = "share";
+      locknum = 0;
+      break;
+    case CURL_LOCK_DATA_DNS:
+      what = "dns";
+      locknum = 1;
+      break;
+    case CURL_LOCK_DATA_COOKIE:
+      what = "cookie";
+      locknum = 2;
+      break;
+    default:
+      fprintf(stderr, "unlock: no such data: %d\n", (int)data);
+      return;
+  }
+
+  /* detect unlocking of unlocked locks */
+  if(!locks[locknum]) {
+    printf("unlock: double unlocked %s\n", what);
+    return;
+  }
+  locks[locknum]--;
+
+  printf("unlock: %-6s [%s]: %d\n", what, user->text, user->counter);
+  user->counter++;
+}
+
+
+/* build host entry */
+static struct curl_slist *sethost(struct curl_slist *headers)
+{
+  (void)headers;
+  return curl_slist_append(NULL, HOSTHEADER);
+}
+
+
+/* the dummy thread function */
+static void *fire(void *ptr)
+{
+  CURLcode code;
+  struct curl_slist *headers;
+  struct Tdata *tdata = (struct Tdata*)ptr;
+  CURL *curl;
+  int i=0;
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    return NULL;
+  }
+
+  headers = sethost(NULL);
+  curl_easy_setopt(curl, CURLOPT_VERBOSE,    1L);
+  curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
+  curl_easy_setopt(curl, CURLOPT_URL,        tdata->url);
+  printf("CURLOPT_SHARE\n");
+  curl_easy_setopt(curl, CURLOPT_SHARE, tdata->share);
+
+  printf("PERFORM\n");
+  code = curl_easy_perform(curl);
+  if(code) {
+    fprintf(stderr, "perform url '%s' repeat %d failed, curlcode %d\n",
+            tdata->url, i, (int)code);
+  }
+
+  printf("CLEANUP\n");
+  curl_easy_cleanup(curl);
+  curl_slist_free_all(headers);
+
+  return NULL;
+}
+
+
+/* build request url */
+static char *suburl(const char *base, int i)
+{
+  return curl_maprintf("%s%.4d", base, i);
+}
+
+
+/* test function */
+int test(char *URL)
+{
+  int res;
+  CURLSHcode scode = CURLSHE_OK;
+  CURLcode code = CURLE_OK;
+  char *url = NULL;
+  struct Tdata tdata;
+  CURL *curl;
+  CURLSH *share;
+  struct curl_slist *headers = NULL;
+  struct curl_slist *cookies = NULL;
+  struct curl_slist *next_cookie = NULL;
+  int i;
+  struct userdata user;
+
+  user.text = "Pigs in space";
+  user.counter = 0;
+
+  printf("GLOBAL_INIT\n");
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* prepare share */
+  printf("SHARE_INIT\n");
+  share = curl_share_init();
+  if(!share) {
+    fprintf(stderr, "curl_share_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(CURLSHE_OK == scode) {
+    printf("CURLSHOPT_LOCKFUNC\n");
+    scode = curl_share_setopt(share, CURLSHOPT_LOCKFUNC, my_lock);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURLSHOPT_UNLOCKFUNC\n");
+    scode = curl_share_setopt(share, CURLSHOPT_UNLOCKFUNC, my_unlock);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURLSHOPT_USERDATA\n");
+    scode = curl_share_setopt(share, CURLSHOPT_USERDATA, &user);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURL_LOCK_DATA_COOKIE\n");
+    scode = curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURL_LOCK_DATA_DNS\n");
+    scode = curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_DNS);
+  }
+
+  if(CURLSHE_OK != scode) {
+    fprintf(stderr, "curl_share_setopt() failed\n");
+    curl_share_cleanup(share);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* initial cookie manipulation */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_share_cleanup(share);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+  printf("CURLOPT_SHARE\n");
+  test_setopt(curl, CURLOPT_SHARE,      share);
+  printf("CURLOPT_COOKIELIST injected_and_clobbered\n");
+  test_setopt(curl, CURLOPT_COOKIELIST,
+               "Set-Cookie: injected_and_clobbered=yes; "
+               "domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030");
+  printf("CURLOPT_COOKIELIST ALL\n");
+  test_setopt(curl, CURLOPT_COOKIELIST, "ALL");
+  printf("CURLOPT_COOKIELIST session\n");
+  test_setopt(curl, CURLOPT_COOKIELIST, "Set-Cookie: session=elephants");
+  printf("CURLOPT_COOKIELIST injected\n");
+  test_setopt(curl, CURLOPT_COOKIELIST,
+               "Set-Cookie: injected=yes; domain=host.foo.com; "
+               "expires=Sat Feb 2 11:56:27 GMT 2030");
+  printf("CURLOPT_COOKIELIST SESS\n");
+  test_setopt(curl, CURLOPT_COOKIELIST, "SESS");
+  printf("CLEANUP\n");
+  curl_easy_cleanup(curl);
+
+
+  res = 0;
+
+  /* start treads */
+  for(i=1; i<=THREADS; i++) {
+
+    /* set thread data */
+    tdata.url   = suburl(URL, i); /* must be curl_free()d */
+    tdata.share = share;
+
+    /* simulate thread, direct call of "thread" function */
+    printf("*** run %d\n",i);
+    fire(&tdata);
+
+    curl_free(tdata.url);
+  }
+
+
+  /* fetch a another one and save cookies */
+  printf("*** run %d\n", i);
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_share_cleanup(share);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  url = suburl(URL, i);
+  headers = sethost(NULL);
+  test_setopt(curl, CURLOPT_HTTPHEADER, headers);
+  test_setopt(curl, CURLOPT_URL,        url);
+  printf("CURLOPT_SHARE\n");
+  test_setopt(curl, CURLOPT_SHARE,      share);
+  printf("CURLOPT_COOKIEJAR\n");
+  test_setopt(curl, CURLOPT_COOKIEJAR,  JAR);
+  printf("CURLOPT_COOKIELIST FLUSH\n");
+  test_setopt(curl, CURLOPT_COOKIELIST, "FLUSH");
+
+  printf("PERFORM\n");
+  curl_easy_perform(curl);
+
+  printf("CLEANUP\n");
+  curl_easy_cleanup(curl);
+  curl_free(url);
+  curl_slist_free_all(headers);
+
+  /* load cookies */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_share_cleanup(share);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+  url = suburl(URL, i);
+  headers = sethost(NULL);
+  test_setopt(curl, CURLOPT_HTTPHEADER, headers);
+  test_setopt(curl, CURLOPT_URL,        url);
+  printf("CURLOPT_SHARE\n");
+  test_setopt(curl, CURLOPT_SHARE,      share);
+  printf("CURLOPT_COOKIELIST ALL\n");
+  test_setopt(curl, CURLOPT_COOKIELIST, "ALL");
+  printf("CURLOPT_COOKIEJAR\n");
+  test_setopt(curl, CURLOPT_COOKIEFILE, JAR);
+  printf("CURLOPT_COOKIELIST RELOAD\n");
+  test_setopt(curl, CURLOPT_COOKIELIST, "RELOAD");
+
+  code = curl_easy_getinfo(curl, CURLINFO_COOKIELIST, &cookies);
+  if(code != CURLE_OK) {
+    fprintf(stderr, "curl_easy_getinfo() failed\n");
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  printf("loaded cookies:\n");
+  if(!cookies) {
+    fprintf(stderr, "  reloading cookies from '%s' failed\n", JAR);
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  printf("-----------------\n");
+  next_cookie = cookies;
+  while(next_cookie) {
+    printf("  %s\n", next_cookie->data);
+    next_cookie = next_cookie->next;
+  }
+  printf("-----------------\n");
+  curl_slist_free_all(cookies);
+
+  /* try to free share, expect to fail because share is in use*/
+  printf("try SHARE_CLEANUP...\n");
+  scode = curl_share_cleanup(share);
+  if(scode==CURLSHE_OK) {
+    fprintf(stderr, "curl_share_cleanup succeed but error expected\n");
+    share = NULL;
+  }
+  else {
+    printf("SHARE_CLEANUP failed, correct\n");
+  }
+
+test_cleanup:
+
+  /* clean up last handle */
+  printf("CLEANUP\n");
+  curl_easy_cleanup(curl);
+  curl_slist_free_all(headers);
+  curl_free(url);
+
+  /* free share */
+  printf("SHARE_CLEANUP\n");
+  scode = curl_share_cleanup(share);
+  if(scode!=CURLSHE_OK)
+    fprintf(stderr, "curl_share_cleanup failed, code errno %d\n",
+            (int)scode);
+
+  printf("GLOBAL_CLEANUP\n");
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib507.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib507.c
new file mode 100644
index 0000000..ebe897a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib507.c
@@ -0,0 +1,100 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  CURL *curls = NULL;
+  CURLM *multi = NULL;
+  int still_running;
+  int i = -1;
+  int res = 0;
+  CURLMsg *msg;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(multi);
+
+  easy_init(curls);
+
+  easy_setopt(curls, CURLOPT_URL, URL);
+  easy_setopt(curls, CURLOPT_HEADER, 1L);
+
+  multi_add_handle(multi, curls);
+
+  multi_perform(multi, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    struct timeval timeout;
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -99;
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+
+    multi_perform(multi, &still_running);
+
+    abort_on_test_timeout();
+  }
+
+  msg = curl_multi_info_read(multi, &still_running);
+  if(msg)
+    /* this should now contain a result code from the easy handle,
+       get it */
+    i = msg->data.result;
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(multi);
+  curl_easy_cleanup(curls);
+  curl_global_cleanup();
+
+  if(res)
+    i = res;
+
+  return i; /* return the final return code */
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib508.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib508.c
new file mode 100644
index 0000000..1f6c683
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib508.c
@@ -0,0 +1,108 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data[]="this is what we post to the silly web server\n";
+
+struct WriteThis {
+  char *readptr;
+  size_t sizeleft;
+};
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct WriteThis *pooh = (struct WriteThis *)userp;
+
+  if(size*nmemb < 1)
+    return 0;
+
+  if(pooh->sizeleft) {
+    *(char *)ptr = pooh->readptr[0]; /* copy one single byte */
+    pooh->readptr++;                 /* advance pointer */
+    pooh->sizeleft--;                /* less data left */
+    return 1;                        /* we return 1 byte at a time! */
+  }
+
+  return 0;                         /* no more data left to deliver */
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  struct WriteThis pooh;
+
+  pooh.readptr = data;
+  pooh.sizeleft = strlen(data);
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+
+  /* Set the expected POST size */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)pooh.sizeleft);
+
+  /* we want to use our own read function */
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* pointer to pass to our read function */
+  test_setopt(curl, CURLOPT_READDATA, &pooh);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib509.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib509.c
new file mode 100644
index 0000000..4f3e072
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib509.c
@@ -0,0 +1,147 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+/*
+ * This test uses these funny custom memory callbacks for the only purpose
+ * of verifying that curl_global_init_mem() functionality is present in
+ * libcurl and that it works unconditionally no matter how libcurl is built,
+ * nothing more.
+ *
+ * Do not include memdebug.h in this source file, and do not use directly
+ * memory related functions in this file except those used inside custom
+ * memory callbacks which should be calling 'the real thing'.
+ */
+
+/*
+#include "memdebug.h"
+*/
+
+static int seen_malloc = 0;
+static int seen_free = 0;
+static int seen_realloc = 0;
+static int seen_strdup = 0;
+static int seen_calloc = 0;
+
+void *custom_malloc(size_t size);
+void custom_free(void *ptr);
+void *custom_realloc(void *ptr, size_t size);
+char *custom_strdup(const char *ptr);
+void *custom_calloc(size_t nmemb, size_t size);
+
+
+void *custom_calloc(size_t nmemb, size_t size)
+{
+  if(!seen_calloc) {
+    printf("seen custom_calloc()\n");
+    seen_calloc = 1;
+  }
+  return (calloc)(nmemb, size);
+}
+
+void *custom_malloc(size_t size)
+{
+  if(!seen_malloc && seen_calloc) {
+    printf("seen custom_malloc()\n");
+    seen_malloc = 1;
+  }
+  return (malloc)(size);
+}
+
+char *custom_strdup(const char *ptr)
+{
+  if(!seen_strdup && seen_malloc) {
+    /* currently (2013.03.13), memory tracking enabled builds do not call
+       the strdup callback, in this case malloc callback and memcpy are used
+       instead. If some day this is changed the following printf() should be
+       uncommented, and a line added to test definition.
+    printf("seen custom_strdup()\n");
+    */
+    seen_strdup = 1;
+  }
+  return (strdup)(ptr);
+}
+
+void *custom_realloc(void *ptr, size_t size)
+{
+  if(!seen_realloc && seen_malloc) {
+    printf("seen custom_realloc()\n");
+    seen_realloc = 1;
+  }
+  return (realloc)(ptr, size);
+}
+
+void custom_free(void *ptr)
+{
+  if(!seen_free && seen_realloc) {
+    printf("seen custom_free()\n");
+    seen_free = 1;
+  }
+  (free)(ptr);
+}
+
+
+int test(char *URL)
+{
+  unsigned char a[] = {0x2f, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+                       0x91, 0xa2, 0xb3, 0xc4, 0xd5, 0xe6, 0xf7};
+  CURLcode res;
+  CURL *curl;
+  int asize;
+  char *str = NULL;
+
+  (void)URL;
+
+  res = curl_global_init_mem(CURL_GLOBAL_ALL,
+                             custom_malloc,
+                             custom_free,
+                             custom_realloc,
+                             custom_strdup,
+                             custom_calloc);
+  if(res != CURLE_OK) {
+    fprintf(stderr, "curl_global_init_mem() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_USERAGENT, "test509"); /* uses strdup() */
+
+  asize = (int)sizeof(a);
+  str = curl_easy_escape(curl, (char *)a, asize); /* uses realloc() */
+
+test_cleanup:
+
+  if(str)
+    curl_free(str);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib510.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib510.c
new file mode 100644
index 0000000..4c290f1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib510.c
@@ -0,0 +1,135 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static const char *post[]={
+  "one",
+  "two",
+  "three",
+  "and a final longer crap: four",
+  NULL
+};
+
+
+struct WriteThis {
+  int counter;
+};
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct WriteThis *pooh = (struct WriteThis *)userp;
+  const char *data;
+
+  if(size*nmemb < 1)
+    return 0;
+
+  data = post[pooh->counter];
+
+  if(data) {
+    size_t len = strlen(data);
+    if(size*nmemb < len) {
+      fprintf(stderr, "read buffer is too small to run test\n");
+      return 0;
+    }
+    memcpy(ptr, data, len);
+    pooh->counter++; /* advance pointer */
+    return len;
+  }
+  return 0;                         /* no more data left to deliver */
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+  struct curl_slist *slist = NULL;
+  struct WriteThis pooh;
+  pooh.counter = 0;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  slist = curl_slist_append(slist, "Transfer-Encoding: chunked");
+  if(slist == NULL) {
+    fprintf(stderr, "curl_slist_append() failed\n");
+    curl_easy_cleanup(curl);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+
+  /* we want to use our own read function */
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* pointer to pass to our read function */
+  test_setopt(curl, CURLOPT_READDATA, &pooh);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* enforce chunked transfer by setting the header */
+  test_setopt(curl, CURLOPT_HTTPHEADER, slist);
+
+#ifdef LIB565
+  test_setopt(curl, CURLOPT_HTTPAUTH, (long)CURLAUTH_DIGEST);
+  test_setopt(curl, CURLOPT_USERPWD, "foo:bar");
+#endif
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* clean up the headers list */
+  if(slist)
+    curl_slist_free_all(slist);
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib511.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib511.c
new file mode 100644
index 0000000..2467bf0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib511.c
@@ -0,0 +1,56 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_FILETIME, 1L);
+  test_setopt(curl, CURLOPT_NOBODY, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib512.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib512.c
new file mode 100644
index 0000000..14241dd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib512.c
@@ -0,0 +1,77 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/* Test case code based on source in a bug report filed by James Bursa on
+   28 Apr 2004 */
+
+int test(char *URL)
+{
+  CURLcode code;
+  CURL *curl;
+  CURL *curl2;
+  int rc = 99;
+
+  code = curl_global_init(CURL_GLOBAL_ALL);
+  if(code == CURLE_OK) {
+
+    curl = curl_easy_init();
+    if(curl) {
+
+      curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+      curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
+
+      curl2 = curl_easy_duphandle(curl);
+      if(curl2) {
+
+        code = curl_easy_setopt(curl2, CURLOPT_URL, URL);
+        if(code == CURLE_OK) {
+
+          code = curl_easy_perform(curl2);
+          if(code == CURLE_OK)
+            rc = 0;
+          else
+            rc = 1;
+        }
+        else
+          rc = 2;
+
+        curl_easy_cleanup(curl2);
+      }
+      else
+        rc = 3;
+
+      curl_easy_cleanup(curl);
+    }
+    else
+      rc = 4;
+
+    curl_global_cleanup();
+  }
+  else
+    rc = 5;
+
+  return rc;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib513.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib513.c
new file mode 100644
index 0000000..7c34bc4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib513.c
@@ -0,0 +1,83 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  (void)ptr;
+  (void)size;
+  (void)nmemb;
+  (void)userp;
+  return CURL_READFUNC_ABORT;
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+  /* Set the expected POST size */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, 1L);
+
+  /* we want to use our own read function */
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* pointer to pass to our read function */
+  test_setopt(curl, CURLOPT_READDATA, NULL);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib514.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib514.c
new file mode 100644
index 0000000..7b33d52
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib514.c
@@ -0,0 +1,79 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Based on a bug report by Niels van Tongeren on June 29, 2004:
+
+  A weird situation occurs when request 1 is a POST request and the request
+  2 is a HEAD request. For the POST request we set the CURLOPT_POSTFIELDS,
+  CURLOPT_POSTFIELDSIZE and CURLOPT_POST options. For the HEAD request we
+  set the CURLOPT_NOBODY option to '1'.
+
+  */
+
+  test_setopt(curl, CURLOPT_POSTFIELDS, "moo");
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, 3L);
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+  /* this is where transfer 1 would take place, but skip that and change
+     options right away instead */
+
+  test_setopt(curl, CURLOPT_NOBODY, 1L);
+
+  test_setopt(curl, CURLOPT_VERBOSE, 1L); /* show verbose for debug */
+  test_setopt(curl, CURLOPT_HEADER, 1L); /* include header */
+
+  /* Now, we should be making a fine HEAD request */
+
+  /* Perform the request 2, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib515.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib515.c
new file mode 100644
index 0000000..6fb1787
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib515.c
@@ -0,0 +1,60 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_POSTFIELDS, NULL);
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, 0L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L); /* show verbose for debug */
+  test_setopt(curl, CURLOPT_HEADER, 1L); /* include header */
+
+  /* Now, we should be making a zero byte POST request */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib516.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib516.c
new file mode 100644
index 0000000..00c54c4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib516.c
@@ -0,0 +1,59 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HTTPPOST, NULL);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L); /* show verbose for debug */
+  test_setopt(curl, CURLOPT_HEADER, 1L); /* include header */
+
+  /* Now, we should be making a zero byte POST request */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib517.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib517.c
new file mode 100644
index 0000000..22162ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib517.c
@@ -0,0 +1,139 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static const char * const dates[]={
+  "Sun, 06 Nov 1994 08:49:37 GMT",
+  "Sunday, 06-Nov-94 08:49:37 GMT",
+  "Sun Nov  6 08:49:37 1994",
+  "06 Nov 1994 08:49:37 GMT",
+  "06-Nov-94 08:49:37 GMT",
+  "Nov  6 08:49:37 1994",
+  "06 Nov 1994 08:49:37",
+  "06-Nov-94 08:49:37",
+  "1994 Nov 6 08:49:37",
+  "GMT 08:49:37 06-Nov-94 Sunday",
+  "94 6 Nov 08:49:37",
+  "1994 Nov 6",
+  "06-Nov-94",
+  "Sun Nov 6 94",
+  "1994.Nov.6",
+  "Sun/Nov/6/94/GMT",
+  "Sun, 06 Nov 1994 08:49:37 CET",
+  "06 Nov 1994 08:49:37 EST",
+  "Sun, 12 Sep 2004 15:05:58 -0700",
+  "Sat, 11 Sep 2004 21:32:11 +0200",
+  "20040912 15:05:58 -0700",
+  "20040911 +0200",
+  "Thu, 01-Jan-1970 00:59:59 GMT",
+  "Thu, 01-Jan-1970 01:00:00 GMT",
+/*  "2094 Nov 6", See ../data/test517 for details */
+  "Sat, 15-Apr-17 21:01:22 GMT",
+  "Thu, 19-Apr-2007 16:00:00 GMT",
+  "Wed, 25 Apr 2007 21:02:13 GMT",
+  "Thu, 19/Apr\\2007 16:00:00 GMT",
+  "Fri, 1 Jan 2010 01:01:50 GMT",
+  "Wednesday, 1-Jan-2003 00:00:00 GMT",
+  ", 1-Jan-2003 00:00:00 GMT",
+  " 1-Jan-2003 00:00:00 GMT",
+  "1-Jan-2003 00:00:00 GMT",
+  "Wed,18-Apr-07 22:50:12 GMT",
+  "WillyWonka  , 18-Apr-07 22:50:12 GMT",
+  "WillyWonka  , 18-Apr-07 22:50:12",
+  "WillyWonka  ,  18-apr-07   22:50:12",
+  "Mon, 18-Apr-1977 22:50:13 GMT",
+  "Mon, 18-Apr-77 22:50:13 GMT",
+  "\"Sat, 15-Apr-17\\\"21:01:22\\\"GMT\"",
+  "Partyday, 18- April-07 22:50:12",
+  "Partyday, 18 - Apri-07 22:50:12",
+  "Wednes, 1-Januar-2003 00:00:00 GMT",
+  "Sat, 15-Apr-17 21:01:22",
+  "Sat, 15-Apr-17 21:01:22 GMT-2",
+  "Sat, 15-Apr-17 21:01:22 GMT BLAH",
+  "Sat, 15-Apr-17 21:01:22 GMT-0400",
+  "Sat, 15-Apr-17 21:01:22 GMT-0400 (EDT)",
+  "Sat, 15-Apr-17 21:01:22 DST",
+  "Sat, 15-Apr-17 21:01:22 -0400",
+  "Sat, 15-Apr-17 21:01:22 (hello there)",
+  "Sat, 15-Apr-17 21:01:22 11:22:33",
+  "Sat, 15-Apr-17 ::00 21:01:22",
+  "Sat, 15-Apr-17 boink:z 21:01:22",
+  "Sat, 15-Apr-17 91:22:33 21:01:22",
+  "Thu Apr 18 22:50:12 2007 GMT",
+  "22:50:12 Thu Apr 18 2007 GMT",
+  "Thu 22:50:12 Apr 18 2007 GMT",
+  "Thu Apr 22:50:12 18 2007 GMT",
+  "Thu Apr 18 22:50:12 2007 GMT",
+  "Thu Apr 18 2007 22:50:12 GMT",
+  "Thu Apr 18 2007 GMT 22:50:12",
+  "Sat, 15-Apr-17 21:01:22 GMT",
+  "15-Sat, Apr-17 21:01:22 GMT",
+  "15-Sat, Apr 21:01:22 GMT 17",
+  "15-Sat, Apr 21:01:22 GMT 2017",
+  "15 Apr 21:01:22 2017",
+  "15 17 Apr 21:01:22",
+  "Apr 15 17 21:01:22",
+  "Apr 15 21:01:22 17",
+  "2017 April 15 21:01:22",
+  "15 April 2017 21:01:22",
+  "98 April 17 21:01:22",
+  "Thu, 012-Aug-2008 20:49:07 GMT",
+#if 0
+  /* leaving out these strings since they differ between 32 and 64 bit
+     archs and the test suite has no good way to support two different outputs
+     like that */
+  "Thu, 12-Aug-31841 20:49:07 GMT",
+  "Thu, 12-Aug-9999999999 20:49:07 GMT",
+#endif
+  "Thu, 999999999999-Aug-2007 20:49:07 GMT",
+  "Thu, 12-Aug-2007 20:61:99999999999 GMT",
+  "IAintNoDateFool",
+  "Thu Apr 18 22:50 2007 GMT", /* without seconds */
+  "20110623 12:34:56",
+  "20110632 12:34:56",
+  "20110623 56:34:56",
+  "20111323 12:34:56",
+  "20110623 12:34:79",
+  "Wed, 31 Dec 2008 23:59:60 GMT", /* leap second */
+  "20110623 12:3",
+  "20110623 1:3",
+  "20110623 1:30",
+  "20110623 12:12:3",
+  "20110623 01:12:3",
+  "20110623 01:99:30",
+  NULL
+};
+
+int test(char *URL)
+{
+  int i;
+
+  (void)URL; /* not used */
+
+  for(i=0; dates[i]; i++) {
+    printf("%d: %s => %ld\n", i, dates[i], (long)curl_getdate(dates[i], NULL));
+  }
+
+  return 0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib518.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib518.c
new file mode 100644
index 0000000..960fcfc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib518.c
@@ -0,0 +1,523 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_SYS_RESOURCE_H
+#include <sys/resource.h>
+#endif
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#include "warnless.h"
+#include "memdebug.h"
+
+#ifndef FD_SETSIZE
+#error "this test requires FD_SETSIZE"
+#endif
+
+#define SAFETY_MARGIN (16)
+#define NUM_OPEN      (FD_SETSIZE + 10)
+#define NUM_NEEDED    (NUM_OPEN + SAFETY_MARGIN)
+
+#if defined(WIN32) || defined(_WIN32) || defined(MSDOS)
+#define DEV_NULL "NUL"
+#else
+#define DEV_NULL "/dev/null"
+#endif
+
+#if defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT)
+
+static int *fd = NULL;
+static struct rlimit num_open;
+static char msgbuff[256];
+
+static void store_errmsg(const char *msg, int err)
+{
+  if(!err)
+    snprintf(msgbuff, sizeof(msgbuff), "%s", msg);
+  else
+    snprintf(msgbuff, sizeof(msgbuff), "%s, errno %d, %s", msg,
+             err, strerror(err));
+}
+
+static void close_file_descriptors(void)
+{
+  for(num_open.rlim_cur = 0;
+      num_open.rlim_cur < num_open.rlim_max;
+      num_open.rlim_cur++)
+    if(fd[num_open.rlim_cur] > 0)
+      close(fd[num_open.rlim_cur]);
+  free(fd);
+  fd = NULL;
+}
+
+static int fopen_works(void)
+{
+  FILE *fpa[3];
+  int i;
+  int ret = 1;
+
+  for(i = 0; i < 3; i++) {
+    fpa[i] = NULL;
+  }
+  for(i = 0; i < 3; i++) {
+    fpa[i] = fopen(DEV_NULL, FOPEN_READTEXT);
+    if(fpa[i] == NULL) {
+      store_errmsg("fopen failed", ERRNO);
+      fprintf(stderr, "%s\n", msgbuff);
+      ret = 0;
+      break;
+    }
+  }
+  for(i = 0; i < 3; i++) {
+    if(fpa[i] != NULL)
+      fclose(fpa[i]);
+  }
+  return ret;
+}
+
+static int rlimit(int keep_open)
+{
+  int nitems, i;
+  int *memchunk = NULL;
+  char *fmt;
+  struct rlimit rl;
+  char strbuff[256];
+  char strbuff1[81];
+  char strbuff2[81];
+  char fmt_u[] = "%u";
+  char fmt_lu[] = "%lu";
+#ifdef HAVE_LONGLONG
+  char fmt_llu[] = "%llu";
+
+  if(sizeof(rl.rlim_max) > sizeof(long))
+    fmt = fmt_llu;
+  else
+#endif
+    fmt = (sizeof(rl.rlim_max) < sizeof(long))?fmt_u:fmt_lu;
+
+  /* get initial open file limits */
+
+  if(getrlimit(RLIMIT_NOFILE, &rl) != 0) {
+    store_errmsg("getrlimit() failed", ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    return -1;
+  }
+
+  /* show initial open file limits */
+
+#ifdef RLIM_INFINITY
+  if(rl.rlim_cur == RLIM_INFINITY)
+    strcpy(strbuff, "INFINITY");
+  else
+#endif
+    snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_cur);
+  fprintf(stderr, "initial soft limit: %s\n", strbuff);
+
+#ifdef RLIM_INFINITY
+  if(rl.rlim_max == RLIM_INFINITY)
+    strcpy(strbuff, "INFINITY");
+  else
+#endif
+    snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_max);
+  fprintf(stderr, "initial hard limit: %s\n", strbuff);
+
+  /* show our constants */
+
+  fprintf(stderr, "test518 FD_SETSIZE: %d\n", FD_SETSIZE);
+  fprintf(stderr, "test518 NUM_OPEN  : %d\n", NUM_OPEN);
+  fprintf(stderr, "test518 NUM_NEEDED: %d\n", NUM_NEEDED);
+
+  /*
+   * if soft limit and hard limit are different we ask the
+   * system to raise soft limit all the way up to the hard
+   * limit. Due to some other system limit the soft limit
+   * might not be raised up to the hard limit. So from this
+   * point the resulting soft limit is our limit. Trying to
+   * open more than soft limit file descriptors will fail.
+   */
+
+  if(rl.rlim_cur != rl.rlim_max) {
+
+#ifdef OPEN_MAX
+    if((rl.rlim_cur > 0) &&
+       (rl.rlim_cur < OPEN_MAX)) {
+      fprintf(stderr, "raising soft limit up to OPEN_MAX\n");
+      rl.rlim_cur = OPEN_MAX;
+      if(setrlimit(RLIMIT_NOFILE, &rl) != 0) {
+        /* on failure don't abort just issue a warning */
+        store_errmsg("setrlimit() failed", ERRNO);
+        fprintf(stderr, "%s\n", msgbuff);
+        msgbuff[0] = '\0';
+      }
+    }
+#endif
+
+    fprintf(stderr, "raising soft limit up to hard limit\n");
+    rl.rlim_cur = rl.rlim_max;
+    if(setrlimit(RLIMIT_NOFILE, &rl) != 0) {
+      /* on failure don't abort just issue a warning */
+      store_errmsg("setrlimit() failed", ERRNO);
+      fprintf(stderr, "%s\n", msgbuff);
+      msgbuff[0] = '\0';
+    }
+
+    /* get current open file limits */
+
+    if(getrlimit(RLIMIT_NOFILE, &rl) != 0) {
+      store_errmsg("getrlimit() failed", ERRNO);
+      fprintf(stderr, "%s\n", msgbuff);
+      return -3;
+    }
+
+    /* show current open file limits */
+
+#ifdef RLIM_INFINITY
+    if(rl.rlim_cur == RLIM_INFINITY)
+      strcpy(strbuff, "INFINITY");
+    else
+#endif
+      snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_cur);
+    fprintf(stderr, "current soft limit: %s\n", strbuff);
+
+#ifdef RLIM_INFINITY
+    if(rl.rlim_max == RLIM_INFINITY)
+      strcpy(strbuff, "INFINITY");
+    else
+#endif
+      snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_max);
+    fprintf(stderr, "current hard limit: %s\n", strbuff);
+
+  } /* (rl.rlim_cur != rl.rlim_max) */
+
+  /*
+   * test 518 is all about testing libcurl functionality
+   * when more than FD_SETSIZE file descriptors are open.
+   * This means that if for any reason we are not able to
+   * open more than FD_SETSIZE file descriptors then test
+   * 518 should not be run.
+   */
+
+  /*
+   * verify that soft limit is higher than NUM_NEEDED,
+   * which is the number of file descriptors we would
+   * try to open plus SAFETY_MARGIN to not exhaust the
+   * file descriptor pool
+   */
+
+  num_open.rlim_cur = NUM_NEEDED;
+
+  if((rl.rlim_cur > 0) &&
+#ifdef RLIM_INFINITY
+     (rl.rlim_cur != RLIM_INFINITY) &&
+#endif
+     (rl.rlim_cur <= num_open.rlim_cur)) {
+    snprintf(strbuff2, sizeof(strbuff2), fmt, rl.rlim_cur);
+    snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_cur);
+    snprintf(strbuff, sizeof(strbuff), "fds needed %s > system limit %s",
+             strbuff1, strbuff2);
+    store_errmsg(strbuff, 0);
+    fprintf(stderr, "%s\n", msgbuff);
+    return -4;
+  }
+
+  /*
+   * reserve a chunk of memory before opening file descriptors to
+   * avoid a low memory condition once the file descriptors are
+   * open. System conditions that could make the test fail should
+   * be addressed in the precheck phase. This chunk of memory shall
+   * be always free()ed before exiting the rlimit() function so
+   * that it becomes available to the test.
+   */
+
+  for(nitems = i = 1; nitems <= i; i *= 2)
+    nitems = i;
+  if(nitems > 0x7fff)
+    nitems = 0x40000;
+  do {
+    num_open.rlim_max = sizeof(*memchunk) * (size_t)nitems;
+    snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+    fprintf(stderr, "allocating memchunk %s byte array\n", strbuff);
+    memchunk = malloc(sizeof(*memchunk) * (size_t)nitems);
+    if(!memchunk) {
+      fprintf(stderr, "memchunk, malloc() failed\n");
+      nitems /= 2;
+    }
+  } while(nitems && !memchunk);
+  if(!memchunk) {
+    store_errmsg("memchunk, malloc() failed", ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    return -5;
+  }
+
+  /* initialize it to fight lazy allocation */
+
+  fprintf(stderr, "initializing memchunk array\n");
+
+  for(i = 0; i < nitems; i++)
+    memchunk[i] = -1;
+
+  /* set the number of file descriptors we will try to open */
+
+  num_open.rlim_max = NUM_OPEN;
+
+  /* verify that we won't overflow size_t in malloc() */
+
+  if((size_t)(num_open.rlim_max) > ((size_t)-1) / sizeof(*fd)) {
+    snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_max);
+    snprintf(strbuff, sizeof(strbuff), "unable to allocate an array for %s "
+             "file descriptors, would overflow size_t", strbuff1);
+    store_errmsg(strbuff, 0);
+    fprintf(stderr, "%s\n", msgbuff);
+    free(memchunk);
+    return -6;
+  }
+
+  /* allocate array for file descriptors */
+
+  snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+  fprintf(stderr, "allocating array for %s file descriptors\n", strbuff);
+
+  fd = malloc(sizeof(*fd) * (size_t)(num_open.rlim_max));
+  if(!fd) {
+    store_errmsg("fd, malloc() failed", ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    free(memchunk);
+    return -7;
+  }
+
+  /* initialize it to fight lazy allocation */
+
+  fprintf(stderr, "initializing fd array\n");
+
+  for(num_open.rlim_cur = 0;
+      num_open.rlim_cur < num_open.rlim_max;
+      num_open.rlim_cur++)
+    fd[num_open.rlim_cur] = -1;
+
+  snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+  fprintf(stderr, "trying to open %s file descriptors\n", strbuff);
+
+  /* open a dummy descriptor */
+
+  fd[0] = open(DEV_NULL, O_RDONLY);
+  if(fd[0] < 0) {
+    snprintf(strbuff, sizeof(strbuff), "opening of %s failed", DEV_NULL);
+    store_errmsg(strbuff, ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    free(fd);
+    fd = NULL;
+    free(memchunk);
+    return -8;
+  }
+
+  /* create a bunch of file descriptors */
+
+  for(num_open.rlim_cur = 1;
+      num_open.rlim_cur < num_open.rlim_max;
+      num_open.rlim_cur++) {
+
+    fd[num_open.rlim_cur] = dup(fd[0]);
+
+    if(fd[num_open.rlim_cur] < 0) {
+
+      fd[num_open.rlim_cur] = -1;
+
+      snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_cur);
+      snprintf(strbuff, sizeof(strbuff), "dup() attempt %s failed", strbuff1);
+      fprintf(stderr, "%s\n", strbuff);
+
+      snprintf(strbuff1, sizeof(strbuff), fmt, num_open.rlim_cur);
+      snprintf(strbuff, sizeof(strbuff), "fds system limit seems close to %s",
+               strbuff1);
+      fprintf(stderr, "%s\n", strbuff);
+
+      num_open.rlim_max = NUM_NEEDED;
+
+      snprintf(strbuff2, sizeof(strbuff2), fmt, num_open.rlim_max);
+      snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_cur);
+      snprintf(strbuff, sizeof(strbuff), "fds needed %s > system limit %s",
+               strbuff2, strbuff1);
+      store_errmsg(strbuff, 0);
+      fprintf(stderr, "%s\n", msgbuff);
+
+      for(num_open.rlim_cur = 0;
+          fd[num_open.rlim_cur] >= 0;
+          num_open.rlim_cur++)
+        close(fd[num_open.rlim_cur]);
+      free(fd);
+      fd = NULL;
+      free(memchunk);
+      return -9;
+
+    }
+
+  }
+
+  snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+  fprintf(stderr, "%s file descriptors open\n", strbuff);
+
+#if !defined(HAVE_POLL_FINE)    && \
+    !defined(USE_WINSOCK)       && \
+    !defined(TPF)
+
+  /*
+   * when using select() instead of poll() we cannot test
+   * libcurl functionality with a socket number equal or
+   * greater than FD_SETSIZE. In any case, macro VERIFY_SOCK
+   * in lib/select.c enforces this check and protects libcurl
+   * from a possible crash. The effect of this protection
+   * is that test 518 will always fail, since the actual
+   * call to select() never takes place. We skip test 518
+   * with an indication that select limit would be exceeded.
+   */
+
+  num_open.rlim_cur = FD_SETSIZE - SAFETY_MARGIN;
+  if(num_open.rlim_max > num_open.rlim_cur) {
+    snprintf(strbuff, sizeof(strbuff), "select limit is FD_SETSIZE %d",
+             FD_SETSIZE);
+    store_errmsg(strbuff, 0);
+    fprintf(stderr, "%s\n", msgbuff);
+    close_file_descriptors();
+    free(memchunk);
+    return -10;
+  }
+
+  num_open.rlim_cur = FD_SETSIZE - SAFETY_MARGIN;
+  for(rl.rlim_cur = 0;
+      rl.rlim_cur < num_open.rlim_max;
+      rl.rlim_cur++) {
+    if((fd[rl.rlim_cur] > 0) &&
+       ((unsigned int)fd[rl.rlim_cur] > num_open.rlim_cur)) {
+      snprintf(strbuff, sizeof(strbuff), "select limit is FD_SETSIZE %d",
+               FD_SETSIZE);
+      store_errmsg(strbuff, 0);
+      fprintf(stderr, "%s\n", msgbuff);
+      close_file_descriptors();
+      free(memchunk);
+      return -11;
+    }
+  }
+
+#endif /* using a FD_SETSIZE bound select() */
+
+  /*
+   * Old or 'backwards compatible' implementations of stdio do not allow
+   * handling of streams with an underlying file descriptor number greater
+   * than 255, even when allowing high numbered file descriptors for sockets.
+   * At this point we have a big number of file descriptors which have been
+   * opened using dup(), so lets test the stdio implementation and discover
+   * if it is capable of fopen()ing some additional files.
+   */
+
+  if(!fopen_works()) {
+    snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_max);
+    snprintf(strbuff, sizeof(strbuff),
+             "fopen fails with %s fds open()",
+             strbuff1);
+    fprintf(stderr, "%s\n", msgbuff);
+    snprintf(strbuff, sizeof(strbuff),
+             "fopen fails with lots of fds open()");
+    store_errmsg(strbuff, 0);
+    close_file_descriptors();
+    free(memchunk);
+    return -12;
+  }
+
+  /* free the chunk of memory we were reserving so that it
+     becomes becomes available to the test */
+
+  free(memchunk);
+
+  /* close file descriptors unless instructed to keep them */
+
+  if(!keep_open) {
+    close_file_descriptors();
+  }
+
+  return 0;
+}
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(!strcmp(URL, "check")) {
+    /* used by the test script to ask if we can run this test or not */
+    if(rlimit(FALSE)) {
+      fprintf(stdout, "rlimit problem: %s\n", msgbuff);
+      return 1;
+    }
+    return 0; /* sure, run this! */
+  }
+
+  if(rlimit(TRUE)) {
+    /* failure */
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* run the test with the bunch of open file descriptors
+     and close them all once the test is over */
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    close_file_descriptors();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    close_file_descriptors();
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  close_file_descriptors();
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
+#else /* defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT) */
+
+int test(char *URL)
+{
+  (void)URL;
+  printf("system lacks necessary system function(s)");
+  return 1; /* skip test */
+}
+
+#endif /* defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT) */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib519.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib519.c
new file mode 100644
index 0000000..5c55aeb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib519.c
@@ -0,0 +1,63 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_USERPWD, "monster:underbed");
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* get first page */
+  res = curl_easy_perform(curl);
+
+  test_setopt(curl, CURLOPT_USERPWD, "anothermonster:inwardrobe");
+
+  /* get second page */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib520.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib520.c
new file mode 100644
index 0000000..72b0875
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib520.c
@@ -0,0 +1,55 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_FILETIME, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib521.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib521.c
new file mode 100644
index 0000000..b7efca0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib521.c
@@ -0,0 +1,57 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PORT, strtol(libtest_arg2, NULL, 10));
+  test_setopt(curl, CURLOPT_USERPWD, "xxx:yyy");
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib523.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib523.c
new file mode 100644
index 0000000..44aa2e2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib523.c
@@ -0,0 +1,58 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PORT, 19999L);
+  test_setopt(curl, CURLOPT_USERPWD, "xxx:yyy");
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib524.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib524.c
new file mode 100644
index 0000000..08fd34d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib524.c
@@ -0,0 +1,56 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib525.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib525.c
new file mode 100644
index 0000000..4bf259d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib525.c
@@ -0,0 +1,165 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  FILE *hd_src = NULL;
+  int hd;
+  int error;
+  struct_stat file_info;
+  CURLM *m = NULL;
+  int running;
+
+  start_test_timing();
+
+  if(!libtest_arg2) {
+#ifdef LIB529
+    /* test 529 */
+    fprintf(stderr, "Usage: lib529 [url] [uploadfile]\n");
+#else
+    /* test 525 */
+    fprintf(stderr, "Usage: lib525 [url] [uploadfile]\n");
+#endif
+    return TEST_ERR_USAGE;
+  }
+
+  hd_src = fopen(libtest_arg2, "rb");
+  if(NULL == hd_src) {
+    error = ERRNO;
+    fprintf(stderr, "fopen failed with error: %d (%s)\n",
+            error, strerror(error));
+    fprintf(stderr, "Error opening file: (%s)\n", libtest_arg2);
+    return TEST_ERR_FOPEN;
+  }
+
+  /* get the file size of the local file */
+  hd = fstat(fileno(hd_src), &file_info);
+  if(hd == -1) {
+    /* can't open file, bail out */
+    error = ERRNO;
+    fprintf(stderr, "fstat() failed with error: %d (%s)\n",
+            error, strerror(error));
+    fprintf(stderr, "ERROR: cannot open file (%s)\n", libtest_arg2);
+    fclose(hd_src);
+    return TEST_ERR_FSTAT;
+  }
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    fclose(hd_src);
+    return res;
+  }
+
+  easy_init(curl);
+
+  /* enable uploading */
+  easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* specify target */
+  easy_setopt(curl, CURLOPT_URL, URL);
+
+  /* go verbose */
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* use active FTP */
+  easy_setopt(curl, CURLOPT_FTPPORT, "-");
+
+  /* now specify which file to upload */
+  easy_setopt(curl, CURLOPT_READDATA, hd_src);
+
+  /* NOTE: if you want this code to work on Windows with libcurl as a DLL, you
+     MUST also provide a read callback with CURLOPT_READFUNCTION. Failing to
+     do so will give you a crash since a DLL may not use the variable's memory
+     when passed in to it from an app like this. */
+
+  /* Set the size of the file to upload (optional).  If you give a *_LARGE
+     option you MUST make sure that the type of the passed-in argument is a
+     curl_off_t. If you use CURLOPT_INFILESIZE (without _LARGE) you must
+     make sure that to pass in a type 'long' argument. */
+  easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)file_info.st_size);
+
+  multi_init(m);
+
+  multi_add_handle(m, curl);
+
+  for(;;) {
+    struct timeval interval;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+#ifdef LIB529
+  /* test 529 */
+  /* proper cleanup sequence - type PA */
+  curl_multi_remove_handle(m, curl);
+  curl_multi_cleanup(m);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+#else
+  /* test 525 */
+  /* proper cleanup sequence - type PB */
+  curl_multi_remove_handle(m, curl);
+  curl_easy_cleanup(curl);
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+#endif
+
+  /* close the local file */
+  fclose(hd_src);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib526.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib526.c
new file mode 100644
index 0000000..522cd74
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib526.c
@@ -0,0 +1,184 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/*
+ * This code sets up multiple easy handles that transfer a single file from
+ * the same URL, in a serial manner after each other. Due to the connection
+ * sharing within the multi handle all transfers are performed on the same
+ * persistent connection.
+ *
+ * This source code is used for lib526, lib527 and lib532 with only #ifdefs
+ * controlling the small differences.
+ *
+ * - lib526 closes all easy handles after
+ *   they all have transferred the file over the single connection
+ * - lib527 closes each easy handle after each single transfer.
+ * - lib532 uses only a single easy handle that is removed, reset and then
+ *   re-added for each transfer
+ *
+ * Test case 526, 527 and 532 use FTP, while test 528 uses the lib526 tool but
+ * with HTTP.
+ */
+
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define NUM_HANDLES 4
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl[NUM_HANDLES];
+  int running;
+  CURLM *m = NULL;
+  int current = 0;
+  int i;
+
+  for(i=0; i < NUM_HANDLES; i++)
+    curl[i] = NULL;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  /* get NUM_HANDLES easy handles */
+  for(i=0; i < NUM_HANDLES; i++) {
+    easy_init(curl[i]);
+    /* specify target */
+    easy_setopt(curl[i], CURLOPT_URL, URL);
+    /* go verbose */
+    easy_setopt(curl[i], CURLOPT_VERBOSE, 1L);
+  }
+
+  multi_init(m);
+
+  multi_add_handle(m, curl[current]);
+
+  fprintf(stderr, "Start at URL 0\n");
+
+  for(;;) {
+    struct timeval interval;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running) {
+#ifdef LIB527
+      /* NOTE: this code does not remove the handle from the multi handle
+         here, which would be the nice, sane and documented way of working.
+         This however tests that the API survives this abuse gracefully. */
+      curl_easy_cleanup(curl[current]);
+      curl[current] = NULL;
+#endif
+      if(++current < NUM_HANDLES) {
+        fprintf(stderr, "Advancing to URL %d\n", current);
+#ifdef LIB532
+        /* first remove the only handle we use */
+        curl_multi_remove_handle(m, curl[0]);
+
+        /* make us re-use the same handle all the time, and try resetting
+           the handle first too */
+        curl_easy_reset(curl[0]);
+        easy_setopt(curl[0], CURLOPT_URL, URL);
+        /* go verbose */
+        easy_setopt(curl[0], CURLOPT_VERBOSE, 1L);
+
+        /* re-add it */
+        multi_add_handle(m, curl[0]);
+#else
+        multi_add_handle(m, curl[current]);
+#endif
+      }
+      else {
+        break; /* done */
+      }
+    }
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+#if defined(LIB526)
+
+  /* test 526 and 528 */
+  /* proper cleanup sequence - type PB */
+
+  for(i=0; i < NUM_HANDLES; i++) {
+    curl_multi_remove_handle(m, curl[i]);
+    curl_easy_cleanup(curl[i]);
+  }
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+#elif defined(LIB527)
+
+  /* test 527 */
+
+  /* Upon non-failure test flow the easy's have already been cleanup'ed. In
+     case there is a failure we arrive here with easy's that have not been
+     cleanup'ed yet, in this case we have to cleanup them or otherwise these
+     will be leaked, let's use undocumented cleanup sequence - type UB */
+
+  if(res)
+    for(i=0; i < NUM_HANDLES; i++)
+      curl_easy_cleanup(curl[i]);
+
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+#elif defined(LIB532)
+
+  /* test 532 */
+  /* undocumented cleanup sequence - type UB */
+
+  for(i=0; i < NUM_HANDLES; i++)
+    curl_easy_cleanup(curl[i]);
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+#endif
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib530.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib530.c
new file mode 100644
index 0000000..82bfab3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib530.c
@@ -0,0 +1,122 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define NUM_HANDLES 4
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl[NUM_HANDLES];
+  int running;
+  CURLM *m = NULL;
+  int i;
+  char target_url[256];
+  int handles_added = 0;
+
+  for(i=0; i < NUM_HANDLES; i++)
+    curl[i] = NULL;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(m);
+
+  /* get NUM_HANDLES easy handles */
+  for(i=0; i < NUM_HANDLES; i++) {
+    /* get an easy handle */
+    easy_init(curl[i]);
+    /* specify target */
+    snprintf(target_url, sizeof(target_url), "%s%04i", URL, i + 1);
+    target_url[sizeof(target_url) - 1] = '\0';
+    easy_setopt(curl[i], CURLOPT_URL, target_url);
+    /* go verbose */
+    easy_setopt(curl[i], CURLOPT_VERBOSE, 1L);
+    /* include headers */
+    easy_setopt(curl[i], CURLOPT_HEADER, 1L);
+  }
+
+  /* Add the first handle to multi. We do this to let libcurl detect
+     that the server can do pipelining. The rest of the handles will be
+     added later. */
+  multi_add_handle(m, curl[handles_added++]);
+
+  multi_setopt(m, CURLMOPT_PIPELINING, 1L);
+
+  fprintf(stderr, "Start at URL 0\n");
+
+  for(;;) {
+    struct timeval interval;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running) {
+      if(handles_added >= NUM_HANDLES)
+        break; /* done */
+
+      /* Add the rest of the handles now that the first handle has completed
+         its request. */
+      while(handles_added < NUM_HANDLES)
+        multi_add_handle(m, curl[handles_added++]);
+    }
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  for(i=0; i < NUM_HANDLES; i++) {
+    curl_multi_remove_handle(m, curl[i]);
+    curl_easy_cleanup(curl[i]);
+  }
+
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib533.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib533.c
new file mode 100644
index 0000000..706b269
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib533.c
@@ -0,0 +1,112 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* used for test case 533, 534 and 535 */
+
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  int running;
+  CURLM *m = NULL;
+  int current=0;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+  easy_setopt(curl, CURLOPT_FAILONERROR, 1L);
+
+  multi_init(m);
+
+  multi_add_handle(m, curl);
+
+  fprintf(stderr, "Start at URL 0\n");
+
+  for(;;) {
+    struct timeval interval;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running) {
+      if(!current++) {
+        fprintf(stderr, "Advancing to URL 1\n");
+        /* remove the handle we use */
+        curl_multi_remove_handle(m, curl);
+
+        /* make us re-use the same handle all the time, and try resetting
+           the handle first too */
+        curl_easy_reset(curl);
+        easy_setopt(curl, CURLOPT_URL, libtest_arg2);
+        easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+        easy_setopt(curl, CURLOPT_FAILONERROR, 1L);
+
+        /* re-add it */
+        multi_add_handle(m, curl);
+      }
+      else
+        break; /* done */
+    }
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UB */
+
+  curl_easy_cleanup(curl);
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib536.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib536.c
new file mode 100644
index 0000000..f3ba573
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib536.c
@@ -0,0 +1,142 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+static int perform(CURLM *multi)
+{
+  int handles;
+  fd_set fdread, fdwrite, fdexcep;
+  int res = 0;
+
+  for(;;) {
+    struct timeval interval;
+    int maxfd = -99;
+
+    interval.tv_sec = 0;
+    interval.tv_usec = 100000L; /* 100 ms */
+
+    res_multi_perform(multi, &handles);
+    if(res)
+      return res;
+
+    res_test_timedout();
+    if(res)
+      return res;
+
+    if(!handles)
+      break; /* done */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    res_multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
+    if(res)
+      return res;
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    res_select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &interval);
+    if(res)
+      return res;
+
+    res_test_timedout();
+    if(res)
+      return res;
+  }
+
+  return 0; /* success */
+}
+
+int test(char *URL)
+{
+  CURLM *multi = NULL;
+  CURL *easy = NULL;
+  int res = 0;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(multi);
+
+  easy_init(easy);
+
+  multi_setopt(multi, CURLMOPT_PIPELINING, 1L);
+
+  easy_setopt(easy, CURLOPT_WRITEFUNCTION, fwrite);
+  easy_setopt(easy, CURLOPT_FAILONERROR, 1L);
+  easy_setopt(easy, CURLOPT_URL, URL);
+
+  res_multi_add_handle(multi, easy);
+  if(res) {
+    printf("curl_multi_add_handle() 1 failed\n");
+    goto test_cleanup;
+  }
+
+  res = perform(multi);
+  if(res) {
+    printf("retrieve 1 failed\n");
+    goto test_cleanup;
+  }
+
+  curl_multi_remove_handle(multi, easy);
+
+  curl_easy_reset(easy);
+
+  easy_setopt(easy, CURLOPT_FAILONERROR, 1L);
+  easy_setopt(easy, CURLOPT_URL, libtest_arg2);
+
+  res_multi_add_handle(multi, easy);
+  if(res) {
+    printf("curl_multi_add_handle() 2 failed\n");
+    goto test_cleanup;
+  }
+
+  res = perform(multi);
+  if(res) {
+    printf("retrieve 2 failed\n");
+    goto test_cleanup;
+  }
+
+  curl_multi_remove_handle(multi, easy);
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UB */
+
+  curl_easy_cleanup(easy);
+  curl_multi_cleanup(multi);
+  curl_global_cleanup();
+
+  printf("Finished!\n");
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib537.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib537.c
new file mode 100644
index 0000000..cfa1179
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib537.c
@@ -0,0 +1,525 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_SYS_RESOURCE_H
+#include <sys/resource.h>
+#endif
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#include "warnless.h"
+#include "memdebug.h"
+
+#if !defined(HAVE_POLL_FINE)    && \
+    !defined(USE_WINSOCK)       && \
+    !defined(TPF)               && \
+    !defined(FD_SETSIZE)
+#error "this test requires FD_SETSIZE"
+#endif
+
+#define SAFETY_MARGIN (11)
+
+#if defined(WIN32) || defined(_WIN32) || defined(MSDOS)
+#define DEV_NULL "NUL"
+#else
+#define DEV_NULL "/dev/null"
+#endif
+
+#if defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT)
+
+static int *fd = NULL;
+static struct rlimit num_open;
+static char msgbuff[256];
+
+static void store_errmsg(const char *msg, int err)
+{
+  if(!err)
+    snprintf(msgbuff, sizeof(msgbuff), "%s", msg);
+  else
+    snprintf(msgbuff, sizeof(msgbuff), "%s, errno %d, %s", msg, err,
+             strerror(err));
+}
+
+static void close_file_descriptors(void)
+{
+  for(num_open.rlim_cur = 0;
+      num_open.rlim_cur < num_open.rlim_max;
+      num_open.rlim_cur++)
+    if(fd[num_open.rlim_cur] > 0)
+      close(fd[num_open.rlim_cur]);
+  free(fd);
+  fd = NULL;
+}
+
+static int fopen_works(void)
+{
+  FILE *fpa[3];
+  int i;
+  int ret = 1;
+
+  for(i = 0; i < 3; i++) {
+    fpa[i] = NULL;
+  }
+  for(i = 0; i < 3; i++) {
+    fpa[i] = fopen(DEV_NULL, FOPEN_READTEXT);
+    if(fpa[i] == NULL) {
+      store_errmsg("fopen failed", ERRNO);
+      fprintf(stderr, "%s\n", msgbuff);
+      ret = 0;
+      break;
+    }
+  }
+  for(i = 0; i < 3; i++) {
+    if(fpa[i] != NULL)
+      fclose(fpa[i]);
+  }
+  return ret;
+}
+
+static int rlimit(int keep_open)
+{
+  int *tmpfd;
+  rlim_t nitems, i;
+  int *memchunk = NULL;
+  char *fmt;
+  struct rlimit rl;
+  char strbuff[256];
+  char strbuff1[81];
+  char fmt_u[] = "%u";
+  char fmt_lu[] = "%lu";
+#ifdef HAVE_LONGLONG
+  char fmt_llu[] = "%llu";
+
+  if(sizeof(rl.rlim_max) > sizeof(long))
+    fmt = fmt_llu;
+  else
+#endif
+    fmt = (sizeof(rl.rlim_max) < sizeof(long))?fmt_u:fmt_lu;
+
+  /* get initial open file limits */
+
+  if(getrlimit(RLIMIT_NOFILE, &rl) != 0) {
+    store_errmsg("getrlimit() failed", ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    return -1;
+  }
+
+  /* show initial open file limits */
+
+#ifdef RLIM_INFINITY
+  if(rl.rlim_cur == RLIM_INFINITY)
+    strcpy(strbuff, "INFINITY");
+  else
+#endif
+    snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_cur);
+  fprintf(stderr, "initial soft limit: %s\n", strbuff);
+
+#ifdef RLIM_INFINITY
+  if(rl.rlim_max == RLIM_INFINITY)
+    strcpy(strbuff, "INFINITY");
+  else
+#endif
+    snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_max);
+  fprintf(stderr, "initial hard limit: %s\n", strbuff);
+
+  /*
+   * if soft limit and hard limit are different we ask the
+   * system to raise soft limit all the way up to the hard
+   * limit. Due to some other system limit the soft limit
+   * might not be raised up to the hard limit. So from this
+   * point the resulting soft limit is our limit. Trying to
+   * open more than soft limit file descriptors will fail.
+   */
+
+  if(rl.rlim_cur != rl.rlim_max) {
+
+#ifdef OPEN_MAX
+    if((rl.rlim_cur > 0) &&
+        (rl.rlim_cur < OPEN_MAX)) {
+      fprintf(stderr, "raising soft limit up to OPEN_MAX\n");
+      rl.rlim_cur = OPEN_MAX;
+      if(setrlimit(RLIMIT_NOFILE, &rl) != 0) {
+        /* on failure don't abort just issue a warning */
+        store_errmsg("setrlimit() failed", ERRNO);
+        fprintf(stderr, "%s\n", msgbuff);
+        msgbuff[0] = '\0';
+      }
+    }
+#endif
+
+    fprintf(stderr, "raising soft limit up to hard limit\n");
+    rl.rlim_cur = rl.rlim_max;
+    if(setrlimit(RLIMIT_NOFILE, &rl) != 0) {
+      /* on failure don't abort just issue a warning */
+      store_errmsg("setrlimit() failed", ERRNO);
+      fprintf(stderr, "%s\n", msgbuff);
+      msgbuff[0] = '\0';
+    }
+
+    /* get current open file limits */
+
+    if(getrlimit(RLIMIT_NOFILE, &rl) != 0) {
+      store_errmsg("getrlimit() failed", ERRNO);
+      fprintf(stderr, "%s\n", msgbuff);
+      return -3;
+    }
+
+    /* show current open file limits */
+
+#ifdef RLIM_INFINITY
+    if(rl.rlim_cur == RLIM_INFINITY)
+      strcpy(strbuff, "INFINITY");
+    else
+#endif
+      snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_cur);
+    fprintf(stderr, "current soft limit: %s\n", strbuff);
+
+#ifdef RLIM_INFINITY
+    if(rl.rlim_max == RLIM_INFINITY)
+      strcpy(strbuff, "INFINITY");
+    else
+#endif
+      snprintf(strbuff, sizeof(strbuff), fmt, rl.rlim_max);
+    fprintf(stderr, "current hard limit: %s\n", strbuff);
+
+  } /* (rl.rlim_cur != rl.rlim_max) */
+
+  /*
+   * test 537 is all about testing libcurl functionality
+   * when the system has nearly exhausted the number of
+   * available file descriptors. Test 537 will try to run
+   * with a very small number of file descriptors available.
+   * This implies that any file descriptor which is open
+   * when the test runs will have a number in the high range
+   * of whatever the system supports.
+   */
+
+  /*
+   * reserve a chunk of memory before opening file descriptors to
+   * avoid a low memory condition once the file descriptors are
+   * open. System conditions that could make the test fail should
+   * be addressed in the precheck phase. This chunk of memory shall
+   * be always free()ed before exiting the rlimit() function so
+   * that it becomes available to the test.
+   */
+
+  for(nitems = i = 1; nitems <= i; i *= 2)
+    nitems = i;
+  if(nitems > 0x7fff)
+    nitems = 0x40000;
+  do {
+    num_open.rlim_max = sizeof(*memchunk) * nitems;
+    snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+    fprintf(stderr, "allocating memchunk %s byte array\n", strbuff);
+    memchunk = malloc(sizeof(*memchunk) * (size_t)nitems);
+    if(!memchunk) {
+      fprintf(stderr, "memchunk, malloc() failed\n");
+      nitems /= 2;
+    }
+  } while(nitems && !memchunk);
+  if(!memchunk) {
+    store_errmsg("memchunk, malloc() failed", ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    return -4;
+  }
+
+  /* initialize it to fight lazy allocation */
+
+  fprintf(stderr, "initializing memchunk array\n");
+
+  for(i = 0; i < nitems; i++)
+    memchunk[i] = -1;
+
+  /* set the number of file descriptors we will try to open */
+
+#ifdef RLIM_INFINITY
+  if((rl.rlim_cur > 0) && (rl.rlim_cur != RLIM_INFINITY)) {
+#else
+  if(rl.rlim_cur > 0) {
+#endif
+    /* soft limit minus SAFETY_MARGIN */
+    num_open.rlim_max = rl.rlim_cur - SAFETY_MARGIN;
+  }
+  else {
+    /* a huge number of file descriptors */
+    for(nitems = i = 1; nitems <= i; i *= 2)
+      nitems = i;
+    if(nitems > 0x7fff)
+      nitems = 0x40000;
+    num_open.rlim_max = nitems;
+  }
+
+  /* verify that we won't overflow size_t in malloc() */
+
+  if((size_t)(num_open.rlim_max) > ((size_t)-1) / sizeof(*fd)) {
+    snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_max);
+    snprintf(strbuff, sizeof(strbuff), "unable to allocate an array for %s "
+             "file descriptors, would overflow size_t", strbuff1);
+    store_errmsg(strbuff, 0);
+    fprintf(stderr, "%s\n", msgbuff);
+    free(memchunk);
+    return -5;
+  }
+
+  /* allocate array for file descriptors */
+
+  do {
+    snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+    fprintf(stderr, "allocating array for %s file descriptors\n", strbuff);
+    fd = malloc(sizeof(*fd) * (size_t)(num_open.rlim_max));
+    if(!fd) {
+      fprintf(stderr, "fd, malloc() failed\n");
+      num_open.rlim_max /= 2;
+    }
+  } while(num_open.rlim_max && !fd);
+  if(!fd) {
+    store_errmsg("fd, malloc() failed", ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    free(memchunk);
+    return -6;
+  }
+
+  /* initialize it to fight lazy allocation */
+
+  fprintf(stderr, "initializing fd array\n");
+
+  for(num_open.rlim_cur = 0;
+      num_open.rlim_cur < num_open.rlim_max;
+      num_open.rlim_cur++)
+    fd[num_open.rlim_cur] = -1;
+
+  snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+  fprintf(stderr, "trying to open %s file descriptors\n", strbuff);
+
+  /* open a dummy descriptor */
+
+  fd[0] = open(DEV_NULL, O_RDONLY);
+  if(fd[0] < 0) {
+    snprintf(strbuff, sizeof(strbuff), "opening of %s failed", DEV_NULL);
+    store_errmsg(strbuff, ERRNO);
+    fprintf(stderr, "%s\n", msgbuff);
+    free(fd);
+    fd = NULL;
+    free(memchunk);
+    return -7;
+  }
+
+  /* create a bunch of file descriptors */
+
+  for(num_open.rlim_cur = 1;
+      num_open.rlim_cur < num_open.rlim_max;
+      num_open.rlim_cur++) {
+
+    fd[num_open.rlim_cur] = dup(fd[0]);
+
+    if(fd[num_open.rlim_cur] < 0) {
+
+      fd[num_open.rlim_cur] = -1;
+
+      snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_cur);
+      snprintf(strbuff, sizeof(strbuff), "dup() attempt %s failed", strbuff1);
+      fprintf(stderr, "%s\n", strbuff);
+
+      snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_cur);
+      snprintf(strbuff, sizeof(strbuff), "fds system limit seems close to %s",
+               strbuff1);
+      fprintf(stderr, "%s\n", strbuff);
+
+      num_open.rlim_max = num_open.rlim_cur - SAFETY_MARGIN;
+
+      num_open.rlim_cur -= num_open.rlim_max;
+      snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_cur);
+      snprintf(strbuff, sizeof(strbuff), "closing %s file descriptors",
+               strbuff1);
+      fprintf(stderr, "%s\n", strbuff);
+
+      for(num_open.rlim_cur = num_open.rlim_max;
+          fd[num_open.rlim_cur] >= 0;
+          num_open.rlim_cur++) {
+        close(fd[num_open.rlim_cur]);
+        fd[num_open.rlim_cur] = -1;
+      }
+
+      snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+      fprintf(stderr, "shrinking array for %s file descriptors\n", strbuff);
+
+      /* we don't care if we can't shrink it */
+
+      tmpfd = realloc(fd, sizeof(*fd) * (size_t)(num_open.rlim_max));
+      if(tmpfd) {
+        fd = tmpfd;
+        tmpfd = NULL;
+      }
+
+      break;
+
+    }
+
+  }
+
+  snprintf(strbuff, sizeof(strbuff), fmt, num_open.rlim_max);
+  fprintf(stderr, "%s file descriptors open\n", strbuff);
+
+#if !defined(HAVE_POLL_FINE)    && \
+    !defined(USE_WINSOCK)       && \
+    !defined(TPF)
+
+  /*
+   * when using select() instead of poll() we cannot test
+   * libcurl functionality with a socket number equal or
+   * greater than FD_SETSIZE. In any case, macro VERIFY_SOCK
+   * in lib/select.c enforces this check and protects libcurl
+   * from a possible crash. The effect of this protection
+   * is that test 537 will always fail, since the actual
+   * call to select() never takes place. We skip test 537
+   * with an indication that select limit would be exceeded.
+   */
+
+  num_open.rlim_cur = FD_SETSIZE - SAFETY_MARGIN;
+  if(num_open.rlim_max > num_open.rlim_cur) {
+    snprintf(strbuff, sizeof(strbuff), "select limit is FD_SETSIZE %d",
+             FD_SETSIZE);
+    store_errmsg(strbuff, 0);
+    fprintf(stderr, "%s\n", msgbuff);
+    close_file_descriptors();
+    free(memchunk);
+    return -8;
+  }
+
+  num_open.rlim_cur = FD_SETSIZE - SAFETY_MARGIN;
+  for(rl.rlim_cur = 0;
+      rl.rlim_cur < num_open.rlim_max;
+      rl.rlim_cur++) {
+    if((fd[rl.rlim_cur] > 0) &&
+       ((unsigned int)fd[rl.rlim_cur] > num_open.rlim_cur)) {
+      snprintf(strbuff, sizeof(strbuff), "select limit is FD_SETSIZE %d",
+               FD_SETSIZE);
+      store_errmsg(strbuff, 0);
+      fprintf(stderr, "%s\n", msgbuff);
+      close_file_descriptors();
+      free(memchunk);
+      return -9;
+    }
+  }
+
+#endif /* using a FD_SETSIZE bound select() */
+
+  /*
+   * Old or 'backwards compatible' implementations of stdio do not allow
+   * handling of streams with an underlying file descriptor number greater
+   * than 255, even when allowing high numbered file descriptors for sockets.
+   * At this point we have a big number of file descriptors which have been
+   * opened using dup(), so lets test the stdio implementation and discover
+   * if it is capable of fopen()ing some additional files.
+   */
+
+  if(!fopen_works()) {
+    snprintf(strbuff1, sizeof(strbuff1), fmt, num_open.rlim_max);
+    snprintf(strbuff, sizeof(strbuff), "fopen fails with %s fds open",
+            strbuff1);
+    fprintf(stderr, "%s\n", msgbuff);
+    snprintf(strbuff, sizeof(strbuff), "fopen fails with lots of fds open");
+    store_errmsg(strbuff, 0);
+    close_file_descriptors();
+    free(memchunk);
+    return -10;
+  }
+
+  /* free the chunk of memory we were reserving so that it
+     becomes becomes available to the test */
+
+  free(memchunk);
+
+  /* close file descriptors unless instructed to keep them */
+
+  if(!keep_open) {
+    close_file_descriptors();
+  }
+
+  return 0;
+}
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(!strcmp(URL, "check")) {
+    /* used by the test script to ask if we can run this test or not */
+    if(rlimit(FALSE)) {
+      fprintf(stdout, "rlimit problem: %s\n", msgbuff);
+      return 1;
+    }
+    return 0; /* sure, run this! */
+  }
+
+  if(rlimit(TRUE)) {
+    /* failure */
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* run the test with the bunch of open file descriptors
+     and close them all once the test is over */
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    close_file_descriptors();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    close_file_descriptors();
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  close_file_descriptors();
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
+#else /* defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT) */
+
+int test(char *URL)
+{
+  (void)URL;
+  printf("system lacks necessary system function(s)");
+  return 1; /* skip test */
+}
+
+#endif /* defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT) */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib539.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib539.c
new file mode 100644
index 0000000..7c03dd2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib539.c
@@ -0,0 +1,91 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+   CURLcode res;
+   CURL *curl;
+   char *newURL = NULL;
+   struct curl_slist *slist = NULL;
+
+   if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+     fprintf(stderr, "curl_global_init() failed\n");
+     return TEST_ERR_MAJOR_BAD;
+   }
+
+   curl = curl_easy_init();
+   if(!curl) {
+     fprintf(stderr, "curl_easy_init() failed\n");
+     curl_global_cleanup();
+     return TEST_ERR_MAJOR_BAD;
+   }
+
+   /*
+    * Begin with curl set to use a single CWD to the URL's directory.
+    */
+   test_setopt(curl, CURLOPT_URL, URL);
+   test_setopt(curl, CURLOPT_VERBOSE, 1L);
+   test_setopt(curl, CURLOPT_FTP_FILEMETHOD, (long) CURLFTPMETHOD_SINGLECWD);
+
+   res = curl_easy_perform(curl);
+
+   /*
+    * Change the FTP_FILEMETHOD option to use full paths rather than a CWD
+    * command.  Alter the URL's path a bit, appending a "./".  Use an innocuous
+    * QUOTE command, after which curl will CWD to ftp_conn->entrypath and then
+    * (on the next call to ftp_statemach_act) find a non-zero ftpconn->dirdepth
+    * even though no directories are stored in the ftpconn->dirs array (after a
+    * call to freedirs).
+    */
+   newURL = aprintf("%s./", URL);
+   if(newURL == NULL) {
+     curl_easy_cleanup(curl);
+     curl_global_cleanup();
+     return TEST_ERR_MAJOR_BAD;
+   }
+
+   slist = curl_slist_append(NULL, "SYST");
+   if(slist == NULL) {
+     free(newURL);
+     curl_easy_cleanup(curl);
+     curl_global_cleanup();
+     return TEST_ERR_MAJOR_BAD;
+   }
+
+   test_setopt(curl, CURLOPT_URL, newURL);
+   test_setopt(curl, CURLOPT_FTP_FILEMETHOD, (long) CURLFTPMETHOD_NOCWD);
+   test_setopt(curl, CURLOPT_QUOTE, slist);
+
+   res = curl_easy_perform(curl);
+
+test_cleanup:
+
+   curl_slist_free_all(slist);
+   free(newURL);
+   curl_easy_cleanup(curl);
+   curl_global_cleanup();
+
+   return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib540.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib540.c
new file mode 100644
index 0000000..ac86209
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib540.c
@@ -0,0 +1,248 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* This is the 'proxyauth.c' test app posted by Shmulik Regev on the libcurl
+ * mailing list on 10 Jul 2007, converted to a test case.
+ *
+ * argv1 = URL
+ * argv2 = proxy
+ * argv3 = proxyuser:password
+ * argv4 = host name to use for the custom Host: header
+ */
+
+#include "test.h"
+
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define PROXY libtest_arg2
+#define PROXYUSERPWD libtest_arg3
+#define HOST test_argv[4]
+
+#define NUM_HANDLES 2
+
+static CURL *eh[NUM_HANDLES];
+
+static int init(int num, CURLM *cm, const char *url, const char *userpwd,
+                struct curl_slist *headers)
+{
+  int res = 0;
+
+  res_easy_init(eh[num]);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_URL, url);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_PROXY, PROXY);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_PROXYUSERPWD, userpwd);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_PROXYAUTH, (long)CURLAUTH_ANY);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_VERBOSE, 1L);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_HEADER, 1L);
+  if(res)
+    goto init_failed;
+
+  res_easy_setopt(eh[num], CURLOPT_HTTPHEADER, headers); /* custom Host: */
+  if(res)
+    goto init_failed;
+
+  res_multi_add_handle(cm, eh[num]);
+  if(res)
+    goto init_failed;
+
+  return 0; /* success */
+
+init_failed:
+
+  curl_easy_cleanup(eh[num]);
+  eh[num] = NULL;
+
+  return res; /* failure */
+}
+
+static int loop(int num, CURLM *cm, const char *url, const char *userpwd,
+                struct curl_slist *headers)
+{
+  CURLMsg *msg;
+  long L;
+  int Q, U = -1;
+  fd_set R, W, E;
+  struct timeval T;
+  int res = 0;
+
+  res = init(num, cm, url, userpwd, headers);
+  if(res)
+    return res;
+
+  while(U) {
+
+    int M = -99;
+
+    res_multi_perform(cm, &U);
+    if(res)
+      return res;
+
+    res_test_timedout();
+    if(res)
+      return res;
+
+    if(U) {
+      FD_ZERO(&R);
+      FD_ZERO(&W);
+      FD_ZERO(&E);
+
+      res_multi_fdset(cm, &R, &W, &E, &M);
+      if(res)
+        return res;
+
+      /* At this point, M is guaranteed to be greater or equal than -1. */
+
+      res_multi_timeout(cm, &L);
+      if(res)
+        return res;
+
+      /* At this point, L is guaranteed to be greater or equal than -1. */
+
+      if(L != -1) {
+        int itimeout = (L > (long)INT_MAX) ? INT_MAX : (int)L;
+        T.tv_sec = itimeout/1000;
+        T.tv_usec = (itimeout%1000)*1000;
+      }
+      else {
+        T.tv_sec = 5;
+        T.tv_usec = 0;
+      }
+
+      res_select_test(M+1, &R, &W, &E, &T);
+      if(res)
+        return res;
+    }
+
+    while((msg = curl_multi_info_read(cm, &Q)) != NULL) {
+      if(msg->msg == CURLMSG_DONE) {
+        int i;
+        CURL *e = msg->easy_handle;
+        fprintf(stderr, "R: %d - %s\n", (int)msg->data.result,
+                curl_easy_strerror(msg->data.result));
+        curl_multi_remove_handle(cm, e);
+        curl_easy_cleanup(e);
+        for(i=0; i < NUM_HANDLES; i++) {
+          if(eh[i] == e) {
+            eh[i] = NULL;
+            break;
+          }
+        }
+      }
+      else
+        fprintf(stderr, "E: CURLMsg (%d)\n", (int)msg->msg);
+    }
+
+    res_test_timedout();
+    if(res)
+      return res;
+  }
+
+  return 0; /* success */
+}
+
+int test(char *URL)
+{
+  CURLM *cm = NULL;
+  struct curl_slist *headers = NULL;
+  char buffer[246]; /* naively fixed-size */
+  int res = 0;
+  int i;
+
+  for(i=0; i < NUM_HANDLES; i++)
+    eh[i] = NULL;
+
+  start_test_timing();
+
+  if(test_argc < 4)
+    return 99;
+
+  snprintf(buffer, sizeof(buffer), "Host: %s", HOST);
+
+  /* now add a custom Host: header */
+  headers = curl_slist_append(headers, buffer);
+  if(!headers) {
+    fprintf(stderr, "curl_slist_append() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    curl_slist_free_all(headers);
+    return res;
+  }
+
+  res_multi_init(cm);
+  if(res) {
+    curl_global_cleanup();
+    curl_slist_free_all(headers);
+    return res;
+  }
+
+  res = loop(0, cm, URL, PROXYUSERPWD, headers);
+  if(res)
+    goto test_cleanup;
+
+  fprintf(stderr, "lib540: now we do the request again\n");
+
+  res = loop(1, cm, URL, PROXYUSERPWD, headers);
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  for(i=0; i < NUM_HANDLES; i++) {
+    curl_multi_remove_handle(cm, eh[i]);
+    curl_easy_cleanup(eh[i]);
+  }
+
+  curl_multi_cleanup(cm);
+  curl_global_cleanup();
+
+  curl_slist_free_all(headers);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib541.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib541.c
new file mode 100644
index 0000000..3e9cb3c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib541.c
@@ -0,0 +1,118 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#include "memdebug.h"
+
+/*
+ * Two FTP uploads, the second with no content sent.
+ */
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = CURLE_OK;
+  FILE *hd_src;
+  int hd;
+  struct_stat file_info;
+  int error;
+
+  if(!libtest_arg2) {
+    fprintf(stderr, "Usage: <url> <file-to-upload>\n");
+    return TEST_ERR_USAGE;
+  }
+
+  hd_src = fopen(libtest_arg2, "rb");
+  if(NULL == hd_src) {
+    error = ERRNO;
+    fprintf(stderr, "fopen failed with error: %d %s\n",
+            error, strerror(error));
+    fprintf(stderr, "Error opening file: %s\n", libtest_arg2);
+    return -2; /* if this happens things are major weird */
+  }
+
+  /* get the file size of the local file */
+  hd = fstat(fileno(hd_src), &file_info);
+  if(hd == -1) {
+    /* can't open file, bail out */
+    error = ERRNO;
+    fprintf(stderr, "fstat() failed with error: %d %s\n",
+            error, strerror(error));
+    fprintf(stderr, "ERROR: cannot open file %s\n", libtest_arg2);
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(! file_info.st_size) {
+    fprintf(stderr, "ERROR: file %s has zero size!\n", libtest_arg2);
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* get a curl handle */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    fclose(hd_src);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* enable uploading */
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* enable verbose */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* specify target */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* now specify which file to upload */
+  test_setopt(curl, CURLOPT_READDATA, hd_src);
+
+  /* Now run off and do what you've been told! */
+  res = curl_easy_perform(curl);
+
+  /* and now upload the exact same again, but without rewinding so it already
+     is at end of file */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* close the local file */
+  fclose(hd_src);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib542.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib542.c
new file mode 100644
index 0000000..4016874
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib542.c
@@ -0,0 +1,73 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#include "memdebug.h"
+
+/*
+ * FTP get with NOBODY but no HEADER
+ */
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* get a curl handle */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* enable verbose */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* enable NOBODY */
+  test_setopt(curl, CURLOPT_NOBODY, 1L);
+
+  /* disable HEADER */
+  test_setopt(curl, CURLOPT_HEADER, 0L);
+
+  /* specify target */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now run off and do what you've been told! */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib543.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib543.c
new file mode 100644
index 0000000..6d2532d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib543.c
@@ -0,0 +1,58 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* Based on Alex Fishman's bug report on September 30, 2007 */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  unsigned char a[] = {0x9c, 0x26, 0x4b, 0x3d, 0x49, 0x4, 0xa1, 0x1,
+                       0xe0, 0xd8, 0x7c,  0x20, 0xb7, 0xef, 0x53, 0x29, 0xfa,
+                       0x1d, 0x57, 0xe1};
+
+  CURL *easy;
+  int asize;
+  char *s;
+  (void)URL;
+
+  easy = curl_easy_init();
+  if(!easy) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  asize = (int)sizeof(a);
+
+  s = curl_easy_escape(easy, (char *)a, asize);
+
+  if(s)
+    printf("%s\n", s);
+
+  if(s)
+    curl_free(s);
+
+  curl_easy_cleanup(easy);
+
+  return 0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib544.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib544.c
new file mode 100644
index 0000000..28eacda
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib544.c
@@ -0,0 +1,92 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static char teststring[] =
+#ifdef CURL_DOES_CONVERSIONS
+  /* ASCII representation with escape sequences for non-ASCII platforms */
+  "\x54\x68\x69\x73\x00\x20\x69\x73\x20\x74\x65\x73\x74\x20\x62\x69\x6e\x61"
+  "\x72\x79\x20\x64\x61\x74\x61\x20\x77\x69\x74\x68\x20\x61\x6e\x20\x65\x6d"
+  "\x62\x65\x64\x64\x65\x64\x20\x4e\x55\x4c\x20\x62\x79\x74\x65\x0a";
+#else
+{   'T', 'h', 'i', 's', '\0', ' ', 'i', 's', ' ', 't', 'e', 's', 't', ' ',
+    'b', 'i', 'n', 'a', 'r', 'y', ' ', 'd', 'a', 't', 'a', ' ',
+    'w', 'i', 't', 'h', ' ', 'a', 'n', ' ',
+    'e', 'm', 'b', 'e', 'd', 'd', 'e', 'd', ' ', 'N', 'U', 'L'};
+#endif
+
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+#ifdef LIB545
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) sizeof teststring);
+#endif
+
+  test_setopt(curl, CURLOPT_COPYPOSTFIELDS, teststring);
+
+  test_setopt(curl, CURLOPT_VERBOSE, 1L); /* show verbose for debug */
+  test_setopt(curl, CURLOPT_HEADER, 1L); /* include header */
+
+  /* Update the original data to detect non-copy. */
+  strcpy(teststring, "FAIL");
+
+#ifdef LIB545
+  {
+    CURL *handle2;
+    handle2 = curl_easy_duphandle(curl);
+    curl_easy_cleanup(curl);
+
+    curl = handle2;
+  }
+#endif
+
+  /* Now, this is a POST request with binary 0 embedded in POST data. */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib547.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib547.c
new file mode 100644
index 0000000..ce967c0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib547.c
@@ -0,0 +1,131 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* argv1 = URL
+ * argv2 = proxy
+ * argv3 = proxyuser:password
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+#ifdef CURL_DOES_CONVERSIONS
+   /* ASCII representation with escape sequences for non-ASCII platforms */
+#  define UPLOADTHIS "\x74\x68\x69\x73\x20\x69\x73\x20\x74\x68\x65\x20\x62" \
+                     "\x6c\x75\x72\x62\x20\x77\x65\x20\x77\x61\x6e\x74\x20" \
+                     "\x74\x6f\x20\x75\x70\x6c\x6f\x61\x64\x0a"
+#else
+#  define UPLOADTHIS "this is the blurb we want to upload\n"
+#endif
+
+#ifndef LIB548
+static size_t readcallback(void  *ptr,
+                           size_t size,
+                           size_t nmemb,
+                           void *clientp)
+{
+  int *counter = (int *)clientp;
+
+  if(*counter) {
+    /* only do this once and then require a clearing of this */
+    fprintf(stderr, "READ ALREADY DONE!\n");
+    return 0;
+  }
+  (*counter)++; /* bump */
+
+  if(size * nmemb > strlen(UPLOADTHIS)) {
+    fprintf(stderr, "READ!\n");
+    strcpy(ptr, UPLOADTHIS);
+    return strlen(UPLOADTHIS);
+  }
+  fprintf(stderr, "READ NOT FINE!\n");
+  return 0;
+}
+static curlioerr ioctlcallback(CURL *handle,
+                               int cmd,
+                               void *clientp)
+{
+  int *counter = (int *)clientp;
+  (void)handle; /* unused */
+  if(cmd == CURLIOCMD_RESTARTREAD) {
+    fprintf(stderr, "REWIND!\n");
+    *counter = 0; /* clear counter to make the read callback restart */
+  }
+  return CURLIOE_OK;
+}
+
+
+
+#endif
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+#ifndef LIB548
+  int counter=0;
+#endif
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+#ifdef LIB548
+  /* set the data to POST with a mere pointer to a zero-terminated string */
+  test_setopt(curl, CURLOPT_POSTFIELDS, UPLOADTHIS);
+#else
+  /* 547 style, which means reading the POST data from a callback */
+  test_setopt(curl, CURLOPT_IOCTLFUNCTION, ioctlcallback);
+  test_setopt(curl, CURLOPT_IOCTLDATA, &counter);
+  test_setopt(curl, CURLOPT_READFUNCTION, readcallback);
+  test_setopt(curl, CURLOPT_READDATA, &counter);
+  /* We CANNOT do the POST fine without setting the size (or choose
+     chunked)! */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)strlen(UPLOADTHIS));
+#endif
+  test_setopt(curl, CURLOPT_POST, 1L);
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_PROXYUSERPWD, libtest_arg3);
+  test_setopt(curl, CURLOPT_PROXYAUTH,
+                   (long) (CURLAUTH_NTLM | CURLAUTH_DIGEST | CURLAUTH_BASIC) );
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib549.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib549.c
new file mode 100644
index 0000000..1d832b5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib549.c
@@ -0,0 +1,66 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* argv1 = URL
+ * argv2 = proxy
+ * argv3 = non-zero means ASCII transfer
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_PROXY_TRANSFER_MODE, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  if(libtest_arg3) {
+    /* enable ascii/text mode */
+    test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+  }
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib552.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib552.c
new file mode 100644
index 0000000..3a93daf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib552.c
@@ -0,0 +1,226 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* argv1 = URL
+ * argv2 = proxy with embedded user+password
+ */
+
+#include "test.h"
+
+#include "warnless.h"
+#include "memdebug.h"
+
+struct data {
+  char trace_ascii; /* 1 or 0 */
+};
+
+static
+void dump(const char *text,
+          FILE *stream, unsigned char *ptr, size_t size,
+          char nohex)
+{
+  size_t i;
+  size_t c;
+
+  unsigned int width=0x10;
+
+  if(nohex)
+    /* without the hex output, we can fit more on screen */
+    width = 0x40;
+
+  fprintf(stream, "%s, %d bytes (0x%x)\n", text, (int)size, (int)size);
+
+  for(i=0; i<size; i+= width) {
+
+    fprintf(stream, "%04x: ", (int)i);
+
+    if(!nohex) {
+      /* hex not disabled, show it */
+      for(c = 0; c < width; c++)
+        if(i+c < size)
+          fprintf(stream, "%02x ", ptr[i+c]);
+        else
+          fputs("   ", stream);
+    }
+
+    for(c = 0; (c < width) && (i+c < size); c++) {
+      /* check for 0D0A; if found, skip past and start a new line of output */
+      if(nohex && (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
+        i+=(c+2-width);
+        break;
+      }
+      fprintf(stream, "%c",
+              (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:'.');
+      /* check again for 0D0A, to avoid an extra \n if it's at width */
+      if(nohex && (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
+        i+=(c+3-width);
+        break;
+      }
+    }
+    fputc('\n', stream); /* newline */
+  }
+  fflush(stream);
+}
+
+static
+int my_trace(CURL *handle, curl_infotype type,
+             char *data, size_t size,
+             void *userp)
+{
+  struct data *config = (struct data *)userp;
+  const char *text;
+  (void)handle; /* prevent compiler warning */
+
+  switch(type) {
+  case CURLINFO_TEXT:
+    fprintf(stderr, "== Info: %s", (char *)data);
+    /* FALLTHROUGH */
+  default: /* in case a new one is introduced to shock us */
+    return 0;
+
+  case CURLINFO_HEADER_OUT:
+    text = "=> Send header";
+    break;
+  case CURLINFO_DATA_OUT:
+    text = "=> Send data";
+    break;
+  case CURLINFO_SSL_DATA_OUT:
+    text = "=> Send SSL data";
+    break;
+  case CURLINFO_HEADER_IN:
+    text = "<= Recv header";
+    break;
+  case CURLINFO_DATA_IN:
+    text = "<= Recv data";
+    break;
+  case CURLINFO_SSL_DATA_IN:
+    text = "<= Recv SSL data";
+    break;
+  }
+
+  dump(text, stderr, (unsigned char *)data, size, config->trace_ascii);
+  return 0;
+}
+
+
+static size_t current_offset = 0;
+static char databuf[70000]; /* MUST be more than 64k OR
+                               MAX_INITIAL_POST_SIZE */
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  size_t  amount = nmemb * size; /* Total bytes curl wants */
+  size_t  available = sizeof(databuf) - current_offset; /* What we have to
+                                                           give */
+  size_t  given = amount < available ? amount : available; /* What is given */
+  (void)stream;
+  memcpy(ptr, databuf + current_offset, given);
+  current_offset += given;
+  return given;
+}
+
+
+static size_t write_callback(void *ptr, size_t size, size_t nmemb,
+                             void *stream)
+{
+  int amount = curlx_uztosi(size * nmemb);
+  printf("%.*s", amount, (char *)ptr);
+  (void)stream;
+  return size * nmemb;
+}
+
+
+static curlioerr ioctl_callback(CURL *handle, int cmd, void *clientp)
+{
+  (void)clientp;
+  if(cmd == CURLIOCMD_RESTARTREAD) {
+    printf("APPLICATION: received a CURLIOCMD_RESTARTREAD request\n");
+    printf("APPLICATION: ** REWINDING! **\n");
+    current_offset = 0;
+    return CURLIOE_OK;
+  }
+  (void)handle;
+  return CURLIOE_UNKNOWNCMD;
+}
+
+
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = CURLE_OUT_OF_MEMORY;
+  struct data config;
+  size_t i;
+  static const char fill[] = "test data";
+
+  config.trace_ascii = 1; /* enable ascii tracing */
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
+  test_setopt(curl, CURLOPT_DEBUGDATA, &config);
+  /* the DEBUGFUNCTION has no effect until we enable VERBOSE */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* setup repeated data string */
+  for(i=0; i < sizeof(databuf); ++i)
+      databuf[i] = fill[i % sizeof fill];
+
+  /* Post */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+
+  /* Setup read callback */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) sizeof(databuf));
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* Write callback */
+  test_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
+
+  /* Ioctl function */
+  test_setopt(curl, CURLOPT_IOCTLFUNCTION, ioctl_callback);
+
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Accept any auth. But for this bug configure proxy with DIGEST, basic
+     might work too, not NTLM */
+  test_setopt(curl, CURLOPT_PROXYAUTH, (long)CURLAUTH_ANY);
+
+  res = curl_easy_perform(curl);
+  fprintf(stderr, "curl_easy_perform = %d\n", (int)res);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib553.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib553.c
new file mode 100644
index 0000000..288f4c1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib553.c
@@ -0,0 +1,115 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/* This test case and code is based on the bug recipe Joe Malicki provided for
+ * bug report #1871269, fixed on Jan 14 2008 before the 7.18.0 release.
+ */
+
+#include "test.h"
+
+#include "memdebug.h"
+
+#define POSTLEN 40960
+
+static size_t myreadfunc(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  static size_t total=POSTLEN;
+  static char buf[1024];
+  (void)stream;
+
+  memset(buf, 'A', sizeof(buf));
+
+  size *= nmemb;
+  if(size > total)
+    size = total;
+
+  if(size > sizeof(buf))
+    size = sizeof(buf);
+
+  memcpy(ptr, buf, size);
+  total -= size;
+  return size;
+}
+
+#define NUM_HEADERS 8
+#define SIZE_HEADERS 5000
+
+static char buf[SIZE_HEADERS + 100];
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = CURLE_FAILED_INIT;
+  int i;
+  struct curl_slist *headerlist=NULL, *hl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  for(i = 0; i < NUM_HEADERS; i++) {
+    int len = snprintf(buf, sizeof(buf), "Header%d: ", i);
+    memset(&buf[len], 'A', SIZE_HEADERS);
+    buf[len + SIZE_HEADERS]=0; /* zero terminate */
+    hl = curl_slist_append(headerlist,  buf);
+    if(!hl)
+      goto test_cleanup;
+    headerlist = hl;
+  }
+
+  hl = curl_slist_append(headerlist, "Expect: ");
+  if(!hl)
+    goto test_cleanup;
+  headerlist = hl;
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
+  test_setopt(curl, CURLOPT_POST, 1L);
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)POSTLEN);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_READFUNCTION, myreadfunc);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+
+  curl_slist_free_all(headerlist);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib554.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib554.c
new file mode 100644
index 0000000..0837462
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib554.c
@@ -0,0 +1,224 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static char data[]=
+#ifdef CURL_DOES_CONVERSIONS
+  /* ASCII representation with escape sequences for non-ASCII platforms */
+  "\x74\x68\x69\x73\x20\x69\x73\x20\x77\x68\x61\x74\x20\x77\x65\x20\x70"
+  "\x6f\x73\x74\x20\x74\x6f\x20\x74\x68\x65\x20\x73\x69\x6c\x6c\x79\x20"
+  "\x77\x65\x62\x20\x73\x65\x72\x76\x65\x72\x0a";
+#else
+  "this is what we post to the silly web server\n";
+#endif
+
+struct WriteThis {
+  char *readptr;
+  size_t sizeleft;
+};
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+#ifdef LIB587
+  (void)ptr;
+  (void)size;
+  (void)nmemb;
+  (void)userp;
+  return CURL_READFUNC_ABORT;
+#else
+
+  struct WriteThis *pooh = (struct WriteThis *)userp;
+
+  if(size*nmemb < 1)
+    return 0;
+
+  if(pooh->sizeleft) {
+    *(char *)ptr = pooh->readptr[0]; /* copy one single byte */
+    pooh->readptr++;                 /* advance pointer */
+    pooh->sizeleft--;                /* less data left */
+    return 1;                        /* we return 1 byte at a time! */
+  }
+
+  return 0;                         /* no more data left to deliver */
+#endif
+}
+
+static int once(char *URL, bool oldstyle)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+  CURLFORMcode formrc;
+
+  struct curl_httppost *formpost=NULL;
+  struct curl_httppost *lastptr=NULL;
+  struct WriteThis pooh;
+  struct WriteThis pooh2;
+
+  pooh.readptr = data;
+  pooh.sizeleft = strlen(data);
+
+  /* Fill in the file upload field */
+  if(oldstyle) {
+    formrc = curl_formadd(&formpost,
+                          &lastptr,
+                          CURLFORM_COPYNAME, "sendfile",
+                          CURLFORM_STREAM, &pooh,
+                          CURLFORM_CONTENTSLENGTH, (long)pooh.sizeleft,
+                          CURLFORM_FILENAME, "postit2.c",
+                          CURLFORM_END);
+  }
+  else {
+    /* new style */
+    formrc = curl_formadd(&formpost,
+                          &lastptr,
+                          CURLFORM_COPYNAME, "sendfile alternative",
+                          CURLFORM_STREAM, &pooh,
+                          CURLFORM_CONTENTLEN, (curl_off_t)pooh.sizeleft,
+                          CURLFORM_FILENAME, "file name 2",
+                          CURLFORM_END);
+  }
+
+  if(formrc)
+    printf("curl_formadd(1) = %d\n", (int)formrc);
+
+  /* Now add the same data with another name and make it not look like
+     a file upload but still using the callback */
+
+  pooh2.readptr = data;
+  pooh2.sizeleft = strlen(data);
+
+  /* Fill in the file upload field */
+  formrc = curl_formadd(&formpost,
+                        &lastptr,
+                        CURLFORM_COPYNAME, "callbackdata",
+                        CURLFORM_STREAM, &pooh2,
+                        CURLFORM_CONTENTSLENGTH, (long)pooh2.sizeleft,
+                        CURLFORM_END);
+
+  if(formrc)
+    printf("curl_formadd(1) = %d\n", (int)formrc);
+
+  /* Fill in the filename field */
+  formrc = curl_formadd(&formpost,
+                        &lastptr,
+                        CURLFORM_COPYNAME, "filename",
+#ifdef CURL_DOES_CONVERSIONS
+                        /* ASCII representation with escape
+                           sequences for non-ASCII platforms */
+                        CURLFORM_COPYCONTENTS,
+                           "\x70\x6f\x73\x74\x69\x74\x32\x2e\x63",
+#else
+                        CURLFORM_COPYCONTENTS, "postit2.c",
+#endif
+                        CURLFORM_END);
+
+  if(formrc)
+    printf("curl_formadd(2) = %d\n", (int)formrc);
+
+  /* Fill in a submit field too */
+  formrc = curl_formadd(&formpost,
+                        &lastptr,
+                        CURLFORM_COPYNAME, "submit",
+#ifdef CURL_DOES_CONVERSIONS
+                        /* ASCII representation with escape
+                           sequences for non-ASCII platforms */
+                        CURLFORM_COPYCONTENTS, "\x73\x65\x6e\x64",
+#else
+                        CURLFORM_COPYCONTENTS, "send",
+#endif
+                        CURLFORM_END);
+
+  if(formrc)
+    printf("curl_formadd(3) = %d\n", (int)formrc);
+
+  formrc = curl_formadd(&formpost, &lastptr,
+                        CURLFORM_COPYNAME, "somename",
+                        CURLFORM_BUFFER, "somefile.txt",
+                        CURLFORM_BUFFERPTR, "blah blah",
+                        CURLFORM_BUFFERLENGTH, (long)9,
+                        CURLFORM_END);
+
+  if(formrc)
+    printf("curl_formadd(4) = %d\n", (int)formrc);
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_formfree(formpost);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+  /* Set the expected POST size */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)pooh.sizeleft);
+
+  /* we want to use our own read function */
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* send a multi-part formpost */
+  test_setopt(curl, CURLOPT_HTTPPOST, formpost);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+
+  /* now cleanup the formpost chain */
+  curl_formfree(formpost);
+
+  return res;
+}
+
+int test(char *URL)
+{
+  int res;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  res = once(URL, TRUE); /* old */
+  if(!res)
+    res = once(URL, FALSE); /* new */
+
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib555.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib555.c
new file mode 100644
index 0000000..8156a95
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib555.c
@@ -0,0 +1,160 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/* This test case is supposed to be identical to 547 except that this uses the
+ * multi interface and 547 is easy interface.
+ *
+ * argv1 = URL
+ * argv2 = proxy
+ * argv3 = proxyuser:password
+ */
+
+#include "test.h"
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+#define UPLOADTHIS "this is the blurb we want to upload\n"
+
+static size_t readcallback(void  *ptr,
+                           size_t size,
+                           size_t nmemb,
+                           void *clientp)
+{
+  int *counter = (int *)clientp;
+
+  if(*counter) {
+    /* only do this once and then require a clearing of this */
+    fprintf(stderr, "READ ALREADY DONE!\n");
+    return 0;
+  }
+  (*counter)++; /* bump */
+
+  if(size * nmemb > strlen(UPLOADTHIS)) {
+    fprintf(stderr, "READ!\n");
+    strcpy(ptr, UPLOADTHIS);
+    return strlen(UPLOADTHIS);
+  }
+  fprintf(stderr, "READ NOT FINE!\n");
+  return 0;
+}
+static curlioerr ioctlcallback(CURL *handle,
+                               int cmd,
+                               void *clientp)
+{
+  int *counter = (int *)clientp;
+  (void)handle; /* unused */
+  if(cmd == CURLIOCMD_RESTARTREAD) {
+    fprintf(stderr, "REWIND!\n");
+    *counter = 0; /* clear counter to make the read callback restart */
+  }
+  return CURLIOE_OK;
+}
+
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  int counter=0;
+  CURLM *m = NULL;
+  int running=1;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+  easy_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* read the POST data from a callback */
+  easy_setopt(curl, CURLOPT_IOCTLFUNCTION, ioctlcallback);
+  easy_setopt(curl, CURLOPT_IOCTLDATA, &counter);
+  easy_setopt(curl, CURLOPT_READFUNCTION, readcallback);
+  easy_setopt(curl, CURLOPT_READDATA, &counter);
+  /* We CANNOT do the POST fine without setting the size (or choose
+     chunked)! */
+  easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)strlen(UPLOADTHIS));
+
+  easy_setopt(curl, CURLOPT_POST, 1L);
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII. */
+  easy_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+  easy_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  easy_setopt(curl, CURLOPT_PROXYUSERPWD, libtest_arg3);
+  easy_setopt(curl, CURLOPT_PROXYAUTH,
+                   (long) (CURLAUTH_NTLM | CURLAUTH_DIGEST | CURLAUTH_BASIC) );
+
+  multi_init(m);
+
+  multi_add_handle(m, curl);
+
+  while(running) {
+    struct timeval timeout;
+    fd_set fdread, fdwrite, fdexcep;
+    int maxfd = -99;
+
+    timeout.tv_sec = 0;
+    timeout.tv_usec = 100000L; /* 100 ms */
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+#ifdef TPF
+    sleep(1); /* avoid ctl-10 dump */
+#endif
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PA */
+
+  curl_multi_remove_handle(m, curl);
+  curl_multi_cleanup(m);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib556.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib556.c
new file mode 100644
index 0000000..f06c529
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib556.c
@@ -0,0 +1,109 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "warnless.h"
+#include "memdebug.h"
+
+/* For Windows, mainly (may be moved in a config file?) */
+#ifndef STDIN_FILENO
+  #define STDIN_FILENO 0
+#endif
+#ifndef STDOUT_FILENO
+  #define STDOUT_FILENO 1
+#endif
+#ifndef STDERR_FILENO
+  #define STDERR_FILENO 2
+#endif
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_CONNECT_ONLY, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+
+  if(!res) {
+    /* we are connected, now get a HTTP document the raw way */
+    const char *request =
+#ifdef CURL_DOES_CONVERSIONS
+      /* ASCII representation with escape sequences for non-ASCII platforms */
+      "\x47\x45\x54\x20\x2f\x35\x35\x36\x20\x48\x54\x54\x50\x2f\x31\x2e"
+      "\x32\x0d\x0a\x48\x6f\x73\x74\x3a\x20\x6e\x69\x6e\x6a\x61\x0d\x0a"
+      "\x0d\x0a";
+#else
+      "GET /556 HTTP/1.2\r\n"
+      "Host: ninja\r\n\r\n";
+#endif
+    size_t iolen;
+    char buf[1024];
+
+    res = curl_easy_send(curl, request, strlen(request), &iolen);
+
+    if(!res) {
+      /* we assume that sending always work */
+
+      do {
+        /* busy-read like crazy */
+        res = curl_easy_recv(curl, buf, sizeof(buf), &iolen);
+
+#ifdef TPF
+        sleep(1); /* avoid ctl-10 dump */
+#endif
+
+        if(iolen) {
+          /* send received stuff to stdout */
+          if(!write(STDOUT_FILENO, buf, iolen))
+            break;
+        }
+
+      } while((res == CURLE_OK && iolen != 0) || (res == CURLE_AGAIN));
+    }
+
+    if(res != CURLE_OK || iolen != 0)
+      return TEST_ERR_FAILURE;
+  }
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib557.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib557.c
new file mode 100644
index 0000000..4a598f2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib557.c
@@ -0,0 +1,1699 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * The purpose of this test is to minimally exercise libcurl's internal
+ * curl_m*printf formatting capabilities and handling of some data types.
+ */
+
+#include "test.h"
+
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#ifdef HAVE_LOCALE_H
+#  include <locale.h> /* for setlocale() */
+#endif
+
+#include "memdebug.h"
+
+#if (CURL_SIZEOF_CURL_OFF_T > CURL_SIZEOF_LONG)
+#  define MPRNT_SUFFIX_CURL_OFF_T  LL
+#else
+#  define MPRNT_SUFFIX_CURL_OFF_T  L
+#endif
+
+
+#ifdef CURL_ISOCPP
+#  define MPRNT_OFF_T_C_HELPER2(Val,Suffix) Val ## Suffix
+#else
+#  define MPRNT_OFF_T_C_HELPER2(Val,Suffix) Val/**/Suffix
+#endif
+#define MPRNT_OFF_T_C_HELPER1(Val,Suffix) MPRNT_OFF_T_C_HELPER2(Val,Suffix)
+#define MPRNT_OFF_T_C(Val)  MPRNT_OFF_T_C_HELPER1(Val,MPRNT_SUFFIX_CURL_OFF_T)
+
+
+#define BUFSZ    256
+#define USHORT_TESTS_ARRSZ 1 + 100
+#define SSHORT_TESTS_ARRSZ 1 + 100
+#define UINT_TESTS_ARRSZ   1 + 100
+#define SINT_TESTS_ARRSZ   1 + 100
+#define ULONG_TESTS_ARRSZ  1 + 100
+#define SLONG_TESTS_ARRSZ  1 + 100
+#define COFFT_TESTS_ARRSZ  1 + 100
+
+
+struct unsshort_st {
+  unsigned short num;   /* unsigned short  */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+struct sigshort_st {
+  short num;            /* signed short    */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+struct unsint_st {
+  unsigned int num;     /* unsigned int    */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+struct sigint_st {
+  int num;              /* signed int      */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+struct unslong_st {
+  unsigned long num;    /* unsigned long   */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+struct siglong_st {
+  long num;             /* signed long     */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+struct curloff_st {
+  curl_off_t num;       /* curl_off_t      */
+  const char *expected; /* expected string */
+  char result[BUFSZ];   /* result string   */
+};
+
+
+static struct unsshort_st us_test[USHORT_TESTS_ARRSZ];
+static struct sigshort_st ss_test[SSHORT_TESTS_ARRSZ];
+static struct unsint_st   ui_test[UINT_TESTS_ARRSZ];
+static struct sigint_st   si_test[SINT_TESTS_ARRSZ];
+static struct unslong_st  ul_test[ULONG_TESTS_ARRSZ];
+static struct siglong_st  sl_test[SLONG_TESTS_ARRSZ];
+static struct curloff_st  co_test[COFFT_TESTS_ARRSZ];
+
+
+static int test_unsigned_short_formatting(void)
+{
+  int i, j;
+  int num_ushort_tests;
+  int failed = 0;
+
+#if (SIZEOF_SHORT == 1)
+
+  i=1; us_test[i].num = 0xFFU; us_test[i].expected = "256";
+  i++; us_test[i].num = 0xF0U; us_test[i].expected = "240";
+  i++; us_test[i].num = 0x0FU; us_test[i].expected = "15";
+
+  i++; us_test[i].num = 0xE0U; us_test[i].expected = "224";
+  i++; us_test[i].num = 0x0EU; us_test[i].expected = "14";
+
+  i++; us_test[i].num = 0xC0U; us_test[i].expected = "192";
+  i++; us_test[i].num = 0x0CU; us_test[i].expected = "12";
+
+  i++; us_test[i].num = 0x01U; us_test[i].expected = "1";
+  i++; us_test[i].num = 0x00U; us_test[i].expected = "0";
+
+  num_ushort_tests = i;
+
+#elif (SIZEOF_SHORT == 2)
+
+  i=1; us_test[i].num = 0xFFFFU; us_test[i].expected = "65535";
+  i++; us_test[i].num = 0xFF00U; us_test[i].expected = "65280";
+  i++; us_test[i].num = 0x00FFU; us_test[i].expected = "255";
+
+  i++; us_test[i].num = 0xF000U; us_test[i].expected = "61440";
+  i++; us_test[i].num = 0x0F00U; us_test[i].expected = "3840";
+  i++; us_test[i].num = 0x00F0U; us_test[i].expected = "240";
+  i++; us_test[i].num = 0x000FU; us_test[i].expected = "15";
+
+  i++; us_test[i].num = 0xC000U; us_test[i].expected = "49152";
+  i++; us_test[i].num = 0x0C00U; us_test[i].expected = "3072";
+  i++; us_test[i].num = 0x00C0U; us_test[i].expected = "192";
+  i++; us_test[i].num = 0x000CU; us_test[i].expected = "12";
+
+  i++; us_test[i].num = 0x0001U; us_test[i].expected = "1";
+  i++; us_test[i].num = 0x0000U; us_test[i].expected = "0";
+
+  num_ushort_tests = i;
+
+#elif (SIZEOF_SHORT == 4)
+
+  i=1; us_test[i].num = 0xFFFFFFFFU; us_test[i].expected = "4294967295";
+  i++; us_test[i].num = 0xFFFF0000U; us_test[i].expected = "4294901760";
+  i++; us_test[i].num = 0x0000FFFFU; us_test[i].expected = "65535";
+
+  i++; us_test[i].num = 0xFF000000U; us_test[i].expected = "4278190080";
+  i++; us_test[i].num = 0x00FF0000U; us_test[i].expected = "16711680";
+  i++; us_test[i].num = 0x0000FF00U; us_test[i].expected = "65280";
+  i++; us_test[i].num = 0x000000FFU; us_test[i].expected = "255";
+
+  i++; us_test[i].num = 0xF0000000U; us_test[i].expected = "4026531840";
+  i++; us_test[i].num = 0x0F000000U; us_test[i].expected = "251658240";
+  i++; us_test[i].num = 0x00F00000U; us_test[i].expected = "15728640";
+  i++; us_test[i].num = 0x000F0000U; us_test[i].expected = "983040";
+  i++; us_test[i].num = 0x0000F000U; us_test[i].expected = "61440";
+  i++; us_test[i].num = 0x00000F00U; us_test[i].expected = "3840";
+  i++; us_test[i].num = 0x000000F0U; us_test[i].expected = "240";
+  i++; us_test[i].num = 0x0000000FU; us_test[i].expected = "15";
+
+  i++; us_test[i].num = 0xC0000000U; us_test[i].expected = "3221225472";
+  i++; us_test[i].num = 0x0C000000U; us_test[i].expected = "201326592";
+  i++; us_test[i].num = 0x00C00000U; us_test[i].expected = "12582912";
+  i++; us_test[i].num = 0x000C0000U; us_test[i].expected = "786432";
+  i++; us_test[i].num = 0x0000C000U; us_test[i].expected = "49152";
+  i++; us_test[i].num = 0x00000C00U; us_test[i].expected = "3072";
+  i++; us_test[i].num = 0x000000C0U; us_test[i].expected = "192";
+  i++; us_test[i].num = 0x0000000CU; us_test[i].expected = "12";
+
+  i++; us_test[i].num = 0x00000001U; us_test[i].expected = "1";
+  i++; us_test[i].num = 0x00000000U; us_test[i].expected = "0";
+
+  num_ushort_tests = i;
+
+#endif
+
+  for(i=1; i<=num_ushort_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      us_test[i].result[j] = 'X';
+    us_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(us_test[i].result, "%hu", us_test[i].num);
+
+    if(memcmp(us_test[i].result,
+               us_test[i].expected,
+               strlen(us_test[i].expected))) {
+      printf("unsigned short test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, us_test[i].expected, us_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() unsigned short tests OK!\n");
+  else
+    printf("Some curl_mprintf() unsigned short tests Failed!\n");
+
+  return failed;
+}
+
+
+static int test_signed_short_formatting(void)
+{
+  int i, j;
+  int num_sshort_tests;
+  int failed = 0;
+
+#if (SIZEOF_SHORT == 1)
+
+  i=1; ss_test[i].num = 0x7F; ss_test[i].expected = "127";
+
+  i++; ss_test[i].num = 0x70; ss_test[i].expected = "112";
+  i++; ss_test[i].num = 0x07; ss_test[i].expected = "7";
+
+  i++; ss_test[i].num = 0x50; ss_test[i].expected = "80";
+  i++; ss_test[i].num = 0x05; ss_test[i].expected = "5";
+
+  i++; ss_test[i].num = 0x01; ss_test[i].expected = "1";
+  i++; ss_test[i].num = 0x00; ss_test[i].expected = "0";
+
+  i++; ss_test[i].num = -0x7F -1; ss_test[i].expected = "-128";
+
+  i++; ss_test[i].num = -0x70 -1; ss_test[i].expected = "-113";
+  i++; ss_test[i].num = -0x07 -1; ss_test[i].expected = "-8";
+
+  i++; ss_test[i].num = -0x50 -1; ss_test[i].expected = "-81";
+  i++; ss_test[i].num = -0x05 -1; ss_test[i].expected = "-6";
+
+  i++; ss_test[i].num =  0x00 -1; ss_test[i].expected = "-1";
+
+  num_sshort_tests = i;
+
+#elif (SIZEOF_SHORT == 2)
+
+  i=1; ss_test[i].num = 0x7FFF; ss_test[i].expected = "32767";
+  i++; ss_test[i].num = 0x7FFE; ss_test[i].expected = "32766";
+  i++; ss_test[i].num = 0x7FFD; ss_test[i].expected = "32765";
+  i++; ss_test[i].num = 0x7F00; ss_test[i].expected = "32512";
+  i++; ss_test[i].num = 0x07F0; ss_test[i].expected = "2032";
+  i++; ss_test[i].num = 0x007F; ss_test[i].expected = "127";
+
+  i++; ss_test[i].num = 0x7000; ss_test[i].expected = "28672";
+  i++; ss_test[i].num = 0x0700; ss_test[i].expected = "1792";
+  i++; ss_test[i].num = 0x0070; ss_test[i].expected = "112";
+  i++; ss_test[i].num = 0x0007; ss_test[i].expected = "7";
+
+  i++; ss_test[i].num = 0x5000; ss_test[i].expected = "20480";
+  i++; ss_test[i].num = 0x0500; ss_test[i].expected = "1280";
+  i++; ss_test[i].num = 0x0050; ss_test[i].expected = "80";
+  i++; ss_test[i].num = 0x0005; ss_test[i].expected = "5";
+
+  i++; ss_test[i].num = 0x0001; ss_test[i].expected = "1";
+  i++; ss_test[i].num = 0x0000; ss_test[i].expected = "0";
+
+  i++; ss_test[i].num = -0x7FFF -1; ss_test[i].expected = "-32768";
+  i++; ss_test[i].num = -0x7FFE -1; ss_test[i].expected = "-32767";
+  i++; ss_test[i].num = -0x7FFD -1; ss_test[i].expected = "-32766";
+  i++; ss_test[i].num = -0x7F00 -1; ss_test[i].expected = "-32513";
+  i++; ss_test[i].num = -0x07F0 -1; ss_test[i].expected = "-2033";
+  i++; ss_test[i].num = -0x007F -1; ss_test[i].expected = "-128";
+
+  i++; ss_test[i].num = -0x7000 -1; ss_test[i].expected = "-28673";
+  i++; ss_test[i].num = -0x0700 -1; ss_test[i].expected = "-1793";
+  i++; ss_test[i].num = -0x0070 -1; ss_test[i].expected = "-113";
+  i++; ss_test[i].num = -0x0007 -1; ss_test[i].expected = "-8";
+
+  i++; ss_test[i].num = -0x5000 -1; ss_test[i].expected = "-20481";
+  i++; ss_test[i].num = -0x0500 -1; ss_test[i].expected = "-1281";
+  i++; ss_test[i].num = -0x0050 -1; ss_test[i].expected = "-81";
+  i++; ss_test[i].num = -0x0005 -1; ss_test[i].expected = "-6";
+
+  i++; ss_test[i].num =  0x0000 -1; ss_test[i].expected = "-1";
+
+  num_sshort_tests = i;
+
+#elif (SIZEOF_SHORT == 4)
+
+  i=1; ss_test[i].num = 0x7FFFFFFF; ss_test[i].expected = "2147483647";
+  i++; ss_test[i].num = 0x7FFFFFFE; ss_test[i].expected = "2147483646";
+  i++; ss_test[i].num = 0x7FFFFFFD; ss_test[i].expected = "2147483645";
+  i++; ss_test[i].num = 0x7FFF0000; ss_test[i].expected = "2147418112";
+  i++; ss_test[i].num = 0x00007FFF; ss_test[i].expected = "32767";
+
+  i++; ss_test[i].num = 0x7F000000; ss_test[i].expected = "2130706432";
+  i++; ss_test[i].num = 0x007F0000; ss_test[i].expected = "8323072";
+  i++; ss_test[i].num = 0x00007F00; ss_test[i].expected = "32512";
+  i++; ss_test[i].num = 0x0000007F; ss_test[i].expected = "127";
+
+  i++; ss_test[i].num = 0x70000000; ss_test[i].expected = "1879048192";
+  i++; ss_test[i].num = 0x07000000; ss_test[i].expected = "117440512";
+  i++; ss_test[i].num = 0x00700000; ss_test[i].expected = "7340032";
+  i++; ss_test[i].num = 0x00070000; ss_test[i].expected = "458752";
+  i++; ss_test[i].num = 0x00007000; ss_test[i].expected = "28672";
+  i++; ss_test[i].num = 0x00000700; ss_test[i].expected = "1792";
+  i++; ss_test[i].num = 0x00000070; ss_test[i].expected = "112";
+  i++; ss_test[i].num = 0x00000007; ss_test[i].expected = "7";
+
+  i++; ss_test[i].num = 0x50000000; ss_test[i].expected = "1342177280";
+  i++; ss_test[i].num = 0x05000000; ss_test[i].expected = "83886080";
+  i++; ss_test[i].num = 0x00500000; ss_test[i].expected = "5242880";
+  i++; ss_test[i].num = 0x00050000; ss_test[i].expected = "327680";
+  i++; ss_test[i].num = 0x00005000; ss_test[i].expected = "20480";
+  i++; ss_test[i].num = 0x00000500; ss_test[i].expected = "1280";
+  i++; ss_test[i].num = 0x00000050; ss_test[i].expected = "80";
+  i++; ss_test[i].num = 0x00000005; ss_test[i].expected = "5";
+
+  i++; ss_test[i].num = 0x00000001; ss_test[i].expected = "1";
+  i++; ss_test[i].num = 0x00000000; ss_test[i].expected = "0";
+
+  i++; ss_test[i].num = -0x7FFFFFFF -1; ss_test[i].expected = "-2147483648";
+  i++; ss_test[i].num = -0x7FFFFFFE -1; ss_test[i].expected = "-2147483647";
+  i++; ss_test[i].num = -0x7FFFFFFD -1; ss_test[i].expected = "-2147483646";
+  i++; ss_test[i].num = -0x7FFF0000 -1; ss_test[i].expected = "-2147418113";
+  i++; ss_test[i].num = -0x00007FFF -1; ss_test[i].expected = "-32768";
+
+  i++; ss_test[i].num = -0x7F000000 -1; ss_test[i].expected = "-2130706433";
+  i++; ss_test[i].num = -0x007F0000 -1; ss_test[i].expected = "-8323073";
+  i++; ss_test[i].num = -0x00007F00 -1; ss_test[i].expected = "-32513";
+  i++; ss_test[i].num = -0x0000007F -1; ss_test[i].expected = "-128";
+
+  i++; ss_test[i].num = -0x70000000 -1; ss_test[i].expected = "-1879048193";
+  i++; ss_test[i].num = -0x07000000 -1; ss_test[i].expected = "-117440513";
+  i++; ss_test[i].num = -0x00700000 -1; ss_test[i].expected = "-7340033";
+  i++; ss_test[i].num = -0x00070000 -1; ss_test[i].expected = "-458753";
+  i++; ss_test[i].num = -0x00007000 -1; ss_test[i].expected = "-28673";
+  i++; ss_test[i].num = -0x00000700 -1; ss_test[i].expected = "-1793";
+  i++; ss_test[i].num = -0x00000070 -1; ss_test[i].expected = "-113";
+  i++; ss_test[i].num = -0x00000007 -1; ss_test[i].expected = "-8";
+
+  i++; ss_test[i].num = -0x50000000 -1; ss_test[i].expected = "-1342177281";
+  i++; ss_test[i].num = -0x05000000 -1; ss_test[i].expected = "-83886081";
+  i++; ss_test[i].num = -0x00500000 -1; ss_test[i].expected = "-5242881";
+  i++; ss_test[i].num = -0x00050000 -1; ss_test[i].expected = "-327681";
+  i++; ss_test[i].num = -0x00005000 -1; ss_test[i].expected = "-20481";
+  i++; ss_test[i].num = -0x00000500 -1; ss_test[i].expected = "-1281";
+  i++; ss_test[i].num = -0x00000050 -1; ss_test[i].expected = "-81";
+  i++; ss_test[i].num = -0x00000005 -1; ss_test[i].expected = "-6";
+
+  i++; ss_test[i].num =  0x00000000 -1; ss_test[i].expected = "-1";
+
+  num_sshort_tests = i;
+
+#endif
+
+  for(i=1; i<=num_sshort_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      ss_test[i].result[j] = 'X';
+    ss_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(ss_test[i].result, "%hd", ss_test[i].num);
+
+    if(memcmp(ss_test[i].result,
+              ss_test[i].expected,
+              strlen(ss_test[i].expected))) {
+      printf("signed short test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, ss_test[i].expected, ss_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() signed short tests OK!\n");
+  else
+    printf("Some curl_mprintf() signed short tests Failed!\n");
+
+  return failed;
+}
+
+
+static int test_unsigned_int_formatting(void)
+{
+  int i, j;
+  int num_uint_tests;
+  int failed = 0;
+
+#if (SIZEOF_INT == 2)
+
+  i=1; ui_test[i].num = 0xFFFFU; ui_test[i].expected = "65535";
+  i++; ui_test[i].num = 0xFF00U; ui_test[i].expected = "65280";
+  i++; ui_test[i].num = 0x00FFU; ui_test[i].expected = "255";
+
+  i++; ui_test[i].num = 0xF000U; ui_test[i].expected = "61440";
+  i++; ui_test[i].num = 0x0F00U; ui_test[i].expected = "3840";
+  i++; ui_test[i].num = 0x00F0U; ui_test[i].expected = "240";
+  i++; ui_test[i].num = 0x000FU; ui_test[i].expected = "15";
+
+  i++; ui_test[i].num = 0xC000U; ui_test[i].expected = "49152";
+  i++; ui_test[i].num = 0x0C00U; ui_test[i].expected = "3072";
+  i++; ui_test[i].num = 0x00C0U; ui_test[i].expected = "192";
+  i++; ui_test[i].num = 0x000CU; ui_test[i].expected = "12";
+
+  i++; ui_test[i].num = 0x0001U; ui_test[i].expected = "1";
+  i++; ui_test[i].num = 0x0000U; ui_test[i].expected = "0";
+
+  num_uint_tests = i;
+
+#elif (SIZEOF_INT == 4)
+
+  i=1; ui_test[i].num = 0xFFFFFFFFU; ui_test[i].expected = "4294967295";
+  i++; ui_test[i].num = 0xFFFF0000U; ui_test[i].expected = "4294901760";
+  i++; ui_test[i].num = 0x0000FFFFU; ui_test[i].expected = "65535";
+
+  i++; ui_test[i].num = 0xFF000000U; ui_test[i].expected = "4278190080";
+  i++; ui_test[i].num = 0x00FF0000U; ui_test[i].expected = "16711680";
+  i++; ui_test[i].num = 0x0000FF00U; ui_test[i].expected = "65280";
+  i++; ui_test[i].num = 0x000000FFU; ui_test[i].expected = "255";
+
+  i++; ui_test[i].num = 0xF0000000U; ui_test[i].expected = "4026531840";
+  i++; ui_test[i].num = 0x0F000000U; ui_test[i].expected = "251658240";
+  i++; ui_test[i].num = 0x00F00000U; ui_test[i].expected = "15728640";
+  i++; ui_test[i].num = 0x000F0000U; ui_test[i].expected = "983040";
+  i++; ui_test[i].num = 0x0000F000U; ui_test[i].expected = "61440";
+  i++; ui_test[i].num = 0x00000F00U; ui_test[i].expected = "3840";
+  i++; ui_test[i].num = 0x000000F0U; ui_test[i].expected = "240";
+  i++; ui_test[i].num = 0x0000000FU; ui_test[i].expected = "15";
+
+  i++; ui_test[i].num = 0xC0000000U; ui_test[i].expected = "3221225472";
+  i++; ui_test[i].num = 0x0C000000U; ui_test[i].expected = "201326592";
+  i++; ui_test[i].num = 0x00C00000U; ui_test[i].expected = "12582912";
+  i++; ui_test[i].num = 0x000C0000U; ui_test[i].expected = "786432";
+  i++; ui_test[i].num = 0x0000C000U; ui_test[i].expected = "49152";
+  i++; ui_test[i].num = 0x00000C00U; ui_test[i].expected = "3072";
+  i++; ui_test[i].num = 0x000000C0U; ui_test[i].expected = "192";
+  i++; ui_test[i].num = 0x0000000CU; ui_test[i].expected = "12";
+
+  i++; ui_test[i].num = 0x00000001U; ui_test[i].expected = "1";
+  i++; ui_test[i].num = 0x00000000U; ui_test[i].expected = "0";
+
+  num_uint_tests = i;
+
+#elif (SIZEOF_INT == 8)
+
+  /* !checksrc! disable LONGLINE all */
+  i=1; ui_test[i].num = 0xFFFFFFFFFFFFFFFFU; ui_test[i].expected = "18446744073709551615";
+  i++; ui_test[i].num = 0xFFFFFFFF00000000U; ui_test[i].expected = "18446744069414584320";
+  i++; ui_test[i].num = 0x00000000FFFFFFFFU; ui_test[i].expected = "4294967295";
+
+  i++; ui_test[i].num = 0xFFFF000000000000U; ui_test[i].expected = "18446462598732840960";
+  i++; ui_test[i].num = 0x0000FFFF00000000U; ui_test[i].expected = "281470681743360";
+  i++; ui_test[i].num = 0x00000000FFFF0000U; ui_test[i].expected = "4294901760";
+  i++; ui_test[i].num = 0x000000000000FFFFU; ui_test[i].expected = "65535";
+
+  i++; ui_test[i].num = 0xFF00000000000000U; ui_test[i].expected = "18374686479671623680";
+  i++; ui_test[i].num = 0x00FF000000000000U; ui_test[i].expected = "71776119061217280";
+  i++; ui_test[i].num = 0x0000FF0000000000U; ui_test[i].expected = "280375465082880";
+  i++; ui_test[i].num = 0x000000FF00000000U; ui_test[i].expected = "1095216660480";
+  i++; ui_test[i].num = 0x00000000FF000000U; ui_test[i].expected = "4278190080";
+  i++; ui_test[i].num = 0x0000000000FF0000U; ui_test[i].expected = "16711680";
+  i++; ui_test[i].num = 0x000000000000FF00U; ui_test[i].expected = "65280";
+  i++; ui_test[i].num = 0x00000000000000FFU; ui_test[i].expected = "255";
+
+  i++; ui_test[i].num = 0xF000000000000000U; ui_test[i].expected = "17293822569102704640";
+  i++; ui_test[i].num = 0x0F00000000000000U; ui_test[i].expected = "1080863910568919040";
+  i++; ui_test[i].num = 0x00F0000000000000U; ui_test[i].expected = "67553994410557440";
+  i++; ui_test[i].num = 0x000F000000000000U; ui_test[i].expected = "4222124650659840";
+  i++; ui_test[i].num = 0x0000F00000000000U; ui_test[i].expected = "263882790666240";
+  i++; ui_test[i].num = 0x00000F0000000000U; ui_test[i].expected = "16492674416640";
+  i++; ui_test[i].num = 0x000000F000000000U; ui_test[i].expected = "1030792151040";
+  i++; ui_test[i].num = 0x0000000F00000000U; ui_test[i].expected = "64424509440";
+  i++; ui_test[i].num = 0x00000000F0000000U; ui_test[i].expected = "4026531840";
+  i++; ui_test[i].num = 0x000000000F000000U; ui_test[i].expected = "251658240";
+  i++; ui_test[i].num = 0x0000000000F00000U; ui_test[i].expected = "15728640";
+  i++; ui_test[i].num = 0x00000000000F0000U; ui_test[i].expected = "983040";
+  i++; ui_test[i].num = 0x000000000000F000U; ui_test[i].expected = "61440";
+  i++; ui_test[i].num = 0x0000000000000F00U; ui_test[i].expected = "3840";
+  i++; ui_test[i].num = 0x00000000000000F0U; ui_test[i].expected = "240";
+  i++; ui_test[i].num = 0x000000000000000FU; ui_test[i].expected = "15";
+
+  i++; ui_test[i].num = 0xC000000000000000U; ui_test[i].expected = "13835058055282163712";
+  i++; ui_test[i].num = 0x0C00000000000000U; ui_test[i].expected = "864691128455135232";
+  i++; ui_test[i].num = 0x00C0000000000000U; ui_test[i].expected = "54043195528445952";
+  i++; ui_test[i].num = 0x000C000000000000U; ui_test[i].expected = "3377699720527872";
+  i++; ui_test[i].num = 0x0000C00000000000U; ui_test[i].expected = "211106232532992";
+  i++; ui_test[i].num = 0x00000C0000000000U; ui_test[i].expected = "13194139533312";
+  i++; ui_test[i].num = 0x000000C000000000U; ui_test[i].expected = "824633720832";
+  i++; ui_test[i].num = 0x0000000C00000000U; ui_test[i].expected = "51539607552";
+  i++; ui_test[i].num = 0x00000000C0000000U; ui_test[i].expected = "3221225472";
+  i++; ui_test[i].num = 0x000000000C000000U; ui_test[i].expected = "201326592";
+  i++; ui_test[i].num = 0x0000000000C00000U; ui_test[i].expected = "12582912";
+  i++; ui_test[i].num = 0x00000000000C0000U; ui_test[i].expected = "786432";
+  i++; ui_test[i].num = 0x000000000000C000U; ui_test[i].expected = "49152";
+  i++; ui_test[i].num = 0x0000000000000C00U; ui_test[i].expected = "3072";
+  i++; ui_test[i].num = 0x00000000000000C0U; ui_test[i].expected = "192";
+  i++; ui_test[i].num = 0x000000000000000CU; ui_test[i].expected = "12";
+
+  i++; ui_test[i].num = 0x00000001U; ui_test[i].expected = "1";
+  i++; ui_test[i].num = 0x00000000U; ui_test[i].expected = "0";
+
+  num_uint_tests = i;
+
+#endif
+
+  for(i=1; i<=num_uint_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      ui_test[i].result[j] = 'X';
+    ui_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(ui_test[i].result, "%u", ui_test[i].num);
+
+    if(memcmp(ui_test[i].result,
+               ui_test[i].expected,
+               strlen(ui_test[i].expected))) {
+      printf("unsigned int test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, ui_test[i].expected, ui_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() unsigned int tests OK!\n");
+  else
+    printf("Some curl_mprintf() unsigned int tests Failed!\n");
+
+  return failed;
+}
+
+
+static int test_signed_int_formatting(void)
+{
+  int i, j;
+  int num_sint_tests;
+  int failed = 0;
+
+#if (SIZEOF_INT == 2)
+
+  i=1; si_test[i].num = 0x7FFF; si_test[i].expected = "32767";
+  i++; si_test[i].num = 0x7FFE; si_test[i].expected = "32766";
+  i++; si_test[i].num = 0x7FFD; si_test[i].expected = "32765";
+  i++; si_test[i].num = 0x7F00; si_test[i].expected = "32512";
+  i++; si_test[i].num = 0x07F0; si_test[i].expected = "2032";
+  i++; si_test[i].num = 0x007F; si_test[i].expected = "127";
+
+  i++; si_test[i].num = 0x7000; si_test[i].expected = "28672";
+  i++; si_test[i].num = 0x0700; si_test[i].expected = "1792";
+  i++; si_test[i].num = 0x0070; si_test[i].expected = "112";
+  i++; si_test[i].num = 0x0007; si_test[i].expected = "7";
+
+  i++; si_test[i].num = 0x5000; si_test[i].expected = "20480";
+  i++; si_test[i].num = 0x0500; si_test[i].expected = "1280";
+  i++; si_test[i].num = 0x0050; si_test[i].expected = "80";
+  i++; si_test[i].num = 0x0005; si_test[i].expected = "5";
+
+  i++; si_test[i].num = 0x0001; si_test[i].expected = "1";
+  i++; si_test[i].num = 0x0000; si_test[i].expected = "0";
+
+  i++; si_test[i].num = -0x7FFF -1; si_test[i].expected = "-32768";
+  i++; si_test[i].num = -0x7FFE -1; si_test[i].expected = "-32767";
+  i++; si_test[i].num = -0x7FFD -1; si_test[i].expected = "-32766";
+  i++; si_test[i].num = -0x7F00 -1; si_test[i].expected = "-32513";
+  i++; si_test[i].num = -0x07F0 -1; si_test[i].expected = "-2033";
+  i++; si_test[i].num = -0x007F -1; si_test[i].expected = "-128";
+
+  i++; si_test[i].num = -0x7000 -1; si_test[i].expected = "-28673";
+  i++; si_test[i].num = -0x0700 -1; si_test[i].expected = "-1793";
+  i++; si_test[i].num = -0x0070 -1; si_test[i].expected = "-113";
+  i++; si_test[i].num = -0x0007 -1; si_test[i].expected = "-8";
+
+  i++; si_test[i].num = -0x5000 -1; si_test[i].expected = "-20481";
+  i++; si_test[i].num = -0x0500 -1; si_test[i].expected = "-1281";
+  i++; si_test[i].num = -0x0050 -1; si_test[i].expected = "-81";
+  i++; si_test[i].num = -0x0005 -1; si_test[i].expected = "-6";
+
+  i++; si_test[i].num =  0x0000 -1; si_test[i].expected = "-1";
+
+  num_sint_tests = i;
+
+#elif (SIZEOF_INT == 4)
+
+  i=1; si_test[i].num = 0x7FFFFFFF; si_test[i].expected = "2147483647";
+  i++; si_test[i].num = 0x7FFFFFFE; si_test[i].expected = "2147483646";
+  i++; si_test[i].num = 0x7FFFFFFD; si_test[i].expected = "2147483645";
+  i++; si_test[i].num = 0x7FFF0000; si_test[i].expected = "2147418112";
+  i++; si_test[i].num = 0x00007FFF; si_test[i].expected = "32767";
+
+  i++; si_test[i].num = 0x7F000000; si_test[i].expected = "2130706432";
+  i++; si_test[i].num = 0x007F0000; si_test[i].expected = "8323072";
+  i++; si_test[i].num = 0x00007F00; si_test[i].expected = "32512";
+  i++; si_test[i].num = 0x0000007F; si_test[i].expected = "127";
+
+  i++; si_test[i].num = 0x70000000; si_test[i].expected = "1879048192";
+  i++; si_test[i].num = 0x07000000; si_test[i].expected = "117440512";
+  i++; si_test[i].num = 0x00700000; si_test[i].expected = "7340032";
+  i++; si_test[i].num = 0x00070000; si_test[i].expected = "458752";
+  i++; si_test[i].num = 0x00007000; si_test[i].expected = "28672";
+  i++; si_test[i].num = 0x00000700; si_test[i].expected = "1792";
+  i++; si_test[i].num = 0x00000070; si_test[i].expected = "112";
+  i++; si_test[i].num = 0x00000007; si_test[i].expected = "7";
+
+  i++; si_test[i].num = 0x50000000; si_test[i].expected = "1342177280";
+  i++; si_test[i].num = 0x05000000; si_test[i].expected = "83886080";
+  i++; si_test[i].num = 0x00500000; si_test[i].expected = "5242880";
+  i++; si_test[i].num = 0x00050000; si_test[i].expected = "327680";
+  i++; si_test[i].num = 0x00005000; si_test[i].expected = "20480";
+  i++; si_test[i].num = 0x00000500; si_test[i].expected = "1280";
+  i++; si_test[i].num = 0x00000050; si_test[i].expected = "80";
+  i++; si_test[i].num = 0x00000005; si_test[i].expected = "5";
+
+  i++; si_test[i].num = 0x00000001; si_test[i].expected = "1";
+  i++; si_test[i].num = 0x00000000; si_test[i].expected = "0";
+
+  i++; si_test[i].num = -0x7FFFFFFF -1; si_test[i].expected = "-2147483648";
+  i++; si_test[i].num = -0x7FFFFFFE -1; si_test[i].expected = "-2147483647";
+  i++; si_test[i].num = -0x7FFFFFFD -1; si_test[i].expected = "-2147483646";
+  i++; si_test[i].num = -0x7FFF0000 -1; si_test[i].expected = "-2147418113";
+  i++; si_test[i].num = -0x00007FFF -1; si_test[i].expected = "-32768";
+
+  i++; si_test[i].num = -0x7F000000 -1; si_test[i].expected = "-2130706433";
+  i++; si_test[i].num = -0x007F0000 -1; si_test[i].expected = "-8323073";
+  i++; si_test[i].num = -0x00007F00 -1; si_test[i].expected = "-32513";
+  i++; si_test[i].num = -0x0000007F -1; si_test[i].expected = "-128";
+
+  i++; si_test[i].num = -0x70000000 -1; si_test[i].expected = "-1879048193";
+  i++; si_test[i].num = -0x07000000 -1; si_test[i].expected = "-117440513";
+  i++; si_test[i].num = -0x00700000 -1; si_test[i].expected = "-7340033";
+  i++; si_test[i].num = -0x00070000 -1; si_test[i].expected = "-458753";
+  i++; si_test[i].num = -0x00007000 -1; si_test[i].expected = "-28673";
+  i++; si_test[i].num = -0x00000700 -1; si_test[i].expected = "-1793";
+  i++; si_test[i].num = -0x00000070 -1; si_test[i].expected = "-113";
+  i++; si_test[i].num = -0x00000007 -1; si_test[i].expected = "-8";
+
+  i++; si_test[i].num = -0x50000000 -1; si_test[i].expected = "-1342177281";
+  i++; si_test[i].num = -0x05000000 -1; si_test[i].expected = "-83886081";
+  i++; si_test[i].num = -0x00500000 -1; si_test[i].expected = "-5242881";
+  i++; si_test[i].num = -0x00050000 -1; si_test[i].expected = "-327681";
+  i++; si_test[i].num = -0x00005000 -1; si_test[i].expected = "-20481";
+  i++; si_test[i].num = -0x00000500 -1; si_test[i].expected = "-1281";
+  i++; si_test[i].num = -0x00000050 -1; si_test[i].expected = "-81";
+  i++; si_test[i].num = -0x00000005 -1; si_test[i].expected = "-6";
+
+  i++; si_test[i].num =  0x00000000 -1; si_test[i].expected = "-1";
+
+  num_sint_tests = i;
+
+#elif (SIZEOF_INT == 8)
+
+  i=1; si_test[i].num = 0x7FFFFFFFFFFFFFFF; si_test[i].expected = "9223372036854775807";
+  i++; si_test[i].num = 0x7FFFFFFFFFFFFFFE; si_test[i].expected = "9223372036854775806";
+  i++; si_test[i].num = 0x7FFFFFFFFFFFFFFD; si_test[i].expected = "9223372036854775805";
+  i++; si_test[i].num = 0x7FFFFFFF00000000; si_test[i].expected = "9223372032559808512";
+  i++; si_test[i].num = 0x000000007FFFFFFF; si_test[i].expected = "2147483647";
+
+  i++; si_test[i].num = 0x7FFF000000000000; si_test[i].expected = "9223090561878065152";
+  i++; si_test[i].num = 0x00007FFF00000000; si_test[i].expected = "140733193388032";
+  i++; si_test[i].num = 0x000000007FFF0000; si_test[i].expected = "2147418112";
+  i++; si_test[i].num = 0x0000000000007FFF; si_test[i].expected = "32767";
+
+  i++; si_test[i].num = 0x7F00000000000000; si_test[i].expected = "9151314442816847872";
+  i++; si_test[i].num = 0x007F000000000000; si_test[i].expected = "35747322042253312";
+  i++; si_test[i].num = 0x00007F0000000000; si_test[i].expected = "139637976727552";
+  i++; si_test[i].num = 0x0000007F00000000; si_test[i].expected = "545460846592";
+  i++; si_test[i].num = 0x000000007F000000; si_test[i].expected = "2130706432";
+  i++; si_test[i].num = 0x00000000007F0000; si_test[i].expected = "8323072";
+  i++; si_test[i].num = 0x0000000000007F00; si_test[i].expected = "32512";
+  i++; si_test[i].num = 0x000000000000007F; si_test[i].expected = "127";
+
+  i++; si_test[i].num = 0x7000000000000000; si_test[i].expected = "8070450532247928832";
+  i++; si_test[i].num = 0x0700000000000000; si_test[i].expected = "504403158265495552";
+  i++; si_test[i].num = 0x0070000000000000; si_test[i].expected = "31525197391593472";
+  i++; si_test[i].num = 0x0007000000000000; si_test[i].expected = "1970324836974592";
+  i++; si_test[i].num = 0x0000700000000000; si_test[i].expected = "123145302310912";
+  i++; si_test[i].num = 0x0000070000000000; si_test[i].expected = "7696581394432";
+  i++; si_test[i].num = 0x0000007000000000; si_test[i].expected = "481036337152";
+  i++; si_test[i].num = 0x0000000700000000; si_test[i].expected = "30064771072";
+  i++; si_test[i].num = 0x0000000070000000; si_test[i].expected = "1879048192";
+  i++; si_test[i].num = 0x0000000007000000; si_test[i].expected = "117440512";
+  i++; si_test[i].num = 0x0000000000700000; si_test[i].expected = "7340032";
+  i++; si_test[i].num = 0x0000000000070000; si_test[i].expected = "458752";
+  i++; si_test[i].num = 0x0000000000007000; si_test[i].expected = "28672";
+  i++; si_test[i].num = 0x0000000000000700; si_test[i].expected = "1792";
+  i++; si_test[i].num = 0x0000000000000070; si_test[i].expected = "112";
+  i++; si_test[i].num = 0x0000000000000007; si_test[i].expected = "7";
+
+  i++; si_test[i].num = 0x0000000000000001; si_test[i].expected = "1";
+  i++; si_test[i].num = 0x0000000000000000; si_test[i].expected = "0";
+
+  i++; si_test[i].num = -0x7FFFFFFFFFFFFFFF -1; si_test[i].expected = "-9223372036854775808";
+  i++; si_test[i].num = -0x7FFFFFFFFFFFFFFE -1; si_test[i].expected = "-9223372036854775807";
+  i++; si_test[i].num = -0x7FFFFFFFFFFFFFFD -1; si_test[i].expected = "-9223372036854775806";
+  i++; si_test[i].num = -0x7FFFFFFF00000000 -1; si_test[i].expected = "-9223372032559808513";
+  i++; si_test[i].num = -0x000000007FFFFFFF -1; si_test[i].expected = "-2147483648";
+
+  i++; si_test[i].num = -0x7FFF000000000000 -1; si_test[i].expected = "-9223090561878065153";
+  i++; si_test[i].num = -0x00007FFF00000000 -1; si_test[i].expected = "-140733193388033";
+  i++; si_test[i].num = -0x000000007FFF0000 -1; si_test[i].expected = "-2147418113";
+  i++; si_test[i].num = -0x0000000000007FFF -1; si_test[i].expected = "-32768";
+
+  i++; si_test[i].num = -0x7F00000000000000 -1; si_test[i].expected = "-9151314442816847873";
+  i++; si_test[i].num = -0x007F000000000000 -1; si_test[i].expected = "-35747322042253313";
+  i++; si_test[i].num = -0x00007F0000000000 -1; si_test[i].expected = "-139637976727553";
+  i++; si_test[i].num = -0x0000007F00000000 -1; si_test[i].expected = "-545460846593";
+  i++; si_test[i].num = -0x000000007F000000 -1; si_test[i].expected = "-2130706433";
+  i++; si_test[i].num = -0x00000000007F0000 -1; si_test[i].expected = "-8323073";
+  i++; si_test[i].num = -0x0000000000007F00 -1; si_test[i].expected = "-32513";
+  i++; si_test[i].num = -0x000000000000007F -1; si_test[i].expected = "-128";
+
+  i++; si_test[i].num = -0x7000000000000000 -1; si_test[i].expected = "-8070450532247928833";
+  i++; si_test[i].num = -0x0700000000000000 -1; si_test[i].expected = "-504403158265495553";
+  i++; si_test[i].num = -0x0070000000000000 -1; si_test[i].expected = "-31525197391593473";
+  i++; si_test[i].num = -0x0007000000000000 -1; si_test[i].expected = "-1970324836974593";
+  i++; si_test[i].num = -0x0000700000000000 -1; si_test[i].expected = "-123145302310913";
+  i++; si_test[i].num = -0x0000070000000000 -1; si_test[i].expected = "-7696581394433";
+  i++; si_test[i].num = -0x0000007000000000 -1; si_test[i].expected = "-481036337153";
+  i++; si_test[i].num = -0x0000000700000000 -1; si_test[i].expected = "-30064771073";
+  i++; si_test[i].num = -0x0000000070000000 -1; si_test[i].expected = "-1879048193";
+  i++; si_test[i].num = -0x0000000007000000 -1; si_test[i].expected = "-117440513";
+  i++; si_test[i].num = -0x0000000000700000 -1; si_test[i].expected = "-7340033";
+  i++; si_test[i].num = -0x0000000000070000 -1; si_test[i].expected = "-458753";
+  i++; si_test[i].num = -0x0000000000007000 -1; si_test[i].expected = "-28673";
+  i++; si_test[i].num = -0x0000000000000700 -1; si_test[i].expected = "-1793";
+  i++; si_test[i].num = -0x0000000000000070 -1; si_test[i].expected = "-113";
+  i++; si_test[i].num = -0x0000000000000007 -1; si_test[i].expected = "-8";
+
+  i++; si_test[i].num =  0x0000000000000000 -1; si_test[i].expected = "-1";
+
+  num_sint_tests = i;
+
+#endif
+
+  for(i=1; i<=num_sint_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      si_test[i].result[j] = 'X';
+    si_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(si_test[i].result, "%d", si_test[i].num);
+
+    if(memcmp(si_test[i].result,
+              si_test[i].expected,
+              strlen(si_test[i].expected))) {
+      printf("signed int test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, si_test[i].expected, si_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() signed int tests OK!\n");
+  else
+    printf("Some curl_mprintf() signed int tests Failed!\n");
+
+  return failed;
+}
+
+
+static int test_unsigned_long_formatting(void)
+{
+  int i, j;
+  int num_ulong_tests;
+  int failed = 0;
+
+#if (CURL_SIZEOF_LONG == 2)
+
+  i=1; ul_test[i].num = 0xFFFFUL; ul_test[i].expected = "65535";
+  i++; ul_test[i].num = 0xFF00UL; ul_test[i].expected = "65280";
+  i++; ul_test[i].num = 0x00FFUL; ul_test[i].expected = "255";
+
+  i++; ul_test[i].num = 0xF000UL; ul_test[i].expected = "61440";
+  i++; ul_test[i].num = 0x0F00UL; ul_test[i].expected = "3840";
+  i++; ul_test[i].num = 0x00F0UL; ul_test[i].expected = "240";
+  i++; ul_test[i].num = 0x000FUL; ul_test[i].expected = "15";
+
+  i++; ul_test[i].num = 0xC000UL; ul_test[i].expected = "49152";
+  i++; ul_test[i].num = 0x0C00UL; ul_test[i].expected = "3072";
+  i++; ul_test[i].num = 0x00C0UL; ul_test[i].expected = "192";
+  i++; ul_test[i].num = 0x000CUL; ul_test[i].expected = "12";
+
+  i++; ul_test[i].num = 0x0001UL; ul_test[i].expected = "1";
+  i++; ul_test[i].num = 0x0000UL; ul_test[i].expected = "0";
+
+  num_ulong_tests = i;
+
+#elif (CURL_SIZEOF_LONG == 4)
+
+  i=1; ul_test[i].num = 0xFFFFFFFFUL; ul_test[i].expected = "4294967295";
+  i++; ul_test[i].num = 0xFFFF0000UL; ul_test[i].expected = "4294901760";
+  i++; ul_test[i].num = 0x0000FFFFUL; ul_test[i].expected = "65535";
+
+  i++; ul_test[i].num = 0xFF000000UL; ul_test[i].expected = "4278190080";
+  i++; ul_test[i].num = 0x00FF0000UL; ul_test[i].expected = "16711680";
+  i++; ul_test[i].num = 0x0000FF00UL; ul_test[i].expected = "65280";
+  i++; ul_test[i].num = 0x000000FFUL; ul_test[i].expected = "255";
+
+  i++; ul_test[i].num = 0xF0000000UL; ul_test[i].expected = "4026531840";
+  i++; ul_test[i].num = 0x0F000000UL; ul_test[i].expected = "251658240";
+  i++; ul_test[i].num = 0x00F00000UL; ul_test[i].expected = "15728640";
+  i++; ul_test[i].num = 0x000F0000UL; ul_test[i].expected = "983040";
+  i++; ul_test[i].num = 0x0000F000UL; ul_test[i].expected = "61440";
+  i++; ul_test[i].num = 0x00000F00UL; ul_test[i].expected = "3840";
+  i++; ul_test[i].num = 0x000000F0UL; ul_test[i].expected = "240";
+  i++; ul_test[i].num = 0x0000000FUL; ul_test[i].expected = "15";
+
+  i++; ul_test[i].num = 0xC0000000UL; ul_test[i].expected = "3221225472";
+  i++; ul_test[i].num = 0x0C000000UL; ul_test[i].expected = "201326592";
+  i++; ul_test[i].num = 0x00C00000UL; ul_test[i].expected = "12582912";
+  i++; ul_test[i].num = 0x000C0000UL; ul_test[i].expected = "786432";
+  i++; ul_test[i].num = 0x0000C000UL; ul_test[i].expected = "49152";
+  i++; ul_test[i].num = 0x00000C00UL; ul_test[i].expected = "3072";
+  i++; ul_test[i].num = 0x000000C0UL; ul_test[i].expected = "192";
+  i++; ul_test[i].num = 0x0000000CUL; ul_test[i].expected = "12";
+
+  i++; ul_test[i].num = 0x00000001UL; ul_test[i].expected = "1";
+  i++; ul_test[i].num = 0x00000000UL; ul_test[i].expected = "0";
+
+  num_ulong_tests = i;
+
+#elif (CURL_SIZEOF_LONG == 8)
+
+  i=1; ul_test[i].num = 0xFFFFFFFFFFFFFFFFUL; ul_test[i].expected = "18446744073709551615";
+  i++; ul_test[i].num = 0xFFFFFFFF00000000UL; ul_test[i].expected = "18446744069414584320";
+  i++; ul_test[i].num = 0x00000000FFFFFFFFUL; ul_test[i].expected = "4294967295";
+
+  i++; ul_test[i].num = 0xFFFF000000000000UL; ul_test[i].expected = "18446462598732840960";
+  i++; ul_test[i].num = 0x0000FFFF00000000UL; ul_test[i].expected = "281470681743360";
+  i++; ul_test[i].num = 0x00000000FFFF0000UL; ul_test[i].expected = "4294901760";
+  i++; ul_test[i].num = 0x000000000000FFFFUL; ul_test[i].expected = "65535";
+
+  i++; ul_test[i].num = 0xFF00000000000000UL; ul_test[i].expected = "18374686479671623680";
+  i++; ul_test[i].num = 0x00FF000000000000UL; ul_test[i].expected = "71776119061217280";
+  i++; ul_test[i].num = 0x0000FF0000000000UL; ul_test[i].expected = "280375465082880";
+  i++; ul_test[i].num = 0x000000FF00000000UL; ul_test[i].expected = "1095216660480";
+  i++; ul_test[i].num = 0x00000000FF000000UL; ul_test[i].expected = "4278190080";
+  i++; ul_test[i].num = 0x0000000000FF0000UL; ul_test[i].expected = "16711680";
+  i++; ul_test[i].num = 0x000000000000FF00UL; ul_test[i].expected = "65280";
+  i++; ul_test[i].num = 0x00000000000000FFUL; ul_test[i].expected = "255";
+
+  i++; ul_test[i].num = 0xF000000000000000UL; ul_test[i].expected = "17293822569102704640";
+  i++; ul_test[i].num = 0x0F00000000000000UL; ul_test[i].expected = "1080863910568919040";
+  i++; ul_test[i].num = 0x00F0000000000000UL; ul_test[i].expected = "67553994410557440";
+  i++; ul_test[i].num = 0x000F000000000000UL; ul_test[i].expected = "4222124650659840";
+  i++; ul_test[i].num = 0x0000F00000000000UL; ul_test[i].expected = "263882790666240";
+  i++; ul_test[i].num = 0x00000F0000000000UL; ul_test[i].expected = "16492674416640";
+  i++; ul_test[i].num = 0x000000F000000000UL; ul_test[i].expected = "1030792151040";
+  i++; ul_test[i].num = 0x0000000F00000000UL; ul_test[i].expected = "64424509440";
+  i++; ul_test[i].num = 0x00000000F0000000UL; ul_test[i].expected = "4026531840";
+  i++; ul_test[i].num = 0x000000000F000000UL; ul_test[i].expected = "251658240";
+  i++; ul_test[i].num = 0x0000000000F00000UL; ul_test[i].expected = "15728640";
+  i++; ul_test[i].num = 0x00000000000F0000UL; ul_test[i].expected = "983040";
+  i++; ul_test[i].num = 0x000000000000F000UL; ul_test[i].expected = "61440";
+  i++; ul_test[i].num = 0x0000000000000F00UL; ul_test[i].expected = "3840";
+  i++; ul_test[i].num = 0x00000000000000F0UL; ul_test[i].expected = "240";
+  i++; ul_test[i].num = 0x000000000000000FUL; ul_test[i].expected = "15";
+
+  i++; ul_test[i].num = 0xC000000000000000UL; ul_test[i].expected = "13835058055282163712";
+  i++; ul_test[i].num = 0x0C00000000000000UL; ul_test[i].expected = "864691128455135232";
+  i++; ul_test[i].num = 0x00C0000000000000UL; ul_test[i].expected = "54043195528445952";
+  i++; ul_test[i].num = 0x000C000000000000UL; ul_test[i].expected = "3377699720527872";
+  i++; ul_test[i].num = 0x0000C00000000000UL; ul_test[i].expected = "211106232532992";
+  i++; ul_test[i].num = 0x00000C0000000000UL; ul_test[i].expected = "13194139533312";
+  i++; ul_test[i].num = 0x000000C000000000UL; ul_test[i].expected = "824633720832";
+  i++; ul_test[i].num = 0x0000000C00000000UL; ul_test[i].expected = "51539607552";
+  i++; ul_test[i].num = 0x00000000C0000000UL; ul_test[i].expected = "3221225472";
+  i++; ul_test[i].num = 0x000000000C000000UL; ul_test[i].expected = "201326592";
+  i++; ul_test[i].num = 0x0000000000C00000UL; ul_test[i].expected = "12582912";
+  i++; ul_test[i].num = 0x00000000000C0000UL; ul_test[i].expected = "786432";
+  i++; ul_test[i].num = 0x000000000000C000UL; ul_test[i].expected = "49152";
+  i++; ul_test[i].num = 0x0000000000000C00UL; ul_test[i].expected = "3072";
+  i++; ul_test[i].num = 0x00000000000000C0UL; ul_test[i].expected = "192";
+  i++; ul_test[i].num = 0x000000000000000CUL; ul_test[i].expected = "12";
+
+  i++; ul_test[i].num = 0x00000001UL; ul_test[i].expected = "1";
+  i++; ul_test[i].num = 0x00000000UL; ul_test[i].expected = "0";
+
+  num_ulong_tests = i;
+
+#endif
+
+  for(i=1; i<=num_ulong_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      ul_test[i].result[j] = 'X';
+    ul_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(ul_test[i].result, "%lu", ul_test[i].num);
+
+    if(memcmp(ul_test[i].result,
+               ul_test[i].expected,
+               strlen(ul_test[i].expected))) {
+      printf("unsigned long test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, ul_test[i].expected, ul_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() unsigned long tests OK!\n");
+  else
+    printf("Some curl_mprintf() unsigned long tests Failed!\n");
+
+  return failed;
+}
+
+
+static int test_signed_long_formatting(void)
+{
+  int i, j;
+  int num_slong_tests;
+  int failed = 0;
+
+#if (CURL_SIZEOF_LONG == 2)
+
+  i=1; sl_test[i].num = 0x7FFFL; sl_test[i].expected = "32767";
+  i++; sl_test[i].num = 0x7FFEL; sl_test[i].expected = "32766";
+  i++; sl_test[i].num = 0x7FFDL; sl_test[i].expected = "32765";
+  i++; sl_test[i].num = 0x7F00L; sl_test[i].expected = "32512";
+  i++; sl_test[i].num = 0x07F0L; sl_test[i].expected = "2032";
+  i++; sl_test[i].num = 0x007FL; sl_test[i].expected = "127";
+
+  i++; sl_test[i].num = 0x7000L; sl_test[i].expected = "28672";
+  i++; sl_test[i].num = 0x0700L; sl_test[i].expected = "1792";
+  i++; sl_test[i].num = 0x0070L; sl_test[i].expected = "112";
+  i++; sl_test[i].num = 0x0007L; sl_test[i].expected = "7";
+
+  i++; sl_test[i].num = 0x5000L; sl_test[i].expected = "20480";
+  i++; sl_test[i].num = 0x0500L; sl_test[i].expected = "1280";
+  i++; sl_test[i].num = 0x0050L; sl_test[i].expected = "80";
+  i++; sl_test[i].num = 0x0005L; sl_test[i].expected = "5";
+
+  i++; sl_test[i].num = 0x0001L; sl_test[i].expected = "1";
+  i++; sl_test[i].num = 0x0000L; sl_test[i].expected = "0";
+
+  i++; sl_test[i].num = -0x7FFFL -1L; sl_test[i].expected = "-32768";
+  i++; sl_test[i].num = -0x7FFEL -1L; sl_test[i].expected = "-32767";
+  i++; sl_test[i].num = -0x7FFDL -1L; sl_test[i].expected = "-32766";
+  i++; sl_test[i].num = -0x7F00L -1L; sl_test[i].expected = "-32513";
+  i++; sl_test[i].num = -0x07F0L -1L; sl_test[i].expected = "-2033";
+  i++; sl_test[i].num = -0x007FL -1L; sl_test[i].expected = "-128";
+
+  i++; sl_test[i].num = -0x7000L -1L; sl_test[i].expected = "-28673";
+  i++; sl_test[i].num = -0x0700L -1L; sl_test[i].expected = "-1793";
+  i++; sl_test[i].num = -0x0070L -1L; sl_test[i].expected = "-113";
+  i++; sl_test[i].num = -0x0007L -1L; sl_test[i].expected = "-8";
+
+  i++; sl_test[i].num = -0x5000L -1L; sl_test[i].expected = "-20481";
+  i++; sl_test[i].num = -0x0500L -1L; sl_test[i].expected = "-1281";
+  i++; sl_test[i].num = -0x0050L -1L; sl_test[i].expected = "-81";
+  i++; sl_test[i].num = -0x0005L -1L; sl_test[i].expected = "-6";
+
+  i++; sl_test[i].num =  0x0000L -1L; sl_test[i].expected = "-1";
+
+  num_slong_tests = i;
+
+#elif (CURL_SIZEOF_LONG == 4)
+
+  i=1; sl_test[i].num = 0x7FFFFFFFL; sl_test[i].expected = "2147483647";
+  i++; sl_test[i].num = 0x7FFFFFFEL; sl_test[i].expected = "2147483646";
+  i++; sl_test[i].num = 0x7FFFFFFDL; sl_test[i].expected = "2147483645";
+  i++; sl_test[i].num = 0x7FFF0000L; sl_test[i].expected = "2147418112";
+  i++; sl_test[i].num = 0x00007FFFL; sl_test[i].expected = "32767";
+
+  i++; sl_test[i].num = 0x7F000000L; sl_test[i].expected = "2130706432";
+  i++; sl_test[i].num = 0x007F0000L; sl_test[i].expected = "8323072";
+  i++; sl_test[i].num = 0x00007F00L; sl_test[i].expected = "32512";
+  i++; sl_test[i].num = 0x0000007FL; sl_test[i].expected = "127";
+
+  i++; sl_test[i].num = 0x70000000L; sl_test[i].expected = "1879048192";
+  i++; sl_test[i].num = 0x07000000L; sl_test[i].expected = "117440512";
+  i++; sl_test[i].num = 0x00700000L; sl_test[i].expected = "7340032";
+  i++; sl_test[i].num = 0x00070000L; sl_test[i].expected = "458752";
+  i++; sl_test[i].num = 0x00007000L; sl_test[i].expected = "28672";
+  i++; sl_test[i].num = 0x00000700L; sl_test[i].expected = "1792";
+  i++; sl_test[i].num = 0x00000070L; sl_test[i].expected = "112";
+  i++; sl_test[i].num = 0x00000007L; sl_test[i].expected = "7";
+
+  i++; sl_test[i].num = 0x50000000L; sl_test[i].expected = "1342177280";
+  i++; sl_test[i].num = 0x05000000L; sl_test[i].expected = "83886080";
+  i++; sl_test[i].num = 0x00500000L; sl_test[i].expected = "5242880";
+  i++; sl_test[i].num = 0x00050000L; sl_test[i].expected = "327680";
+  i++; sl_test[i].num = 0x00005000L; sl_test[i].expected = "20480";
+  i++; sl_test[i].num = 0x00000500L; sl_test[i].expected = "1280";
+  i++; sl_test[i].num = 0x00000050L; sl_test[i].expected = "80";
+  i++; sl_test[i].num = 0x00000005L; sl_test[i].expected = "5";
+
+  i++; sl_test[i].num = 0x00000001L; sl_test[i].expected = "1";
+  i++; sl_test[i].num = 0x00000000L; sl_test[i].expected = "0";
+
+  i++; sl_test[i].num = -0x7FFFFFFFL -1L; sl_test[i].expected = "-2147483648";
+  i++; sl_test[i].num = -0x7FFFFFFEL -1L; sl_test[i].expected = "-2147483647";
+  i++; sl_test[i].num = -0x7FFFFFFDL -1L; sl_test[i].expected = "-2147483646";
+  i++; sl_test[i].num = -0x7FFF0000L -1L; sl_test[i].expected = "-2147418113";
+  i++; sl_test[i].num = -0x00007FFFL -1L; sl_test[i].expected = "-32768";
+
+  i++; sl_test[i].num = -0x7F000000L -1L; sl_test[i].expected = "-2130706433";
+  i++; sl_test[i].num = -0x007F0000L -1L; sl_test[i].expected = "-8323073";
+  i++; sl_test[i].num = -0x00007F00L -1L; sl_test[i].expected = "-32513";
+  i++; sl_test[i].num = -0x0000007FL -1L; sl_test[i].expected = "-128";
+
+  i++; sl_test[i].num = -0x70000000L -1L; sl_test[i].expected = "-1879048193";
+  i++; sl_test[i].num = -0x07000000L -1L; sl_test[i].expected = "-117440513";
+  i++; sl_test[i].num = -0x00700000L -1L; sl_test[i].expected = "-7340033";
+  i++; sl_test[i].num = -0x00070000L -1L; sl_test[i].expected = "-458753";
+  i++; sl_test[i].num = -0x00007000L -1L; sl_test[i].expected = "-28673";
+  i++; sl_test[i].num = -0x00000700L -1L; sl_test[i].expected = "-1793";
+  i++; sl_test[i].num = -0x00000070L -1L; sl_test[i].expected = "-113";
+  i++; sl_test[i].num = -0x00000007L -1L; sl_test[i].expected = "-8";
+
+  i++; sl_test[i].num = -0x50000000L -1L; sl_test[i].expected = "-1342177281";
+  i++; sl_test[i].num = -0x05000000L -1L; sl_test[i].expected = "-83886081";
+  i++; sl_test[i].num = -0x00500000L -1L; sl_test[i].expected = "-5242881";
+  i++; sl_test[i].num = -0x00050000L -1L; sl_test[i].expected = "-327681";
+  i++; sl_test[i].num = -0x00005000L -1L; sl_test[i].expected = "-20481";
+  i++; sl_test[i].num = -0x00000500L -1L; sl_test[i].expected = "-1281";
+  i++; sl_test[i].num = -0x00000050L -1L; sl_test[i].expected = "-81";
+  i++; sl_test[i].num = -0x00000005L -1L; sl_test[i].expected = "-6";
+
+  i++; sl_test[i].num =  0x00000000L -1L; sl_test[i].expected = "-1";
+
+  num_slong_tests = i;
+
+#elif (CURL_SIZEOF_LONG == 8)
+
+  i=1; sl_test[i].num = 0x7FFFFFFFFFFFFFFFL; sl_test[i].expected = "9223372036854775807";
+  i++; sl_test[i].num = 0x7FFFFFFFFFFFFFFEL; sl_test[i].expected = "9223372036854775806";
+  i++; sl_test[i].num = 0x7FFFFFFFFFFFFFFDL; sl_test[i].expected = "9223372036854775805";
+  i++; sl_test[i].num = 0x7FFFFFFF00000000L; sl_test[i].expected = "9223372032559808512";
+  i++; sl_test[i].num = 0x000000007FFFFFFFL; sl_test[i].expected = "2147483647";
+
+  i++; sl_test[i].num = 0x7FFF000000000000L; sl_test[i].expected = "9223090561878065152";
+  i++; sl_test[i].num = 0x00007FFF00000000L; sl_test[i].expected = "140733193388032";
+  i++; sl_test[i].num = 0x000000007FFF0000L; sl_test[i].expected = "2147418112";
+  i++; sl_test[i].num = 0x0000000000007FFFL; sl_test[i].expected = "32767";
+
+  i++; sl_test[i].num = 0x7F00000000000000L; sl_test[i].expected = "9151314442816847872";
+  i++; sl_test[i].num = 0x007F000000000000L; sl_test[i].expected = "35747322042253312";
+  i++; sl_test[i].num = 0x00007F0000000000L; sl_test[i].expected = "139637976727552";
+  i++; sl_test[i].num = 0x0000007F00000000L; sl_test[i].expected = "545460846592";
+  i++; sl_test[i].num = 0x000000007F000000L; sl_test[i].expected = "2130706432";
+  i++; sl_test[i].num = 0x00000000007F0000L; sl_test[i].expected = "8323072";
+  i++; sl_test[i].num = 0x0000000000007F00L; sl_test[i].expected = "32512";
+  i++; sl_test[i].num = 0x000000000000007FL; sl_test[i].expected = "127";
+
+  i++; sl_test[i].num = 0x7000000000000000L; sl_test[i].expected = "8070450532247928832";
+  i++; sl_test[i].num = 0x0700000000000000L; sl_test[i].expected = "504403158265495552";
+  i++; sl_test[i].num = 0x0070000000000000L; sl_test[i].expected = "31525197391593472";
+  i++; sl_test[i].num = 0x0007000000000000L; sl_test[i].expected = "1970324836974592";
+  i++; sl_test[i].num = 0x0000700000000000L; sl_test[i].expected = "123145302310912";
+  i++; sl_test[i].num = 0x0000070000000000L; sl_test[i].expected = "7696581394432";
+  i++; sl_test[i].num = 0x0000007000000000L; sl_test[i].expected = "481036337152";
+  i++; sl_test[i].num = 0x0000000700000000L; sl_test[i].expected = "30064771072";
+  i++; sl_test[i].num = 0x0000000070000000L; sl_test[i].expected = "1879048192";
+  i++; sl_test[i].num = 0x0000000007000000L; sl_test[i].expected = "117440512";
+  i++; sl_test[i].num = 0x0000000000700000L; sl_test[i].expected = "7340032";
+  i++; sl_test[i].num = 0x0000000000070000L; sl_test[i].expected = "458752";
+  i++; sl_test[i].num = 0x0000000000007000L; sl_test[i].expected = "28672";
+  i++; sl_test[i].num = 0x0000000000000700L; sl_test[i].expected = "1792";
+  i++; sl_test[i].num = 0x0000000000000070L; sl_test[i].expected = "112";
+  i++; sl_test[i].num = 0x0000000000000007L; sl_test[i].expected = "7";
+
+  i++; sl_test[i].num = 0x0000000000000001L; sl_test[i].expected = "1";
+  i++; sl_test[i].num = 0x0000000000000000L; sl_test[i].expected = "0";
+
+  i++; sl_test[i].num = -0x7FFFFFFFFFFFFFFFL -1L; sl_test[i].expected = "-9223372036854775808";
+  i++; sl_test[i].num = -0x7FFFFFFFFFFFFFFEL -1L; sl_test[i].expected = "-9223372036854775807";
+  i++; sl_test[i].num = -0x7FFFFFFFFFFFFFFDL -1L; sl_test[i].expected = "-9223372036854775806";
+  i++; sl_test[i].num = -0x7FFFFFFF00000000L -1L; sl_test[i].expected = "-9223372032559808513";
+  i++; sl_test[i].num = -0x000000007FFFFFFFL -1L; sl_test[i].expected = "-2147483648";
+
+  i++; sl_test[i].num = -0x7FFF000000000000L -1L; sl_test[i].expected = "-9223090561878065153";
+  i++; sl_test[i].num = -0x00007FFF00000000L -1L; sl_test[i].expected = "-140733193388033";
+  i++; sl_test[i].num = -0x000000007FFF0000L -1L; sl_test[i].expected = "-2147418113";
+  i++; sl_test[i].num = -0x0000000000007FFFL -1L; sl_test[i].expected = "-32768";
+
+  i++; sl_test[i].num = -0x7F00000000000000L -1L; sl_test[i].expected = "-9151314442816847873";
+  i++; sl_test[i].num = -0x007F000000000000L -1L; sl_test[i].expected = "-35747322042253313";
+  i++; sl_test[i].num = -0x00007F0000000000L -1L; sl_test[i].expected = "-139637976727553";
+  i++; sl_test[i].num = -0x0000007F00000000L -1L; sl_test[i].expected = "-545460846593";
+  i++; sl_test[i].num = -0x000000007F000000L -1L; sl_test[i].expected = "-2130706433";
+  i++; sl_test[i].num = -0x00000000007F0000L -1L; sl_test[i].expected = "-8323073";
+  i++; sl_test[i].num = -0x0000000000007F00L -1L; sl_test[i].expected = "-32513";
+  i++; sl_test[i].num = -0x000000000000007FL -1L; sl_test[i].expected = "-128";
+
+  i++; sl_test[i].num = -0x7000000000000000L -1L; sl_test[i].expected = "-8070450532247928833";
+  i++; sl_test[i].num = -0x0700000000000000L -1L; sl_test[i].expected = "-504403158265495553";
+  i++; sl_test[i].num = -0x0070000000000000L -1L; sl_test[i].expected = "-31525197391593473";
+  i++; sl_test[i].num = -0x0007000000000000L -1L; sl_test[i].expected = "-1970324836974593";
+  i++; sl_test[i].num = -0x0000700000000000L -1L; sl_test[i].expected = "-123145302310913";
+  i++; sl_test[i].num = -0x0000070000000000L -1L; sl_test[i].expected = "-7696581394433";
+  i++; sl_test[i].num = -0x0000007000000000L -1L; sl_test[i].expected = "-481036337153";
+  i++; sl_test[i].num = -0x0000000700000000L -1L; sl_test[i].expected = "-30064771073";
+  i++; sl_test[i].num = -0x0000000070000000L -1L; sl_test[i].expected = "-1879048193";
+  i++; sl_test[i].num = -0x0000000007000000L -1L; sl_test[i].expected = "-117440513";
+  i++; sl_test[i].num = -0x0000000000700000L -1L; sl_test[i].expected = "-7340033";
+  i++; sl_test[i].num = -0x0000000000070000L -1L; sl_test[i].expected = "-458753";
+  i++; sl_test[i].num = -0x0000000000007000L -1L; sl_test[i].expected = "-28673";
+  i++; sl_test[i].num = -0x0000000000000700L -1L; sl_test[i].expected = "-1793";
+  i++; sl_test[i].num = -0x0000000000000070L -1L; sl_test[i].expected = "-113";
+  i++; sl_test[i].num = -0x0000000000000007L -1L; sl_test[i].expected = "-8";
+
+  i++; sl_test[i].num =  0x0000000000000000L -1L; sl_test[i].expected = "-1";
+
+  num_slong_tests = i;
+
+#endif
+
+  for(i=1; i<=num_slong_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      sl_test[i].result[j] = 'X';
+    sl_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(sl_test[i].result, "%ld", sl_test[i].num);
+
+    if(memcmp(sl_test[i].result,
+              sl_test[i].expected,
+              strlen(sl_test[i].expected))) {
+      printf("signed long test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, sl_test[i].expected, sl_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() signed long tests OK!\n");
+  else
+    printf("Some curl_mprintf() signed long tests Failed!\n");
+
+  return failed;
+}
+
+
+static int test_curl_off_t_formatting(void)
+{
+  int i, j;
+  int num_cofft_tests;
+  int failed = 0;
+
+#if (CURL_SIZEOF_CURL_OFF_T == 2)
+
+  i=1; co_test[i].num = MPRNT_OFF_T_C(0x7FFF); co_test[i].expected = "32767";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFE); co_test[i].expected = "32766";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFD); co_test[i].expected = "32765";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7F00); co_test[i].expected = "32512";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x07F0); co_test[i].expected = "2032";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x007F); co_test[i].expected = "127";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7000); co_test[i].expected = "28672";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0700); co_test[i].expected = "1792";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0070); co_test[i].expected = "112";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0007); co_test[i].expected = "7";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x5000); co_test[i].expected = "20480";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0500); co_test[i].expected = "1280";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0050); co_test[i].expected = "80";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0005); co_test[i].expected = "5";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0001); co_test[i].expected = "1";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000); co_test[i].expected = "0";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFF) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32768";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFE) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32767";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFD) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32766";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7F00) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32513";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x07F0) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2033";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x007F) -MPRNT_OFF_T_C(1); co_test[i].expected = "-128";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-28673";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0700) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1793";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0070) -MPRNT_OFF_T_C(1); co_test[i].expected = "-113";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0007) -MPRNT_OFF_T_C(1); co_test[i].expected = "-8";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x5000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-20481";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0500) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1281";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0050) -MPRNT_OFF_T_C(1); co_test[i].expected = "-81";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0005) -MPRNT_OFF_T_C(1); co_test[i].expected = "-6";
+
+  i++; co_test[i].num =  MPRNT_OFF_T_C(0x0000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1";
+
+  num_cofft_tests = i;
+
+#elif (CURL_SIZEOF_CURL_OFF_T == 4)
+
+  i=1; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFF); co_test[i].expected = "2147483647";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFE); co_test[i].expected = "2147483646";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFD); co_test[i].expected = "2147483645";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFF0000); co_test[i].expected = "2147418112";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00007FFF); co_test[i].expected = "32767";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7F000000); co_test[i].expected = "2130706432";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x007F0000); co_test[i].expected = "8323072";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00007F00); co_test[i].expected = "32512";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000007F); co_test[i].expected = "127";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x70000000); co_test[i].expected = "1879048192";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x07000000); co_test[i].expected = "117440512";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00700000); co_test[i].expected = "7340032";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00070000); co_test[i].expected = "458752";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00007000); co_test[i].expected = "28672";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000700); co_test[i].expected = "1792";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000070); co_test[i].expected = "112";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000007); co_test[i].expected = "7";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x50000000); co_test[i].expected = "1342177280";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x05000000); co_test[i].expected = "83886080";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00500000); co_test[i].expected = "5242880";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00050000); co_test[i].expected = "327680";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00005000); co_test[i].expected = "20480";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000500); co_test[i].expected = "1280";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000050); co_test[i].expected = "80";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000005); co_test[i].expected = "5";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000001); co_test[i].expected = "1";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000000); co_test[i].expected = "0";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFF) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2147483648";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFE) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2147483647";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFD) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2147483646";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFF0000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2147418113";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00007FFF) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32768";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7F000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2130706433";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x007F0000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-8323073";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00007F00) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32513";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000007F) -MPRNT_OFF_T_C(1); co_test[i].expected = "-128";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x70000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1879048193";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x07000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-117440513";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00700000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-7340033";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00070000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-458753";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00007000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-28673";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000700) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1793";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000070) -MPRNT_OFF_T_C(1); co_test[i].expected = "-113";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000007) -MPRNT_OFF_T_C(1); co_test[i].expected = "-8";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x50000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1342177281";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x05000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-83886081";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00500000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-5242881";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00050000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-327681";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00005000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-20481";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000500) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1281";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000050) -MPRNT_OFF_T_C(1); co_test[i].expected = "-81";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000005) -MPRNT_OFF_T_C(1); co_test[i].expected = "-6";
+
+  i++; co_test[i].num =  MPRNT_OFF_T_C(0x00000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1";
+
+  num_cofft_tests = i;
+
+#elif (CURL_SIZEOF_CURL_OFF_T == 8)
+
+  i=1; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFFFFFFFFFF); co_test[i].expected = "9223372036854775807";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFFFFFFFFFE); co_test[i].expected = "9223372036854775806";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFFFFFFFFFD); co_test[i].expected = "9223372036854775805";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFFFFFF00000000); co_test[i].expected = "9223372032559808512";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x000000007FFFFFFF); co_test[i].expected = "2147483647";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7FFF000000000000); co_test[i].expected = "9223090561878065152";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00007FFF00000000); co_test[i].expected = "140733193388032";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x000000007FFF0000); co_test[i].expected = "2147418112";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000007FFF); co_test[i].expected = "32767";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7F00000000000000); co_test[i].expected = "9151314442816847872";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x007F000000000000); co_test[i].expected = "35747322042253312";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00007F0000000000); co_test[i].expected = "139637976727552";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000007F00000000); co_test[i].expected = "545460846592";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x000000007F000000); co_test[i].expected = "2130706432";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x00000000007F0000); co_test[i].expected = "8323072";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000007F00); co_test[i].expected = "32512";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x000000000000007F); co_test[i].expected = "127";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x7000000000000000); co_test[i].expected = "8070450532247928832";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0700000000000000); co_test[i].expected = "504403158265495552";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0070000000000000); co_test[i].expected = "31525197391593472";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0007000000000000); co_test[i].expected = "1970324836974592";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000700000000000); co_test[i].expected = "123145302310912";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000070000000000); co_test[i].expected = "7696581394432";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000007000000000); co_test[i].expected = "481036337152";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000700000000); co_test[i].expected = "30064771072";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000070000000); co_test[i].expected = "1879048192";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000007000000); co_test[i].expected = "117440512";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000700000); co_test[i].expected = "7340032";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000070000); co_test[i].expected = "458752";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000007000); co_test[i].expected = "28672";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000000700); co_test[i].expected = "1792";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000000070); co_test[i].expected = "112";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000000007); co_test[i].expected = "7";
+
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000000001); co_test[i].expected = "1";
+  i++; co_test[i].num = MPRNT_OFF_T_C(0x0000000000000000); co_test[i].expected = "0";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFFFFFFFFFF) -MPRNT_OFF_T_C(1); co_test[i].expected = "-9223372036854775808";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFFFFFFFFFE) -MPRNT_OFF_T_C(1); co_test[i].expected = "-9223372036854775807";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFFFFFFFFFD) -MPRNT_OFF_T_C(1); co_test[i].expected = "-9223372036854775806";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFFFFFF00000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-9223372032559808513";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x000000007FFFFFFF) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2147483648";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7FFF000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-9223090561878065153";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00007FFF00000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-140733193388033";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x000000007FFF0000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2147418113";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000007FFF) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32768";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7F00000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-9151314442816847873";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x007F000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-35747322042253313";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00007F0000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-139637976727553";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000007F00000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-545460846593";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x000000007F000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-2130706433";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x00000000007F0000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-8323073";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000007F00) -MPRNT_OFF_T_C(1); co_test[i].expected = "-32513";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x000000000000007F) -MPRNT_OFF_T_C(1); co_test[i].expected = "-128";
+
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x7000000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-8070450532247928833";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0700000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-504403158265495553";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0070000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-31525197391593473";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0007000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1970324836974593";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000700000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-123145302310913";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000070000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-7696581394433";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000007000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-481036337153";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000700000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-30064771073";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000070000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1879048193";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000007000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-117440513";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000700000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-7340033";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000070000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-458753";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000007000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-28673";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000000700) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1793";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000000070) -MPRNT_OFF_T_C(1); co_test[i].expected = "-113";
+  i++; co_test[i].num = -MPRNT_OFF_T_C(0x0000000000000007) -MPRNT_OFF_T_C(1); co_test[i].expected = "-8";
+
+  i++; co_test[i].num =  MPRNT_OFF_T_C(0x0000000000000000) -MPRNT_OFF_T_C(1); co_test[i].expected = "-1";
+
+  num_cofft_tests = i;
+
+#endif
+
+  for(i=1; i<=num_cofft_tests; i++) {
+
+    for(j=0; j<BUFSZ; j++)
+      co_test[i].result[j] = 'X';
+    co_test[i].result[BUFSZ-1] = '\0';
+
+    (void)curl_msprintf(co_test[i].result, "%" CURL_FORMAT_CURL_OFF_T,
+                        co_test[i].num);
+
+    if(memcmp(co_test[i].result,
+              co_test[i].expected,
+              strlen(co_test[i].expected))) {
+      printf("curl_off_t test #%.2d: Failed (Expected: %s Got: %s)\n",
+             i, co_test[i].expected, co_test[i].result);
+      failed++;
+    }
+
+  }
+
+  if(!failed)
+    printf("All curl_mprintf() curl_off_t tests OK!\n");
+  else
+    printf("Some curl_mprintf() curl_off_t tests Failed!\n");
+
+  return failed;
+}
+
+static int _string_check(int linenumber, char *buf, const char *buf2)
+{
+  if(strcmp(buf, buf2)) {
+    /* they shouldn't differ */
+    printf("sprintf line %d failed:\nwe      '%s'\nsystem: '%s'\n",
+           linenumber, buf, buf2);
+    return 1;
+  }
+  return 0;
+}
+#define string_check(x,y) _string_check(__LINE__, x, y)
+
+static int _strlen_check(int linenumber, char *buf, size_t len)
+{
+  size_t buflen = strlen(buf);
+  if(len != buflen) {
+    /* they shouldn't differ */
+    printf("sprintf strlen:%d failed:\nwe '%d'\nsystem: '%d'\n",
+           linenumber, buflen, len);
+    return 1;
+  }
+  return 0;
+}
+
+#define strlen_check(x,y) _strlen_check(__LINE__, x, y)
+
+/*
+ * The output strings in this test need to have been verified with a system
+ * sprintf() before used here.
+ */
+static int test_string_formatting(void)
+{
+  int errors = 0;
+  char buf[256];
+  curl_msnprintf(buf, sizeof(buf), "%0*d%s", 2, 9, "foo");
+  errors += string_check(buf, "09foo");
+
+  curl_msnprintf(buf, sizeof(buf), "%*.*s", 5, 2, "foo");
+  errors += string_check(buf, "   fo");
+
+  curl_msnprintf(buf, sizeof(buf), "%*.*s", 2, 5, "foo");
+  errors += string_check(buf, "foo");
+
+  curl_msnprintf(buf, sizeof(buf), "%*.*s", 0, 10, "foo");
+  errors += string_check(buf, "foo");
+
+  curl_msnprintf(buf, sizeof(buf), "%-10s", "foo");
+  errors += string_check(buf, "foo       ");
+
+  curl_msnprintf(buf, sizeof(buf), "%10s", "foo");
+  errors += string_check(buf, "       foo");
+
+  curl_msnprintf(buf, sizeof(buf), "%*.*s", -10, -10, "foo");
+  errors += string_check(buf, "foo       ");
+
+  if(!errors)
+    printf("All curl_mprintf() strings tests OK!\n");
+  else
+    printf("Some curl_mprintf() string tests Failed!\n");
+
+  return errors;
+}
+
+static int test_weird_arguments(void)
+{
+  int errors = 0;
+  char buf[256];
+  int rc;
+
+  /* MAX_PARAMETERS is 128, try exact 128! */
+  rc = curl_msnprintf(buf, sizeof(buf),
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 1 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 2 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 3 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 4 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 5 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 6 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 7 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 8 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 9 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 10 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 11 */
+                      "%d%d%d%d%d%d%d%d"     /* 8 */
+                      ,
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 1 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 2 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 3 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 4 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 5 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 6 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 7 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 8 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 9 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 10 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 11 */
+                      0, 1, 2, 3, 4, 5, 6, 7); /* 8 */
+
+  if(rc != 128) {
+    printf("curl_mprintf() returned %d and not 128!\n", rc);
+    errors++;
+  }
+
+  errors += string_check(buf,
+                         "0123456789" /* 10 */
+                         "0123456789" /* 10 1 */
+                         "0123456789" /* 10 2 */
+                         "0123456789" /* 10 3 */
+                         "0123456789" /* 10 4 */
+                         "0123456789" /* 10 5 */
+                         "0123456789" /* 10 6 */
+                         "0123456789" /* 10 7 */
+                         "0123456789" /* 10 8 */
+                         "0123456789" /* 10 9 */
+                         "0123456789" /* 10 10*/
+                         "0123456789" /* 10 11 */
+                         "01234567"   /* 8 */
+    );
+
+  /* MAX_PARAMETERS is 128, try more! */
+  buf[0] = 0;
+  rc = curl_msnprintf(buf, sizeof(buf),
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 1 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 2 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 3 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 4 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 5 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 6 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 7 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 8 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 9 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 10 */
+                      "%d%d%d%d%d%d%d%d%d%d" /* 10 11 */
+                      "%d%d%d%d%d%d%d%d%d"   /* 9 */
+                      ,
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 1 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 2 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 3 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 4 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 5 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 6 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 7 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 8 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 9 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 10 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8, 9, /* 10 11 */
+                      0, 1, 2, 3, 4, 5, 6, 7, 8);   /* 9 */
+
+  if(rc != -1) {
+    printf("curl_mprintf() returned %d and not -1!\n", rc);
+    errors++;
+  }
+
+  errors += string_check(buf, "");
+
+  if(errors)
+    printf("Some curl_mprintf() weird arguments tests failed!\n");
+
+  return errors;
+}
+
+/* DBL_MAX value from Linux */
+#define MAXIMIZE -1.7976931348623157081452E+308
+
+static int test_float_formatting(void)
+{
+  int errors = 0;
+  char buf[512]; /* larger than max float size */
+  curl_msnprintf(buf, sizeof(buf), "%f", 9.0);
+  errors += string_check(buf, "9.000000");
+
+  curl_msnprintf(buf, sizeof(buf), "%.1f", 9.1);
+  errors += string_check(buf, "9.1");
+
+  curl_msnprintf(buf, sizeof(buf), "%.2f", 9.1);
+  errors += string_check(buf, "9.10");
+
+  curl_msnprintf(buf, sizeof(buf), "%.0f", 9.1);
+  errors += string_check(buf, "9");
+
+  curl_msnprintf(buf, sizeof(buf), "%0f", 9.1);
+  errors += string_check(buf, "9.100000");
+
+  curl_msnprintf(buf, sizeof(buf), "%10f", 9.1);
+  errors += string_check(buf, "  9.100000");
+
+  curl_msnprintf(buf, sizeof(buf), "%10.3f", 9.1);
+  errors += string_check(buf, "     9.100");
+
+  curl_msnprintf(buf, sizeof(buf), "%-10.3f", 9.1);
+  errors += string_check(buf, "9.100     ");
+
+  curl_msnprintf(buf, sizeof(buf), "%-10.3f", 9.123456);
+  errors += string_check(buf, "9.123     ");
+
+  curl_msnprintf(buf, sizeof(buf), "%.-2f", 9.1);
+  errors += string_check(buf, "9.100000");
+
+  curl_msnprintf(buf, sizeof(buf), "%*f", 10, 9.1);
+  errors += string_check(buf, "  9.100000");
+
+  curl_msnprintf(buf, sizeof(buf), "%*f", 3, 9.1);
+  errors += string_check(buf, "9.100000");
+
+  curl_msnprintf(buf, sizeof(buf), "%*f", 6, 9.2987654);
+  errors += string_check(buf, "9.298765");
+
+  curl_msnprintf(buf, sizeof(buf), "%*f", 6, 9.298765);
+  errors += string_check(buf, "9.298765");
+
+  curl_msnprintf(buf, sizeof(buf), "%*f", 6, 9.29876);
+  errors += string_check(buf, "9.298760");
+
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 6, 9.2987654);
+  errors += string_check(buf, "9.298765");
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 5, 9.2987654);
+  errors += string_check(buf, "9.29877");
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 4, 9.2987654);
+  errors += string_check(buf, "9.2988");
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 3, 9.2987654);
+  errors += string_check(buf, "9.299");
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 2, 9.2987654);
+  errors += string_check(buf, "9.30");
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 1, 9.2987654);
+  errors += string_check(buf, "9.3");
+  curl_msnprintf(buf, sizeof(buf), "%.*f", 0, 9.2987654);
+  errors += string_check(buf, "9");
+
+  /* very large precisions easily turn into system specific outputs so we only
+     check the output buffer length here as we know the internal limit */
+
+  curl_msnprintf(buf, sizeof(buf), "%.*f", (1<<30), 9.2987654);
+  errors += strlen_check(buf, 325);
+
+  curl_msnprintf(buf, sizeof(buf), "%10000.10000f", 9.2987654);
+  errors += strlen_check(buf, 325);
+
+  curl_msnprintf(buf, sizeof(buf), "%240.10000f",
+                 123456789123456789123456789.2987654);
+  errors += strlen_check(buf, 325);
+
+  /* check negative when used signed */
+  curl_msnprintf(buf, sizeof(buf), "%*f", INT_MIN, 9.1);
+  errors += string_check(buf, "9.100000");
+
+  /* curl_msnprintf() limits a single float output to 325 bytes maximum
+     width */
+  curl_msnprintf(buf, sizeof(buf), "%*f", (1<<30), 9.1);
+  errors += string_check(buf, "                                                                                                                                                                                                                                                                                                                             9.100000");
+  curl_msnprintf(buf, sizeof(buf), "%100000f", 9.1);
+  errors += string_check(buf, "                                                                                                                                                                                                                                                                                                                             9.100000");
+
+  curl_msnprintf(buf, sizeof(buf), "%f", MAXIMIZE);
+  errors += strlen_check(buf, 317);
+
+  curl_msnprintf(buf, 2, "%f", MAXIMIZE);
+  errors += strlen_check(buf, 1);
+  curl_msnprintf(buf, 3, "%f", MAXIMIZE);
+  errors += strlen_check(buf, 2);
+  curl_msnprintf(buf, 4, "%f", MAXIMIZE);
+  errors += strlen_check(buf, 3);
+  curl_msnprintf(buf, 5, "%f", MAXIMIZE);
+  errors += strlen_check(buf, 4);
+  curl_msnprintf(buf, 6, "%f", MAXIMIZE);
+  errors += strlen_check(buf, 5);
+
+  if(!errors)
+    printf("All float strings tests OK!\n");
+  else
+    printf("test_float_formatting Failed!\n");
+
+  return errors;
+}
+/* !checksrc! enable LONGLINE */
+
+int test(char *URL)
+{
+  int errors = 0;
+  (void)URL; /* not used */
+
+#ifdef HAVE_SETLOCALE
+  /*
+   * The test makes assumptions about the numeric locale (specifically,
+   * RADIXCHAR) so set it to a known working (and portable) one.
+   */
+  setlocale(LC_NUMERIC, "C");
+#endif
+
+  errors += test_weird_arguments();
+
+  errors += test_unsigned_short_formatting();
+
+  errors += test_signed_short_formatting();
+
+  errors += test_unsigned_int_formatting();
+
+  errors += test_signed_int_formatting();
+
+  errors += test_unsigned_long_formatting();
+
+  errors += test_signed_long_formatting();
+
+  errors += test_curl_off_t_formatting();
+
+  errors += test_string_formatting();
+
+  errors += test_float_formatting();
+
+  if(errors)
+    return TEST_ERR_MAJOR_BAD;
+  else
+    return 0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib558.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib558.c
new file mode 100644
index 0000000..09a50d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib558.c
@@ -0,0 +1,53 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  unsigned char a[] = {0x2f, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
+                       0x91, 0xa2, 0xb3, 0xc4, 0xd5, 0xe6, 0xf7};
+  CURLcode res = CURLE_OK;
+  char *ptr = NULL;
+  int asize;
+
+  (void)URL; /* we don't use this */
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  ptr = malloc(558);
+  Curl_safefree(ptr);
+
+  asize = (int)sizeof(a);
+  ptr = curl_easy_escape(NULL, (char *)a, asize);
+  if(ptr)
+    curl_free(ptr);
+
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib559.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib559.c
new file mode 100644
index 0000000..8c72dbd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib559.c
@@ -0,0 +1,56 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testtrace.h"
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_BUFFERSIZE, 1L); /* the smallest! */
+
+  res = curl_easy_perform(curl);
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib560.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib560.c
new file mode 100644
index 0000000..8fa0c2d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib560.c
@@ -0,0 +1,113 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+/*
+ * Simply download a HTTPS file!
+ *
+ * This test was added after the HTTPS-using-multi-interface with OpenSSL
+ * regression of 7.19.1 to hopefully prevent this embarassing mistake from
+ * appearing again... Unfortunately the bug wasn't triggered by this test,
+ * which presumably is because the connect to a local server is too
+ * fast/different compared to the real/distant servers we saw the bug happen
+ * with.
+ */
+int test(char *URL)
+{
+  CURL *http_handle = NULL;
+  CURLM *multi_handle = NULL;
+  int res = 0;
+
+  int still_running; /* keep number of running handles */
+
+  start_test_timing();
+
+  /*
+  ** curl_global_init called indirectly from curl_easy_init.
+  */
+
+  easy_init(http_handle);
+
+  /* set options */
+  easy_setopt(http_handle, CURLOPT_URL, URL);
+  easy_setopt(http_handle, CURLOPT_HEADER, 1L);
+  easy_setopt(http_handle, CURLOPT_SSL_VERIFYPEER, 0L);
+  easy_setopt(http_handle, CURLOPT_SSL_VERIFYHOST, 0L);
+
+  /* init a multi stack */
+  multi_init(multi_handle);
+
+  /* add the individual transfers */
+  multi_add_handle(multi_handle, http_handle);
+
+  /* we start some action by calling perform right away */
+  multi_perform(multi_handle, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    struct timeval timeout;
+
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -99;
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    /* set a suitable timeout to play around with */
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    /* get file descriptors from the transfers */
+    multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+
+    /* timeout or readable/writable sockets */
+    multi_perform(multi_handle, &still_running);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(multi_handle);
+  curl_easy_cleanup(http_handle);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib562.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib562.c
new file mode 100644
index 0000000..285b9f5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib562.c
@@ -0,0 +1,74 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#include "memdebug.h"
+
+/*
+ * From "KNOWN_BUGS" April 2009:
+
+ 59. If the CURLOPT_PORT option is used on an FTP URL like
+ "ftp://example.com/file;type=A" the ";type=A" is stripped off.
+
+ */
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* get a curl handle */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* enable verbose */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* set port number */
+  test_setopt(curl, CURLOPT_PORT, strtol(libtest_arg2, NULL, 10));
+
+  /* specify target */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now run off and do what you've been told! */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib564.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib564.c
new file mode 100644
index 0000000..1822931
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib564.c
@@ -0,0 +1,93 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  int running;
+  CURLM *m = NULL;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+  easy_setopt(curl, CURLOPT_PROXY, libtest_arg2);
+  easy_setopt(curl, CURLOPT_PROXYTYPE, (long)CURLPROXY_SOCKS4);
+
+  multi_init(m);
+
+  multi_add_handle(m, curl);
+
+  fprintf(stderr, "Start at URL 0\n");
+
+  for(;;) {
+    struct timeval interval;
+    fd_set rd, wr, exc;
+    int maxfd = -99;
+
+    interval.tv_sec = 1;
+    interval.tv_usec = 0;
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&rd);
+    FD_ZERO(&wr);
+    FD_ZERO(&exc);
+
+    multi_fdset(m, &rd, &wr, &exc, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &rd, &wr, &exc, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UB */
+
+  curl_easy_cleanup(curl);
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib566.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib566.c
new file mode 100644
index 0000000..ecf8c55
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib566.c
@@ -0,0 +1,68 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  double content_length = 3;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  res = curl_easy_perform(curl);
+
+  if(!res) {
+    FILE *moo;
+    res = curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD,
+                            &content_length);
+    moo = fopen(libtest_arg2, "wb");
+    if(moo) {
+      fprintf(moo, "CL: %.0f\n", content_length);
+      fclose(moo);
+    }
+  }
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib567.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib567.c
new file mode 100644
index 0000000..f9f55e3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib567.c
@@ -0,0 +1,70 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/*
+ * Test a simple OPTIONS request with a custom header
+ */
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+  struct curl_slist *custom_headers=NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* Dump data to stdout for protocol verification */
+  test_setopt(curl, CURLOPT_HEADERDATA, stdout);
+  test_setopt(curl, CURLOPT_WRITEDATA, stdout);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, URL);
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_OPTIONS);
+  test_setopt(curl, CURLOPT_USERAGENT, "test567");
+
+  custom_headers = curl_slist_append(custom_headers, "Test-Number: 567");
+  test_setopt(curl, CURLOPT_RTSPHEADER, custom_headers);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  if(custom_headers)
+    curl_slist_free_all(custom_headers);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib568.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib568.c
new file mode 100644
index 0000000..0cdef81
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib568.c
@@ -0,0 +1,178 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#include "memdebug.h"
+
+/* build request url */
+static char *suburl(const char *base, int i)
+{
+  return curl_maprintf("%s%.4d", base, i);
+}
+
+/*
+ * Test the Client->Server ANNOUNCE functionality (PUT style)
+ */
+int test(char *URL)
+{
+  int res;
+  CURL *curl;
+  int sdp;
+  FILE *sdpf = NULL;
+  struct_stat file_info;
+  char *stream_uri = NULL;
+  int request=1;
+  struct curl_slist *custom_headers=NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_HEADERDATA, stdout);
+  test_setopt(curl, CURLOPT_WRITEDATA, stdout);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  sdp = open("log/file568.txt", O_RDONLY);
+  fstat(sdp, &file_info);
+  close(sdp);
+
+  sdpf = fopen("log/file568.txt", "rb");
+  if(sdpf == NULL) {
+    fprintf(stderr, "can't open log/file568.txt\n");
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_ANNOUNCE);
+
+  test_setopt(curl, CURLOPT_READDATA, sdpf);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t) file_info.st_size);
+
+  /* Do the ANNOUNCE */
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  test_setopt(curl, CURLOPT_UPLOAD, 0L);
+  fclose(sdpf);
+  sdpf = NULL;
+
+  /* Make sure we can do a normal request now */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_DESCRIBE);
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  /* Now do a POST style one */
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  custom_headers = curl_slist_append(custom_headers,
+                                     "Content-Type: posty goodness");
+  if(!custom_headers) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSPHEADER, custom_headers);
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_ANNOUNCE);
+  test_setopt(curl, CURLOPT_POSTFIELDS,
+              "postyfield=postystuff&project=curl\n");
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  test_setopt(curl, CURLOPT_POSTFIELDS, NULL);
+  test_setopt(curl, CURLOPT_RTSPHEADER, NULL);
+  curl_slist_free_all(custom_headers);
+  custom_headers = NULL;
+
+  /* Make sure we can do a normal request now */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_OPTIONS);
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  if(sdpf)
+    fclose(sdpf);
+
+  free(stream_uri);
+
+  if(custom_headers)
+    curl_slist_free_all(custom_headers);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib569.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib569.c
new file mode 100644
index 0000000..d7381d9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib569.c
@@ -0,0 +1,128 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+#include "memdebug.h"
+
+/* build request url */
+static char *suburl(const char *base, int i)
+{
+  return curl_maprintf("%s%.4d", base, i);
+}
+
+/*
+ * Test Session ID capture
+ */
+int test(char *URL)
+{
+  int res;
+  CURL *curl;
+  char *stream_uri = NULL;
+  char *rtsp_session_id;
+  int request=1;
+  int i;
+  FILE *idfile = NULL;
+
+  idfile = fopen(libtest_arg2, "wb");
+  if(idfile == NULL) {
+    fprintf(stderr, "couldn't open the Session ID File\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    fclose(idfile);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    fclose(idfile);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_HEADERDATA, stdout);
+  test_setopt(curl, CURLOPT_WRITEDATA, stdout);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_SETUP);
+  res = curl_easy_perform(curl);
+  if(res != (int)CURLE_BAD_FUNCTION_ARGUMENT) {
+    fprintf(stderr, "This should have failed. "
+            "Cannot setup without a Transport: header");
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+
+  /* Go through the various Session IDs */
+  for(i = 0; i < 3; i++) {
+    stream_uri = suburl(URL, request++);
+    if(!stream_uri) {
+      res = TEST_ERR_MAJOR_BAD;
+      goto test_cleanup;
+    }
+    test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+    free(stream_uri);
+    stream_uri = NULL;
+
+    test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_SETUP);
+    test_setopt(curl, CURLOPT_RTSP_TRANSPORT,
+                "Fake/NotReal/JustATest;foo=baz");
+    res = curl_easy_perform(curl);
+    if(res)
+      goto test_cleanup;
+
+    curl_easy_getinfo(curl, CURLINFO_RTSP_SESSION_ID, &rtsp_session_id);
+    fprintf(idfile, "Got Session ID: [%s]\n", rtsp_session_id);
+    rtsp_session_id = NULL;
+
+    stream_uri = suburl(URL, request++);
+    if(!stream_uri) {
+      res = TEST_ERR_MAJOR_BAD;
+      goto test_cleanup;
+    }
+    test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+    free(stream_uri);
+    stream_uri = NULL;
+
+    test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_TEARDOWN);
+    res = curl_easy_perform(curl);
+
+    /* Clear for the next go-round */
+    test_setopt(curl, CURLOPT_RTSP_SESSION_ID, NULL);
+  }
+
+test_cleanup:
+
+  if(idfile)
+    fclose(idfile);
+
+  free(stream_uri);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib570.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib570.c
new file mode 100644
index 0000000..9d9b5a1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib570.c
@@ -0,0 +1,116 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+#include "memdebug.h"
+
+/* build request url */
+static char *suburl(const char *base, int i)
+{
+  return curl_maprintf("%s%.4d", base, i);
+}
+
+int test(char *URL)
+{
+  int res;
+  CURL *curl;
+  int request=1;
+  char *stream_uri = NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_HEADERDATA, stdout);
+  test_setopt(curl, CURLOPT_WRITEDATA, stdout);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_OPTIONS);
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  res = curl_easy_perform(curl);
+  if(res != (int)CURLE_RTSP_CSEQ_ERROR) {
+    fprintf(stderr, "Failed to detect CSeq mismatch");
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+
+  test_setopt(curl, CURLOPT_RTSP_CLIENT_CSEQ, 999L);
+  test_setopt(curl, CURLOPT_RTSP_TRANSPORT,
+                    "RAW/RAW/UDP;unicast;client_port=3056-3057");
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_SETUP);
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_PLAY);
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  res = curl_easy_perform(curl);
+  if(res != CURLE_RTSP_SESSION_ERROR) {
+    fprintf(stderr, "Failed to detect a Session ID mismatch");
+  }
+
+test_cleanup:
+  free(stream_uri);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib571.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib571.c
new file mode 100644
index 0000000..f19b643
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib571.c
@@ -0,0 +1,215 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_NETINET_IN_H
+#  include <netinet/in.h>
+#endif
+#ifdef HAVE_NETDB_H
+#  include <netdb.h>
+#endif
+#ifdef HAVE_ARPA_INET_H
+#  include <arpa/inet.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+#  include <sys/stat.h>
+#endif
+#ifdef HAVE_FCNTL_H
+#  include <fcntl.h>
+#endif
+
+#include "warnless.h"
+#include "memdebug.h"
+
+#define RTP_PKT_CHANNEL(p)   ((int)((unsigned char)((p)[1])))
+
+#define RTP_PKT_LENGTH(p)  ((((int)((unsigned char)((p)[2]))) << 8) | \
+                             ((int)((unsigned char)((p)[3]))))
+
+#define RTP_DATA_SIZE 12
+static const char *RTP_DATA = "$_1234\n\0asdf";
+
+static int rtp_packet_count = 0;
+
+static size_t rtp_write(void *ptr, size_t size, size_t nmemb, void *stream)
+{
+  char *data = (char *)ptr;
+  int channel = RTP_PKT_CHANNEL(data);
+  int message_size;
+  int coded_size = RTP_PKT_LENGTH(data);
+  size_t failure = (size && nmemb) ? 0 : 1;
+  int i;
+  (void)stream;
+
+  message_size = curlx_uztosi(size * nmemb) - 4;
+
+  printf("RTP: message size %d, channel %d\n", message_size, channel);
+  if(message_size != coded_size) {
+    printf("RTP embedded size (%d) does not match the write size (%d).\n",
+           coded_size, message_size);
+    return failure;
+  }
+
+  data += 4;
+  for(i = 0; i < message_size; i+= RTP_DATA_SIZE) {
+    if(message_size - i > RTP_DATA_SIZE) {
+      if(memcmp(RTP_DATA, data + i, RTP_DATA_SIZE) != 0) {
+        printf("RTP PAYLOAD CORRUPTED [%s]\n", data + i);
+        return failure;
+      }
+    }
+    else {
+      if(memcmp(RTP_DATA, data + i, message_size - i) != 0) {
+        printf("RTP PAYLOAD END CORRUPTED (%d), [%s]\n",
+               message_size - i, data + i);
+        return failure;
+      }
+    }
+  }
+
+  rtp_packet_count++;
+  fprintf(stderr, "packet count is %d\n", rtp_packet_count);
+
+  return size * nmemb;
+}
+
+/* build request url */
+static char *suburl(const char *base, int i)
+{
+  return curl_maprintf("%s%.4d", base, i);
+}
+
+int test(char *URL)
+{
+  int res;
+  CURL *curl;
+  char *stream_uri = NULL;
+  int request=1;
+  FILE *protofile = NULL;
+
+  protofile = fopen(libtest_arg2, "wb");
+  if(protofile == NULL) {
+    fprintf(stderr, "Couldn't open the protocol dump file\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    fclose(protofile);
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    fclose(protofile);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  test_setopt(curl, CURLOPT_INTERLEAVEFUNCTION, rtp_write);
+  test_setopt(curl, CURLOPT_TIMEOUT, 3L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_WRITEDATA, protofile);
+
+  test_setopt(curl, CURLOPT_RTSP_TRANSPORT, "RTP/AVP/TCP;interleaved=0-1");
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_SETUP);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  /* This PLAY starts the interleave */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_PLAY);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  /* The DESCRIBE request will try to consume data after the Content */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_DESCRIBE);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_PLAY);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  fprintf(stderr, "PLAY COMPLETE\n");
+
+  /* Use Receive to get the rest of the data */
+  while(!res && rtp_packet_count < 13) {
+    fprintf(stderr, "LOOPY LOOP!\n");
+    test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_RECEIVE);
+    res = curl_easy_perform(curl);
+  }
+
+test_cleanup:
+  free(stream_uri);
+
+  if(protofile)
+    fclose(protofile);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib572.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib572.c
new file mode 100644
index 0000000..47a9da5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib572.c
@@ -0,0 +1,184 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#include "memdebug.h"
+
+/* build request url */
+static char *suburl(const char *base, int i)
+{
+  return curl_maprintf("%s%.4d", base, i);
+}
+
+/*
+ * Test GET_PARAMETER: PUT, HEARTBEAT, and POST
+ */
+int test(char *URL)
+{
+  int res;
+  CURL *curl;
+  int params;
+  FILE *paramsf = NULL;
+  struct_stat file_info;
+  char *stream_uri = NULL;
+  int request=1;
+  struct curl_slist *custom_headers=NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+
+  test_setopt(curl, CURLOPT_HEADERDATA, stdout);
+  test_setopt(curl, CURLOPT_WRITEDATA, stdout);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* SETUP */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  test_setopt(curl, CURLOPT_RTSP_TRANSPORT, "Planes/Trains/Automobiles");
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_SETUP);
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  /* PUT style GET_PARAMETERS */
+  params = open("log/file572.txt", O_RDONLY);
+  fstat(params, &file_info);
+  close(params);
+
+  paramsf = fopen("log/file572.txt", "rb");
+  if(paramsf == NULL) {
+    fprintf(stderr, "can't open log/file572.txt\n");
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_GET_PARAMETER);
+
+  test_setopt(curl, CURLOPT_READDATA, paramsf);
+  test_setopt(curl, CURLOPT_UPLOAD, 1L);
+  test_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t) file_info.st_size);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  test_setopt(curl, CURLOPT_UPLOAD, 0L);
+  fclose(paramsf);
+  paramsf = NULL;
+
+  /* Heartbeat GET_PARAMETERS */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  /* POST GET_PARAMETERS */
+
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_GET_PARAMETER);
+  test_setopt(curl, CURLOPT_POSTFIELDS, "packets_received\njitter\n");
+
+  res = curl_easy_perform(curl);
+  if(res)
+    goto test_cleanup;
+
+  test_setopt(curl, CURLOPT_POSTFIELDS, NULL);
+
+  /* Make sure we can do a normal request now */
+  stream_uri = suburl(URL, request++);
+  if(!stream_uri) {
+    res = TEST_ERR_MAJOR_BAD;
+    goto test_cleanup;
+  }
+  test_setopt(curl, CURLOPT_RTSP_STREAM_URI, stream_uri);
+  free(stream_uri);
+  stream_uri = NULL;
+
+  test_setopt(curl, CURLOPT_RTSP_REQUEST, CURL_RTSPREQ_OPTIONS);
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  if(paramsf)
+    fclose(paramsf);
+
+  free(stream_uri);
+
+  if(custom_headers)
+    curl_slist_free_all(custom_headers);
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib573.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib573.c
new file mode 100644
index 0000000..dce198b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib573.c
@@ -0,0 +1,114 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testtrace.h"
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+/*
+ * Get a single URL without select().
+ */
+
+int test(char *URL)
+{
+  CURL *c = NULL;
+  CURLM *m = NULL;
+  int res = 0;
+  int running = 1;
+  double connect_time = 0.0;
+  double dbl_epsilon;
+
+  dbl_epsilon = 1.0;
+  do {
+    dbl_epsilon /= 2.0;
+  } while((double)(1.0 + (dbl_epsilon/2.0)) > (double)1.0);
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(c);
+
+  easy_setopt(c, CURLOPT_HEADER, 1L);
+  easy_setopt(c, CURLOPT_URL, URL);
+
+  libtest_debug_config.nohex = 1;
+  libtest_debug_config.tracetime = 1;
+  easy_setopt(c, CURLOPT_DEBUGDATA, &libtest_debug_config);
+  easy_setopt(c, CURLOPT_DEBUGFUNCTION, libtest_debug_cb);
+  easy_setopt(c, CURLOPT_VERBOSE, 1L);
+
+  multi_init(m);
+
+  multi_add_handle(m, c);
+
+  while(running) {
+    struct timeval timeout;
+    fd_set fdread, fdwrite, fdexcep;
+    int maxfd = -99;
+
+    timeout.tv_sec = 0;
+    timeout.tv_usec = 100000L; /* 100 ms */
+
+    multi_perform(m, &running);
+
+    abort_on_test_timeout();
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+  }
+
+  curl_easy_getinfo(c, CURLINFO_CONNECT_TIME, &connect_time);
+  if(connect_time < dbl_epsilon) {
+    fprintf(stderr, "connect time %e is < epsilon %e\n",
+            connect_time, dbl_epsilon);
+    res = TEST_ERR_MAJOR_BAD;
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PA */
+
+  curl_multi_remove_handle(m, c);
+  curl_multi_cleanup(m);
+  curl_easy_cleanup(c);
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib574.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib574.c
new file mode 100644
index 0000000..f4fb850
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib574.c
@@ -0,0 +1,71 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static int new_fnmatch(void *ptr,
+                       const char *pattern, const char *string)
+{
+  (void)ptr;
+  (void)pattern;
+  (void)string;
+  return CURL_FNMATCHFUNC_MATCH;
+}
+
+int test(char *URL)
+{
+  int res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_WILDCARDMATCH, 1L);
+  test_setopt(curl, CURLOPT_FNMATCH_FUNCTION, new_fnmatch);
+
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "curl_easy_perform() failed %d\n", res);
+    goto test_cleanup;
+  }
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "curl_easy_perform() failed %d\n", res);
+    goto test_cleanup;
+  }
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib575.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib575.c
new file mode 100644
index 0000000..186170c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib575.c
@@ -0,0 +1,114 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+/* 3x download!
+ * 1. normal
+ * 2. dup handle
+ * 3. with multi interface
+ */
+
+int test(char *URL)
+{
+  CURL *handle = NULL;
+  CURL *duphandle = NULL;
+  CURLM *mhandle = NULL;
+  int res = 0;
+  int still_running = 0;
+
+  start_test_timing();
+
+  global_init(CURL_GLOBAL_ALL);
+
+  easy_init(handle);
+
+  easy_setopt(handle, CURLOPT_URL, URL);
+  easy_setopt(handle, CURLOPT_WILDCARDMATCH, 1L);
+  easy_setopt(handle, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(handle);
+  if(res)
+    goto test_cleanup;
+
+  res = curl_easy_perform(handle);
+  if(res)
+    goto test_cleanup;
+
+  duphandle = curl_easy_duphandle(handle);
+  if(!duphandle)
+    goto test_cleanup;
+  curl_easy_cleanup(handle);
+  handle = duphandle;
+
+  multi_init(mhandle);
+
+  multi_add_handle(mhandle, handle);
+
+  multi_perform(mhandle, &still_running);
+
+  abort_on_test_timeout();
+
+  while(still_running) {
+    struct timeval timeout;
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    int maxfd = -99;
+
+    timeout.tv_sec = 0;
+    timeout.tv_usec = 100000L; /* 100 ms */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(mhandle, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
+
+    abort_on_test_timeout();
+
+    multi_perform(mhandle, &still_running);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(mhandle);
+  curl_easy_cleanup(handle);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib576.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib576.c
new file mode 100644
index 0000000..3b9a900
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib576.c
@@ -0,0 +1,125 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "testutil.h"
+#include "memdebug.h"
+
+typedef struct {
+  int remains;
+  int print_content;
+} chunk_data_t;
+
+static
+long chunk_bgn(const struct curl_fileinfo *finfo, void *ptr, int remains);
+static
+long chunk_end(void *ptr);
+
+static
+long chunk_bgn(const struct curl_fileinfo *finfo, void *ptr, int remains)
+{
+  chunk_data_t *ch_d = ptr;
+  ch_d->remains = remains;
+
+  printf("=============================================================\n");
+  printf("Remains:      %d\n", remains);
+  printf("Filename:     %s\n", finfo->filename);
+  if(finfo->strings.perm) {
+    printf("Permissions:  %s", finfo->strings.perm);
+    if(finfo->flags & CURLFINFOFLAG_KNOWN_PERM)
+      printf(" (parsed => %o)", finfo->perm);
+    printf("\n");
+  }
+  printf("Size:         %ldB\n", (long)finfo->size);
+  if(finfo->strings.user)
+    printf("User:         %s\n", finfo->strings.user);
+  if(finfo->strings.group)
+    printf("Group:        %s\n", finfo->strings.group);
+  if(finfo->strings.time)
+    printf("Time:         %s\n", finfo->strings.time);
+  printf("Filetype:     ");
+  switch(finfo->filetype) {
+  case CURLFILETYPE_FILE:
+    printf("regular file\n");
+    break;
+  case CURLFILETYPE_DIRECTORY:
+    printf("directory\n");
+    break;
+  case CURLFILETYPE_SYMLINK:
+    printf("symlink\n");
+    printf("Target:       %s\n", finfo->strings.target);
+    break;
+  default:
+    printf("other type\n");
+    break;
+  }
+  if(finfo->filetype == CURLFILETYPE_FILE) {
+    ch_d->print_content = 1;
+    printf("Content:\n-----------------------"
+           "--------------------------------------\n");
+  }
+  if(strcmp(finfo->filename, "someothertext.txt") == 0) {
+    printf("# THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #\n");
+    return CURL_CHUNK_BGN_FUNC_SKIP;
+  }
+  return CURL_CHUNK_BGN_FUNC_OK;
+}
+
+static
+long chunk_end(void *ptr)
+{
+  chunk_data_t *ch_d = ptr;
+  if(ch_d->print_content) {
+    ch_d->print_content = 0;
+    printf("-------------------------------------------------------------\n");
+  }
+  if(ch_d->remains == 1)
+    printf("=============================================================\n");
+  return CURL_CHUNK_END_FUNC_OK;
+}
+
+int test(char *URL)
+{
+  CURL *handle = NULL;
+  CURLcode res = CURLE_OK;
+  chunk_data_t chunk_data = {0, 0};
+  curl_global_init(CURL_GLOBAL_ALL);
+  handle = curl_easy_init();
+  if(!handle) {
+    res = CURLE_OUT_OF_MEMORY;
+    goto test_cleanup;
+  }
+
+  test_setopt(handle, CURLOPT_URL, URL);
+  test_setopt(handle, CURLOPT_WILDCARDMATCH, 1L);
+  test_setopt(handle, CURLOPT_CHUNK_BGN_FUNCTION, chunk_bgn);
+  test_setopt(handle, CURLOPT_CHUNK_END_FUNCTION, chunk_end);
+  test_setopt(handle, CURLOPT_CHUNK_DATA, &chunk_data);
+
+  res = curl_easy_perform(handle);
+
+test_cleanup:
+  if(handle)
+    curl_easy_cleanup(handle);
+  curl_global_cleanup();
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib578.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib578.c
new file mode 100644
index 0000000..41b23db
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib578.c
@@ -0,0 +1,105 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+/* The size of data should be kept below MAX_INITIAL_POST_SIZE! */
+static char data[]="this is a short string.\n";
+
+static size_t data_size = sizeof(data) / sizeof(char);
+
+static int progress_callback(void *clientp, double dltotal, double dlnow,
+                             double ultotal, double ulnow)
+{
+  FILE *moo = fopen(libtest_arg2, "wb");
+
+  (void)clientp; /* UNUSED */
+  (void)dltotal; /* UNUSED */
+  (void)dlnow; /* UNUSED */
+
+  if(moo) {
+    if((size_t)ultotal == data_size && (size_t)ulnow == data_size)
+      fprintf(moo, "PASSED, UL data matched data size\n");
+    else
+      fprintf(moo, "Progress callback called with UL %f out of %f\n",
+              ulnow, ultotal);
+    fclose(moo);
+  }
+  return 0;
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+
+  /* Set the expected POST size */
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)data_size);
+  test_setopt(curl, CURLOPT_POSTFIELDS, data);
+
+  /* we want to use our own progress function */
+  test_setopt(curl, CURLOPT_NOPROGRESS, 0L);
+  test_setopt(curl, CURLOPT_PROGRESSFUNCTION, progress_callback);
+
+  /* pointer to pass to our read function */
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib579.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib579.c
new file mode 100644
index 0000000..61aa4f5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib579.c
@@ -0,0 +1,162 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static const char * const post[]={
+  "one",
+  "two",
+  "three",
+  "and a final longer crap: four",
+  NULL
+};
+
+
+struct WriteThis {
+  int counter;
+};
+
+static int progress_callback(void *clientp, double dltotal, double dlnow,
+                             double ultotal, double ulnow)
+{
+  FILE *moo;
+  static int prev_ultotal = -1;
+  static int prev_ulnow = -1;
+  (void)clientp; /* UNUSED */
+  (void)dltotal; /* UNUSED */
+  (void)dlnow; /* UNUSED */
+
+  /* to avoid depending on timing, which will cause this progress function to
+     get called a different number of times depending on circumstances, we
+     only log these lines if the numbers are different from the previous
+     invoke */
+  if((prev_ultotal != (int)ultotal) ||
+     (prev_ulnow != (int)ulnow)) {
+
+    moo = fopen(libtest_arg2, "ab");
+    if(moo) {
+      fprintf(moo, "Progress callback called with UL %d out of %d\n",
+              (int)ulnow, (int)ultotal);
+      fclose(moo);
+    }
+    prev_ulnow = (int) ulnow;
+    prev_ultotal = (int) ultotal;
+  }
+  return 0;
+}
+
+static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
+{
+  struct WriteThis *pooh = (struct WriteThis *)userp;
+  const char *data;
+
+  if(size*nmemb < 1)
+    return 0;
+
+  data = post[pooh->counter];
+
+  if(data) {
+    size_t len = strlen(data);
+    memcpy(ptr, data, len);
+    pooh->counter++; /* advance pointer */
+    return len;
+  }
+  return 0;                         /* no more data left to deliver */
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+  struct curl_slist *slist = NULL;
+  struct WriteThis pooh;
+  pooh.counter = 0;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  slist = curl_slist_append(slist, "Transfer-Encoding: chunked");
+  if(slist == NULL) {
+    fprintf(stderr, "curl_slist_append() failed\n");
+    curl_easy_cleanup(curl);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* Now specify we want to POST data */
+  test_setopt(curl, CURLOPT_POST, 1L);
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Convert the POST data to ASCII */
+  test_setopt(curl, CURLOPT_TRANSFERTEXT, 1L);
+#endif
+
+  /* we want to use our own read function */
+  test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* pointer to pass to our read function */
+  test_setopt(curl, CURLOPT_READDATA, &pooh);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* enforce chunked transfer by setting the header */
+  test_setopt(curl, CURLOPT_HTTPHEADER, slist);
+
+  test_setopt(curl, CURLOPT_HTTPAUTH, (long)CURLAUTH_DIGEST);
+  test_setopt(curl, CURLOPT_USERPWD, "foo:bar");
+
+  /* we want to use our own progress function */
+  test_setopt(curl, CURLOPT_NOPROGRESS, 0L);
+  test_setopt(curl, CURLOPT_PROGRESSFUNCTION, progress_callback);
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  /* clean up the headers list */
+  if(slist)
+    curl_slist_free_all(slist);
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib582.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib582.c
new file mode 100644
index 0000000..d7e4dd1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib582.c
@@ -0,0 +1,359 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+struct Sockets
+{
+  curl_socket_t *sockets;
+  int count;      /* number of sockets actually stored in array */
+  int max_count;  /* max number of sockets that fit in allocated array */
+};
+
+struct ReadWriteSockets
+{
+  struct Sockets read, write;
+};
+
+/**
+ * Remove a file descriptor from a sockets array.
+ */
+static void removeFd(struct Sockets* sockets, curl_socket_t fd, int mention)
+{
+  int i;
+
+  if(mention)
+    fprintf(stderr, "Remove socket fd %d\n", (int) fd);
+
+  for(i = 0; i < sockets->count; ++i) {
+    if(sockets->sockets[i] == fd) {
+      if(i < sockets->count - 1)
+        memmove(&sockets->sockets[i], &sockets->sockets[i + 1],
+              sizeof(curl_socket_t) * (sockets->count - (i + 1)));
+      --sockets->count;
+    }
+  }
+}
+
+/**
+ * Add a file descriptor to a sockets array.
+ */
+static void addFd(struct Sockets* sockets, curl_socket_t fd, const char *what)
+{
+  /**
+   * To ensure we only have each file descriptor once, we remove it then add
+   * it again.
+   */
+  fprintf(stderr, "Add socket fd %d for %s\n", (int) fd, what);
+  removeFd(sockets, fd, 0);
+  /*
+   * Allocate array storage when required.
+   */
+  if(!sockets->sockets) {
+    sockets->sockets = malloc(sizeof(curl_socket_t) * 20U);
+    if(!sockets->sockets)
+      return;
+    sockets->max_count = 20;
+  }
+  else if(sockets->count + 1 > sockets->max_count) {
+    curl_socket_t *oldptr = sockets->sockets;
+    sockets->sockets = realloc(oldptr, sizeof(curl_socket_t) *
+                               (sockets->max_count + 20));
+    if(!sockets->sockets) {
+      /* cleanup in test_cleanup */
+      sockets->sockets = oldptr;
+      return;
+    }
+    sockets->max_count += 20;
+  }
+  /*
+   * Add file descriptor to array.
+   */
+  sockets->sockets[sockets->count] = fd;
+  ++sockets->count;
+}
+
+/**
+ * Callback invoked by curl to poll reading / writing of a socket.
+ */
+static int curlSocketCallback(CURL *easy, curl_socket_t s, int action,
+                              void *userp, void *socketp)
+{
+  struct ReadWriteSockets* sockets = userp;
+
+  (void)easy; /* unused */
+  (void)socketp; /* unused */
+
+  if(action == CURL_POLL_IN || action == CURL_POLL_INOUT)
+    addFd(&sockets->read, s, "read");
+
+  if(action == CURL_POLL_OUT || action == CURL_POLL_INOUT)
+    addFd(&sockets->write, s, "write");
+
+  if(action == CURL_POLL_REMOVE) {
+    removeFd(&sockets->read, s, 1);
+    removeFd(&sockets->write, s, 0);
+  }
+
+  return 0;
+}
+
+/**
+ * Callback invoked by curl to set a timeout.
+ */
+static int curlTimerCallback(CURLM *multi, long timeout_ms, void *userp)
+{
+  struct timeval* timeout = userp;
+
+  (void)multi; /* unused */
+  if(timeout_ms != -1) {
+    *timeout = tutil_tvnow();
+    timeout->tv_usec += timeout_ms * 1000;
+  }
+  else {
+    timeout->tv_sec = -1;
+  }
+  return 0;
+}
+
+/**
+ * Check for curl completion.
+ */
+static int checkForCompletion(CURLM *curl, int *success)
+{
+  int numMessages;
+  CURLMsg *message;
+  int result = 0;
+  *success = 0;
+  while((message = curl_multi_info_read(curl, &numMessages)) != NULL) {
+    if(message->msg == CURLMSG_DONE) {
+      result = 1;
+      if(message->data.result == CURLE_OK)
+        *success = 1;
+      else
+        *success = 0;
+    }
+    else {
+      fprintf(stderr, "Got an unexpected message from curl: %i\n",
+              (int)message->msg);
+      result = 1;
+      *success = 0;
+    }
+  }
+  return result;
+}
+
+static int getMicroSecondTimeout(struct timeval* timeout)
+{
+  struct timeval now;
+  ssize_t result;
+  now = tutil_tvnow();
+  result = (ssize_t)((timeout->tv_sec - now.tv_sec) * 1000000 +
+    timeout->tv_usec - now.tv_usec);
+  if(result < 0)
+    result = 0;
+
+  return curlx_sztosi(result);
+}
+
+/**
+ * Update a fd_set with all of the sockets in use.
+ */
+static void updateFdSet(struct Sockets* sockets, fd_set* fdset,
+                        curl_socket_t *maxFd)
+{
+  int i;
+  for(i = 0; i < sockets->count; ++i) {
+    FD_SET(sockets->sockets[i], fdset);
+    if(*maxFd < sockets->sockets[i] + 1) {
+      *maxFd = sockets->sockets[i] + 1;
+    }
+  }
+}
+
+static void notifyCurl(CURLM *curl, curl_socket_t s, int evBitmask,
+                       const char *info)
+{
+  int numhandles = 0;
+  CURLMcode result = curl_multi_socket_action(curl, s, evBitmask, &numhandles);
+  if(result != CURLM_OK) {
+    fprintf(stderr, "Curl error on %s: %i (%s)\n",
+            info, result, curl_multi_strerror(result));
+  }
+}
+
+/**
+ * Invoke curl when a file descriptor is set.
+ */
+static void checkFdSet(CURLM *curl, struct Sockets *sockets, fd_set *fdset,
+                       int evBitmask, const char *name)
+{
+  int i;
+  for(i = 0; i < sockets->count; ++i) {
+    if(FD_ISSET(sockets->sockets[i], fdset)) {
+      notifyCurl(curl, sockets->sockets[i], evBitmask, name);
+    }
+  }
+}
+
+int test(char *URL)
+{
+  int res = 0;
+  CURL *curl = NULL;
+  FILE *hd_src = NULL;
+  int hd;
+  int error;
+  struct_stat file_info;
+  CURLM *m = NULL;
+  struct ReadWriteSockets sockets = {{NULL, 0, 0}, {NULL, 0, 0}};
+  struct timeval timeout = {-1, 0};
+  int success = 0;
+
+  start_test_timing();
+
+  if(!libtest_arg3) {
+    fprintf(stderr, "Usage: lib582 [url] [filename] [username]\n");
+    return TEST_ERR_USAGE;
+  }
+
+  hd_src = fopen(libtest_arg2, "rb");
+  if(NULL == hd_src) {
+    error = ERRNO;
+    fprintf(stderr, "fopen() failed with error: %d (%s)\n",
+            error, strerror(error));
+    fprintf(stderr, "Error opening file: (%s)\n", libtest_arg2);
+    return TEST_ERR_FOPEN;
+  }
+
+  /* get the file size of the local file */
+  hd = fstat(fileno(hd_src), &file_info);
+  if(hd == -1) {
+    /* can't open file, bail out */
+    error = ERRNO;
+    fprintf(stderr, "fstat() failed with error: %d (%s)\n",
+            error, strerror(error));
+    fprintf(stderr, "ERROR: cannot open file (%s)\n", libtest_arg2);
+    fclose(hd_src);
+    return TEST_ERR_FSTAT;
+  }
+  fprintf(stderr, "Set to upload %d bytes\n", (int)file_info.st_size);
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    fclose(hd_src);
+    return res;
+  }
+
+  easy_init(curl);
+
+  /* enable uploading */
+  easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* specify target */
+  easy_setopt(curl, CURLOPT_URL, URL);
+
+  /* go verbose */
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* now specify which file to upload */
+  easy_setopt(curl, CURLOPT_READDATA, hd_src);
+
+  easy_setopt(curl, CURLOPT_USERPWD, libtest_arg3);
+  easy_setopt(curl, CURLOPT_SSH_PUBLIC_KEYFILE, "curl_client_key.pub");
+  easy_setopt(curl, CURLOPT_SSH_PRIVATE_KEYFILE, "curl_client_key");
+
+  easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)file_info.st_size);
+
+  multi_init(m);
+
+  multi_setopt(m, CURLMOPT_SOCKETFUNCTION, curlSocketCallback);
+  multi_setopt(m, CURLMOPT_SOCKETDATA, &sockets);
+
+  multi_setopt(m, CURLMOPT_TIMERFUNCTION, curlTimerCallback);
+  multi_setopt(m, CURLMOPT_TIMERDATA, &timeout);
+
+  multi_add_handle(m, curl);
+
+  while(!checkForCompletion(m, &success)) {
+    fd_set readSet, writeSet;
+    curl_socket_t maxFd = 0;
+    struct timeval tv = {10, 0};
+
+    FD_ZERO(&readSet);
+    FD_ZERO(&writeSet);
+    updateFdSet(&sockets.read, &readSet, &maxFd);
+    updateFdSet(&sockets.write, &writeSet, &maxFd);
+
+    if(timeout.tv_sec != -1) {
+      int usTimeout = getMicroSecondTimeout(&timeout);
+      tv.tv_sec = usTimeout / 1000000;
+      tv.tv_usec = usTimeout % 1000000;
+    }
+    else if(maxFd <= 0) {
+      tv.tv_sec = 0;
+      tv.tv_usec = 100000;
+    }
+
+    select_test((int)maxFd, &readSet, &writeSet, NULL, &tv);
+
+    /* Check the sockets for reading / writing */
+    checkFdSet(m, &sockets.read, &readSet, CURL_CSELECT_IN, "read");
+    checkFdSet(m, &sockets.write, &writeSet, CURL_CSELECT_OUT, "write");
+
+    if(timeout.tv_sec != -1 && getMicroSecondTimeout(&timeout) == 0) {
+      /* Curl's timer has elapsed. */
+      notifyCurl(m, CURL_SOCKET_TIMEOUT, 0, "timeout");
+    }
+
+    abort_on_test_timeout();
+  }
+
+  if(!success) {
+    fprintf(stderr, "Error uploading file.\n");
+    res = TEST_ERR_MAJOR_BAD;
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  curl_multi_remove_handle(m, curl);
+  curl_easy_cleanup(curl);
+  curl_multi_cleanup(m);
+  curl_global_cleanup();
+
+  /* close the local file */
+  fclose(hd_src);
+
+  /* free local memory */
+  free(sockets.read.sockets);
+  free(sockets.write.sockets);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib583.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib583.c
new file mode 100644
index 0000000..f0a088b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib583.c
@@ -0,0 +1,84 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/*
+ * This test case is based on the sample code provided by Saqib Ali
+ * https://curl.haxx.se/mail/lib-2011-03/0066.html
+ */
+
+#include "test.h"
+
+#include <sys/stat.h>
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  int stillRunning;
+  CURLM *multiHandle = NULL;
+  CURL *curl = NULL;
+  CURLMcode res = CURLM_OK;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  multi_init(multiHandle);
+
+  easy_init(curl);
+
+  easy_setopt(curl, CURLOPT_USERPWD, libtest_arg2);
+  easy_setopt(curl, CURLOPT_SSH_PUBLIC_KEYFILE, "curl_client_key.pub");
+  easy_setopt(curl, CURLOPT_SSH_PRIVATE_KEYFILE, "curl_client_key");
+
+  easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+  easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  easy_setopt(curl, CURLOPT_URL, URL);
+  easy_setopt(curl, CURLOPT_INFILESIZE, (long)5);
+
+  multi_add_handle(multiHandle, curl);
+
+  /* this tests if removing an easy handle immediately after multi
+     perform has been called succeeds or not. */
+
+  fprintf(stderr, "curl_multi_perform()...\n");
+
+  multi_perform(multiHandle, &stillRunning);
+
+  fprintf(stderr, "curl_multi_perform() succeeded\n");
+
+  fprintf(stderr, "curl_multi_remove_handle()...\n");
+  res = curl_multi_remove_handle(multiHandle, curl);
+  if(res)
+    fprintf(stderr, "curl_multi_remove_handle() failed, "
+            "with code %d\n", (int)res);
+  else
+    fprintf(stderr, "curl_multi_remove_handle() succeeded\n");
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UB */
+
+  curl_easy_cleanup(curl);
+  curl_multi_cleanup(multiHandle);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib586.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib586.c
new file mode 100644
index 0000000..859ef34
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib586.c
@@ -0,0 +1,247 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+#include "memdebug.h"
+
+#define THREADS 2
+
+/* struct containing data of a thread */
+struct Tdata {
+  CURLSH *share;
+  char *url;
+};
+
+struct userdata {
+  const char *text;
+  int counter;
+};
+
+/* lock callback */
+static void my_lock(CURL *handle, curl_lock_data data,
+                    curl_lock_access laccess, void *useptr)
+{
+  const char *what;
+  struct userdata *user = (struct userdata *)useptr;
+
+  (void)handle;
+  (void)laccess;
+
+  switch(data) {
+    case CURL_LOCK_DATA_SHARE:
+      what = "share";
+      break;
+    case CURL_LOCK_DATA_DNS:
+      what = "dns";
+      break;
+    case CURL_LOCK_DATA_COOKIE:
+      what = "cookie";
+      break;
+    case CURL_LOCK_DATA_SSL_SESSION:
+      what = "ssl_session";
+      break;
+    default:
+      fprintf(stderr, "lock: no such data: %d\n", (int)data);
+      return;
+  }
+  printf("lock:   %-6s [%s]: %d\n", what, user->text, user->counter);
+  user->counter++;
+}
+
+/* unlock callback */
+static void my_unlock(CURL *handle, curl_lock_data data, void *useptr)
+{
+  const char *what;
+  struct userdata *user = (struct userdata *)useptr;
+  (void)handle;
+  switch(data) {
+    case CURL_LOCK_DATA_SHARE:
+      what = "share";
+      break;
+    case CURL_LOCK_DATA_DNS:
+      what = "dns";
+      break;
+    case CURL_LOCK_DATA_COOKIE:
+      what = "cookie";
+      break;
+    case CURL_LOCK_DATA_SSL_SESSION:
+      what = "ssl_session";
+      break;
+    default:
+      fprintf(stderr, "unlock: no such data: %d\n", (int)data);
+      return;
+  }
+  printf("unlock: %-6s [%s]: %d\n", what, user->text, user->counter);
+  user->counter++;
+}
+
+/* the dummy thread function */
+static void *fire(void *ptr)
+{
+  CURLcode code;
+  struct Tdata *tdata = (struct Tdata*)ptr;
+  CURL *curl;
+  int i=0;
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    return NULL;
+  }
+
+  curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
+  curl_easy_setopt(curl, CURLOPT_VERBOSE,    1L);
+  curl_easy_setopt(curl, CURLOPT_URL,        tdata->url);
+  printf("CURLOPT_SHARE\n");
+  curl_easy_setopt(curl, CURLOPT_SHARE, tdata->share);
+
+  printf("PERFORM\n");
+  code = curl_easy_perform(curl);
+  if(code != CURLE_OK) {
+    fprintf(stderr, "perform url '%s' repeat %d failed, curlcode %d\n",
+            tdata->url, i, (int)code);
+  }
+
+  printf("CLEANUP\n");
+  curl_easy_cleanup(curl);
+
+  return NULL;
+}
+
+/* test function */
+int test(char *URL)
+{
+  int res;
+  CURLSHcode scode = CURLSHE_OK;
+  char *url;
+  struct Tdata tdata;
+  CURL *curl;
+  CURLSH *share;
+  int i;
+  struct userdata user;
+
+  user.text = "Pigs in space";
+  user.counter = 0;
+
+  printf("GLOBAL_INIT\n");
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* prepare share */
+  printf("SHARE_INIT\n");
+  share = curl_share_init();
+  if(!share) {
+    fprintf(stderr, "curl_share_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(CURLSHE_OK == scode) {
+    printf("CURLSHOPT_LOCKFUNC\n");
+    scode = curl_share_setopt(share, CURLSHOPT_LOCKFUNC, my_lock);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURLSHOPT_UNLOCKFUNC\n");
+    scode = curl_share_setopt(share, CURLSHOPT_UNLOCKFUNC, my_unlock);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURLSHOPT_USERDATA\n");
+    scode = curl_share_setopt(share, CURLSHOPT_USERDATA, &user);
+  }
+  if(CURLSHE_OK == scode) {
+    printf("CURL_LOCK_DATA_SSL_SESSION\n");
+    scode = curl_share_setopt(share, CURLSHOPT_SHARE,
+                              CURL_LOCK_DATA_SSL_SESSION);
+  }
+
+  if(CURLSHE_OK != scode) {
+    fprintf(stderr, "curl_share_setopt() failed\n");
+    curl_share_cleanup(share);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+
+  res = 0;
+
+  /* start treads */
+  for(i=1; i<=THREADS; i++) {
+
+    /* set thread data */
+    tdata.url   = URL;
+    tdata.share = share;
+
+    /* simulate thread, direct call of "thread" function */
+    printf("*** run %d\n",i);
+    fire(&tdata);
+  }
+
+
+  /* fetch a another one */
+  printf("*** run %d\n", i);
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_share_cleanup(share);
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  url = URL;
+  test_setopt(curl, CURLOPT_URL, url);
+  printf("CURLOPT_SHARE\n");
+  test_setopt(curl, CURLOPT_SHARE, share);
+
+  printf("PERFORM\n");
+  curl_easy_perform(curl);
+
+  /* try to free share, expect to fail because share is in use*/
+  printf("try SHARE_CLEANUP...\n");
+  scode = curl_share_cleanup(share);
+  if(scode==CURLSHE_OK) {
+    fprintf(stderr, "curl_share_cleanup succeed but error expected\n");
+    share = NULL;
+  }
+  else {
+    printf("SHARE_CLEANUP failed, correct\n");
+  }
+
+test_cleanup:
+
+  /* clean up last handle */
+  printf("CLEANUP\n");
+  curl_easy_cleanup(curl);
+
+  /* free share */
+  printf("SHARE_CLEANUP\n");
+  scode = curl_share_cleanup(share);
+  if(scode!=CURLSHE_OK)
+    fprintf(stderr, "curl_share_cleanup failed, code errno %d\n",
+            (int)scode);
+
+  printf("GLOBAL_CLEANUP\n");
+  curl_global_cleanup();
+
+  return res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib590.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib590.c
new file mode 100644
index 0000000..cc3afdf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib590.c
@@ -0,0 +1,72 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+/*
+  Based on a bug report recipe by Rene Bernhardt in
+  https://curl.haxx.se/mail/lib-2011-10/0323.html
+
+  It is reproducible by the following steps:
+
+  - Use a proxy that offers NTLM and Negotiate ( CURLOPT_PROXY and
+  CURLOPT_PROXYPORT)
+  - Tell libcurl NOT to use Negotiate  CURL_EASY_SETOPT(CURLOPT_PROXYAUTH,
+  CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_NTLM)
+  - Start the request
+*/
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_PROXYAUTH,
+              (long) (CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_NTLM));
+  test_setopt(curl, CURLOPT_PROXY, libtest_arg2); /* set in first.c */
+  test_setopt(curl, CURLOPT_PROXYUSERPWD, "me:password");
+
+  res = curl_easy_perform(curl);
+
+  test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib591.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib591.c
new file mode 100644
index 0000000..7d50f89
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib591.c
@@ -0,0 +1,149 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+/* lib591 is used for test cases 591, 592, 593 and 594 */
+
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#include <fcntl.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 60 * 1000
+
+int test(char *URL)
+{
+  CURL *easy = NULL;
+  CURLM *multi = NULL;
+  int res = 0;
+  int running;
+  int msgs_left;
+  CURLMsg *msg;
+  FILE *upload = NULL;
+  int error;
+
+  start_test_timing();
+
+  upload = fopen(libtest_arg3, "rb");
+  if(!upload) {
+    error = ERRNO;
+    fprintf(stderr, "fopen() failed with error: %d (%s)\n",
+            error, strerror(error));
+    fprintf(stderr, "Error opening file: (%s)\n", libtest_arg3);
+    return TEST_ERR_FOPEN;
+  }
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    fclose(upload);
+    return res;
+  }
+
+  easy_init(easy);
+
+  /* go verbose */
+  easy_setopt(easy, CURLOPT_VERBOSE, 1L);
+
+  /* specify target */
+  easy_setopt(easy, CURLOPT_URL, URL);
+
+  /* enable uploading */
+  easy_setopt(easy, CURLOPT_UPLOAD, 1L);
+
+  /* data pointer for the file read function */
+  easy_setopt(easy, CURLOPT_READDATA, upload);
+
+  /* use active mode FTP */
+  easy_setopt(easy, CURLOPT_FTPPORT, "-");
+
+  /* server connection timeout */
+  easy_setopt(easy, CURLOPT_ACCEPTTIMEOUT_MS,
+              strtol(libtest_arg2, NULL, 10)*1000);
+
+  multi_init(multi);
+
+  multi_add_handle(multi, easy);
+
+  for(;;) {
+    struct timeval interval;
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    long timeout = -99;
+    int maxfd = -99;
+
+    multi_perform(multi, &running);
+
+    abort_on_test_timeout();
+
+    if(!running)
+      break; /* done */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    multi_timeout(multi, &timeout);
+
+    /* At this point, timeout is guaranteed to be greater or equal than -1. */
+
+    if(timeout != -1L) {
+      int itimeout = (timeout > (long)INT_MAX) ? INT_MAX : (int)timeout;
+      interval.tv_sec = itimeout/1000;
+      interval.tv_usec = (itimeout%1000)*1000;
+    }
+    else {
+      interval.tv_sec = 0;
+      interval.tv_usec = 100000L; /* 100 ms */
+    }
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &interval);
+
+    abort_on_test_timeout();
+  }
+
+  msg = curl_multi_info_read(multi, &msgs_left);
+  if(msg)
+    res = msg->data.result;
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(multi);
+  curl_easy_cleanup(easy);
+  curl_global_cleanup();
+
+  /* close the local file */
+  fclose(upload);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib597.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib597.c
new file mode 100644
index 0000000..813af75
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib597.c
@@ -0,0 +1,151 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 5 * 1000
+
+/*
+ * Test case for below scenario:
+ *   - Connect to an FTP server using CONNECT_ONLY option
+ *   - transfer some files with re-using the connection (omitted in test case)
+ *   - Disconnect from FTP server with sending QUIT command
+ *
+ * The test case originated for verifying CONNECT_ONLY option shall not
+ * block after protocol connect is done, but it returns the message
+ * with function curl_multi_info_read().
+ */
+
+enum {
+  CONNECT_ONLY_PHASE = 0,
+  QUIT_PHASE,
+  LAST_PHASE
+};
+
+int test(char *URL)
+{
+  CURL *easy = NULL;
+  CURLM *multi = NULL;
+  int res = 0;
+  int running;
+  int msgs_left;
+  int phase;
+  CURLMsg *msg;
+
+  start_test_timing();
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    return res;
+  }
+
+  easy_init(easy);
+
+  multi_init(multi);
+
+  for(phase = CONNECT_ONLY_PHASE; phase < LAST_PHASE; ++phase) {
+    /* go verbose */
+    easy_setopt(easy, CURLOPT_VERBOSE, 1L);
+
+    /* specify target */
+    easy_setopt(easy, CURLOPT_URL, URL);
+
+    /* enable 'CONNECT_ONLY' option when in connect phase */
+    if(phase == CONNECT_ONLY_PHASE)
+      easy_setopt(easy, CURLOPT_CONNECT_ONLY, 1L);
+
+    /* enable 'NOBODY' option to send 'QUIT' command in quit phase */
+    if(phase == QUIT_PHASE) {
+      easy_setopt(easy, CURLOPT_CONNECT_ONLY, 0L);
+      easy_setopt(easy, CURLOPT_NOBODY, 1L);
+      easy_setopt(easy, CURLOPT_FORBID_REUSE, 1L);
+    }
+
+    multi_add_handle(multi, easy);
+
+    for(;;) {
+      struct timeval interval;
+      fd_set fdread;
+      fd_set fdwrite;
+      fd_set fdexcep;
+      long timeout = -99;
+      int maxfd = -99;
+
+      multi_perform(multi, &running);
+
+      abort_on_test_timeout();
+
+      if(!running)
+        break; /* done */
+
+      FD_ZERO(&fdread);
+      FD_ZERO(&fdwrite);
+      FD_ZERO(&fdexcep);
+
+      multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+      /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+      multi_timeout(multi, &timeout);
+
+      /* At this point, timeout is guaranteed to be greater or equal than
+         -1. */
+
+      if(timeout != -1L) {
+        int itimeout = (timeout > (long)INT_MAX) ? INT_MAX : (int)timeout;
+        interval.tv_sec = itimeout/1000;
+        interval.tv_usec = (itimeout%1000)*1000;
+      }
+      else {
+        interval.tv_sec = TEST_HANG_TIMEOUT/1000+1;
+        interval.tv_usec = 0;
+      }
+
+      select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &interval);
+
+      abort_on_test_timeout();
+    }
+
+    msg = curl_multi_info_read(multi, &msgs_left);
+    if(msg)
+      res = msg->data.result;
+
+    multi_remove_handle(multi, easy);
+  }
+
+test_cleanup:
+
+  /* undocumented cleanup sequence - type UA */
+
+  curl_multi_cleanup(multi);
+  curl_easy_cleanup(easy);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib598.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib598.c
new file mode 100644
index 0000000..c27e60b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib598.c
@@ -0,0 +1,73 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURLcode res;
+  CURL *curl;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_REFERER, "http://example.com/the-moo");
+  test_setopt(curl, CURLOPT_USERAGENT, "the-moo agent next generation");
+  test_setopt(curl, CURLOPT_COOKIE, "name=moo");
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+  if(res) {
+    fprintf(stderr, "retrieve 1 failed\n");
+    goto test_cleanup;
+  }
+
+  curl_easy_reset(curl);
+
+  test_setopt(curl, CURLOPT_URL, URL);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(curl);
+  if(res)
+    fprintf(stderr, "retrieve 2 failed\n");
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib599.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib599.c
new file mode 100644
index 0000000..843fb21
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/lib599.c
@@ -0,0 +1,97 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#include "memdebug.h"
+
+static int progress_callback(void *clientp, double dltotal,
+                             double dlnow, double ultotal, double ulnow)
+{
+  (void)clientp;
+  (void)ulnow;
+  (void)ultotal;
+
+  if((dltotal > 0.0) && (dlnow > dltotal)) {
+    /* this should not happen with test case 599 */
+    printf("%.0f > %.0f !!\n", dltotal, dlnow);
+    return -1;
+  }
+
+  return 0;
+}
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res=CURLE_OK;
+  double content_length = 0.0;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* First set the URL that is about to receive our POST. */
+  test_setopt(curl, CURLOPT_URL, URL);
+
+  /* we want to use our own progress function */
+  test_setopt(curl, CURLOPT_NOPROGRESS, 0L);
+  test_setopt(curl, CURLOPT_PROGRESSFUNCTION, progress_callback);
+
+  /* get verbose debug output please */
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+  /* follow redirects */
+  test_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
+
+  /* include headers in the output */
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+
+  if(!res) {
+    FILE *moo;
+    res = curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD,
+                            &content_length);
+    moo = fopen(libtest_arg2, "wb");
+    if(moo) {
+      fprintf(moo, "CL: %.0f\n", content_length);
+      fclose(moo);
+    }
+  }
+
+test_cleanup:
+
+  /* always cleanup */
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/libauthretry.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/libauthretry.c
new file mode 100644
index 0000000..e9dc050
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/libauthretry.c
@@ -0,0 +1,148 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+/* argv1 = URL
+ * argv2 = main auth type
+ * argv3 = second auth type
+ */
+
+#include "test.h"
+#include "memdebug.h"
+
+static CURLcode send_request(CURL *curl, const char *url, int seq,
+                             long auth_scheme, const char *userpwd)
+{
+  CURLcode res;
+  size_t len = strlen(url) + 4 + 1;
+  char *full_url = malloc(len);
+  if(!full_url) {
+    fprintf(stderr, "Not enough memory for full url\n");
+    return CURLE_OUT_OF_MEMORY;
+  }
+
+  snprintf(full_url, len, "%s%04d", url, seq);
+  fprintf(stderr, "Sending new request %d to %s with credential %s "
+          "(auth %ld)\n", seq, full_url, userpwd, auth_scheme);
+  test_setopt(curl, CURLOPT_URL, full_url);
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_HEADER, 1L);
+  test_setopt(curl, CURLOPT_HTTPGET, 1L);
+  test_setopt(curl, CURLOPT_USERPWD, userpwd);
+  test_setopt(curl, CURLOPT_HTTPAUTH, auth_scheme);
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+  free(full_url);
+  return res;
+}
+
+static CURLcode send_wrong_password(CURL *curl, const char *url, int seq,
+                                    long auth_scheme)
+{
+    return send_request(curl, url, seq, auth_scheme, "testuser:wrongpass");
+}
+
+static CURLcode send_right_password(CURL *curl, const char *url, int seq,
+                                    long auth_scheme)
+{
+    return send_request(curl, url, seq, auth_scheme, "testuser:testpass");
+}
+
+static long parse_auth_name(const char *arg)
+{
+  if(!arg)
+    return CURLAUTH_NONE;
+  if(curl_strequal(arg, "basic"))
+    return CURLAUTH_BASIC;
+  if(curl_strequal(arg, "digest"))
+    return CURLAUTH_DIGEST;
+  if(curl_strequal(arg, "ntlm"))
+    return CURLAUTH_NTLM;
+  return CURLAUTH_NONE;
+}
+
+int test(char *url)
+{
+  CURLcode res;
+  CURL *curl = NULL;
+
+  long main_auth_scheme = parse_auth_name(libtest_arg2);
+  long fallback_auth_scheme = parse_auth_name(libtest_arg3);
+
+  if(main_auth_scheme == CURLAUTH_NONE ||
+      fallback_auth_scheme == CURLAUTH_NONE) {
+    fprintf(stderr, "auth schemes not found on commandline\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  /* Send wrong password, then right password */
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  res = send_wrong_password(curl, url, 100, main_auth_scheme);
+  if(res != CURLE_OK)
+    goto test_cleanup;
+
+  res = send_right_password(curl, url, 200, fallback_auth_scheme);
+  if(res != CURLE_OK)
+    goto test_cleanup;
+
+  curl_easy_cleanup(curl);
+
+  /* Send wrong password twice, then right password */
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  res = send_wrong_password(curl, url, 300, main_auth_scheme);
+  if(res != CURLE_OK)
+    goto test_cleanup;
+
+  res = send_wrong_password(curl, url, 400, fallback_auth_scheme);
+  if(res != CURLE_OK)
+    goto test_cleanup;
+
+  res = send_right_password(curl, url, 500, fallback_auth_scheme);
+  if(res != CURLE_OK)
+    goto test_cleanup;
+
+test_cleanup:
+
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return (int)res;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/libntlmconnect.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/libntlmconnect.c
new file mode 100644
index 0000000..2ae7bb2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/libntlmconnect.c
@@ -0,0 +1,283 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2012 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+#include <assert.h>
+
+#include "testutil.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#define TEST_HANG_TIMEOUT 5 * 1000
+#define MAX_EASY_HANDLES 3
+
+static CURL *easy[MAX_EASY_HANDLES];
+static curl_socket_t sockets[MAX_EASY_HANDLES];
+static int res = 0;
+
+static size_t callback(char *ptr, size_t size, size_t nmemb, void *data)
+{
+  ssize_t idx = ((CURL **) data) - easy;
+  curl_socket_t sock;
+  long longdata;
+  CURLcode code;
+
+  const size_t failure = (size && nmemb) ? 0 : 1;
+
+  char *output = malloc(size * nmemb + 1);
+  if(!output) {
+    fprintf(stderr, "output, malloc() failed\n");
+    res = TEST_ERR_MAJOR_BAD;
+    return failure;
+  }
+
+  memcpy(output, ptr, size * nmemb);
+  output[size * nmemb] = '\0';
+  fprintf(stdout, "%s", output);
+  free(output);
+
+  /* Get socket being used for this easy handle, otherwise CURL_SOCKET_BAD */
+  code = curl_easy_getinfo(easy[idx], CURLINFO_LASTSOCKET, &longdata);
+  if(CURLE_OK != code) {
+    fprintf(stderr, "%s:%d curl_easy_getinfo() failed, "
+            "with code %d (%s)\n",
+            __FILE__, __LINE__, (int)code, curl_easy_strerror(code));
+    res = TEST_ERR_MAJOR_BAD;
+    return failure;
+  }
+  if(longdata == -1L)
+    sock = CURL_SOCKET_BAD;
+  else
+    sock = (curl_socket_t)longdata;
+
+  if(sock != CURL_SOCKET_BAD) {
+    /* Track relationship between this easy handle and the socket. */
+    if(sockets[idx] == CURL_SOCKET_BAD) {
+      /* An easy handle without previous socket, record the socket. */
+      sockets[idx] = sock;
+    }
+    else if(sock != sockets[idx]) {
+      /* An easy handle with a socket different to previously
+         tracked one, log and fail right away. Known bug #37. */
+      fprintf(stderr, "Handle %d started on socket %d and moved to %d\n",
+              curlx_sztosi(idx), (int)sockets[idx], (int)sock);
+      res = TEST_ERR_MAJOR_BAD;
+      return failure;
+    }
+  }
+  return size * nmemb;
+}
+
+enum HandleState {
+  ReadyForNewHandle,
+  NeedSocketForNewHandle,
+  NoMoreHandles
+};
+
+int test(char *url)
+{
+  CURLM *multi = NULL;
+  int running;
+  int i, j;
+  int num_handles = 0;
+  enum HandleState state = ReadyForNewHandle;
+  size_t urllen = strlen(url) + 4 + 1;
+  char *full_url = malloc(urllen);
+
+  start_test_timing();
+
+  if(!full_url) {
+    fprintf(stderr, "Not enough memory for full url\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  for(i = 0; i < MAX_EASY_HANDLES; ++i) {
+    easy[i] = NULL;
+    sockets[i] = CURL_SOCKET_BAD;
+  }
+
+  res_global_init(CURL_GLOBAL_ALL);
+  if(res) {
+    free(full_url);
+    return res;
+  }
+
+  multi_init(multi);
+
+#ifdef USE_PIPELINING
+  multi_setopt(multi, CURLMOPT_PIPELINING, 1L);
+  multi_setopt(multi, CURLMOPT_MAX_HOST_CONNECTIONS, 5L);
+  multi_setopt(multi, CURLMOPT_MAX_TOTAL_CONNECTIONS, 10L);
+#endif
+
+  for(;;) {
+    struct timeval interval;
+    fd_set fdread;
+    fd_set fdwrite;
+    fd_set fdexcep;
+    long timeout = -99;
+    int maxfd = -99;
+    bool found_new_socket = FALSE;
+
+    /* Start a new handle if we aren't at the max */
+    if(state == ReadyForNewHandle) {
+      easy_init(easy[num_handles]);
+
+      if(num_handles % 3 == 2) {
+        snprintf(full_url, urllen, "%s0200", url);
+        easy_setopt(easy[num_handles], CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
+      }
+      else {
+        snprintf(full_url, urllen, "%s0100", url);
+        easy_setopt(easy[num_handles], CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
+      }
+      easy_setopt(easy[num_handles], CURLOPT_FRESH_CONNECT, 1L);
+      easy_setopt(easy[num_handles], CURLOPT_URL, full_url);
+      easy_setopt(easy[num_handles], CURLOPT_VERBOSE, 1L);
+      easy_setopt(easy[num_handles], CURLOPT_HTTPGET, 1L);
+      easy_setopt(easy[num_handles], CURLOPT_USERPWD, "testuser:testpass");
+      easy_setopt(easy[num_handles], CURLOPT_WRITEFUNCTION, callback);
+      easy_setopt(easy[num_handles], CURLOPT_WRITEDATA, easy + num_handles);
+      easy_setopt(easy[num_handles], CURLOPT_HEADER, 1L);
+
+      multi_add_handle(multi, easy[num_handles]);
+      num_handles += 1;
+      state = NeedSocketForNewHandle;
+    }
+
+    multi_perform(multi, &running);
+
+    abort_on_test_timeout();
+
+    if(!running && state == NoMoreHandles)
+      break; /* done */
+
+    FD_ZERO(&fdread);
+    FD_ZERO(&fdwrite);
+    FD_ZERO(&fdexcep);
+
+    multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+    /* At this point, maxfd is guaranteed to be greater or equal than -1. */
+
+    /* Any socket which is new in fdread is associated with the new handle */
+    for(i = 0; i <= maxfd; ++i) {
+      bool socket_exists = FALSE;
+      curl_socket_t curfd = (curl_socket_t)i;
+
+      if(!FD_ISSET(curfd, &fdread)) {
+        continue;
+      }
+
+      /* Check if this socket was already detected for an earlier handle (or
+         for this handle, num_handles-1, in the callback */
+      for(j = 0; j < num_handles; ++j) {
+        if(sockets[j] == curfd) {
+          socket_exists = TRUE;
+          break;
+        }
+      }
+      if(socket_exists) {
+        continue;
+      }
+
+      if(found_new_socket || state != NeedSocketForNewHandle) {
+        fprintf(stderr, "Unexpected new socket\n");
+        res = TEST_ERR_MAJOR_BAD;
+        goto test_cleanup;
+      }
+
+      /* Now we know the socket is for the most recent handle, num_handles-1 */
+      if(sockets[num_handles-1] != CURL_SOCKET_BAD) {
+        /* A socket for this handle was already detected in the callback; if it
+           matched socket_exists should be true and we would never get here */
+        assert(curfd != sockets[num_handles-1]);
+        fprintf(stderr, "Handle %d wrote to socket %d then detected on %d\n",
+                num_handles-1, (int)sockets[num_handles-1], (int)curfd);
+        res = TEST_ERR_MAJOR_BAD;
+        goto test_cleanup;
+      }
+      else {
+        sockets[num_handles-1] = curfd;
+        found_new_socket = TRUE;
+        /* continue to make sure there's only one new handle */
+      }
+    }
+
+    if(state == NeedSocketForNewHandle) {
+      if(maxfd != -1 && !found_new_socket) {
+        fprintf(stderr, "Warning: socket did not open immediately for new "
+                "handle (trying again)\n");
+        continue;
+      }
+      state = num_handles < MAX_EASY_HANDLES ? ReadyForNewHandle
+                                             : NoMoreHandles;
+    }
+
+    multi_timeout(multi, &timeout);
+
+    /* At this point, timeout is guaranteed to be greater or equal than -1. */
+
+    fprintf(stderr, "%s:%d num_handles %d timeout %ld\n",
+            __FILE__, __LINE__, num_handles, timeout);
+
+    if(timeout != -1L) {
+      int itimeout = (timeout > (long)INT_MAX) ? INT_MAX : (int)timeout;
+      interval.tv_sec = itimeout/1000;
+      interval.tv_usec = (itimeout%1000)*1000;
+    }
+    else {
+      interval.tv_sec = TEST_HANG_TIMEOUT/1000+1;
+      interval.tv_usec = 0;
+
+      /* if there's no timeout and we get here on the last handle, we may
+         already have read the last part of the stream so waiting makes no
+         sense */
+      if(!running && num_handles == MAX_EASY_HANDLES) {
+        break;
+      }
+    }
+
+    select_test(maxfd+1, &fdread, &fdwrite, &fdexcep, &interval);
+
+    abort_on_test_timeout();
+  }
+
+test_cleanup:
+
+  /* proper cleanup sequence - type PB */
+
+  for(i = 0; i < MAX_EASY_HANDLES; i++) {
+    curl_multi_remove_handle(multi, easy[i]);
+    curl_easy_cleanup(easy[i]);
+  }
+
+  curl_multi_cleanup(multi);
+  curl_global_cleanup();
+
+  free(full_url);
+
+  return res;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/notexists.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/notexists.pl
new file mode 100755
index 0000000..31b9851
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/notexists.pl
@@ -0,0 +1,15 @@
+#!/usr/bin/env perl
+# Check that given arguments do not exist on filesystem.
+my $code = 0;
+if ($#ARGV < 0) {
+    print "Usage: $0 file1 [fileN]\n";
+    exit 2;
+}
+while (@ARGV) {
+    my $fname = shift @ARGV;
+    if (-e $fname) {
+        print "Found '$fname' when not supposed to exist.\n";
+        $code = 1;
+    }
+}
+exit $code;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/sethostname.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/sethostname.c
new file mode 100644
index 0000000..210a600
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/sethostname.c
@@ -0,0 +1,41 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curl_setup.h"
+
+#include "sethostname.h"
+
+/*
+ * we force our own host name, in order to make some tests machine independent
+ */
+
+int gethostname(char *name, GETHOSTNAME_TYPE_ARG2 namelen)
+{
+  const char *force_hostname = getenv("CURL_GETHOSTNAME");
+  if(force_hostname) {
+    strncpy(name, force_hostname, namelen);
+    name[namelen-1] = '\0';
+    return 0;
+  }
+
+  /* LD_PRELOAD used, but no hostname set, we'll just return a failure */
+  return -1;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/sethostname.h b/ap/lib/libcurl/curl-7.54.1/tests/libtest/sethostname.h
new file mode 100644
index 0000000..1a1c077
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/sethostname.h
@@ -0,0 +1,41 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#ifdef CURL_STATICLIB
+#  define LIBHOSTNAME_EXTERN
+#elif defined(WIN32) || defined(__SYMBIAN32__)
+#  define LIBHOSTNAME_EXTERN  __declspec(dllexport)
+#elif defined(CURL_HIDDEN_SYMBOLS)
+#  define LIBHOSTNAME_EXTERN CURL_EXTERN_SYMBOL
+#else
+#  define LIBHOSTNAME_EXTERN
+#endif
+
+#ifdef USE_WINSOCK
+#  define FUNCALLCONV __stdcall
+#else
+#  define FUNCALLCONV
+#endif
+
+LIBHOSTNAME_EXTERN int FUNCALLCONV
+  gethostname(char *name, GETHOSTNAME_TYPE_ARG2 namelen);
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test.h b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test.h
new file mode 100644
index 0000000..bb1acca
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test.h
@@ -0,0 +1,434 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/* !checksrc! disable ASSIGNWITHINCONDITION all */
+
+/* Now include the curl_setup.h file from libcurl's private libdir (the source
+   version, but that might include "curl_config.h" from the build dir so we
+   need both of them in the include path), so that we get good in-depth
+   knowledge about the system we're building this on */
+
+#define CURL_NO_OLDIES
+
+#include "curl_setup.h"
+
+#include <curl/curl.h>
+
+#ifdef HAVE_SYS_SELECT_H
+/* since so many tests use select(), we can just as well include it here */
+#include <sys/select.h>
+#endif
+
+#ifdef TPF
+#  include "select.h"
+#endif
+
+#include "curl_printf.h"
+
+#define test_setopt(A,B,C) \
+  if((res = curl_easy_setopt((A), (B), (C))) != CURLE_OK) goto test_cleanup
+
+#define test_multi_setopt(A,B,C) \
+  if((res = curl_multi_setopt((A), (B), (C))) != CURLE_OK) goto test_cleanup
+
+extern char *libtest_arg2; /* set by first.c to the argv[2] or NULL */
+extern char *libtest_arg3; /* set by first.c to the argv[3] or NULL */
+
+/* argc and argv as passed in to the main() function */
+extern int test_argc;
+extern char **test_argv;
+
+extern struct timeval tv_test_start; /* for test timing */
+
+extern int select_wrapper(int nfds, fd_set *rd, fd_set *wr, fd_set *exc,
+                          struct timeval *tv);
+
+extern void wait_ms(int ms); /* wait this many milliseconds */
+
+extern int test(char *URL); /* the actual test function provided by each
+                               individual libXXX.c file */
+
+extern char *hexdump(const unsigned char *buffer, size_t len);
+
+#ifdef UNITTESTS
+extern int unitfail;
+#endif
+
+/*
+** TEST_ERR_* values must be greater than CURL_LAST CURLcode in order
+** to avoid confusion with any CURLcode or CURLMcode. These TEST_ERR_*
+** codes are returned to signal test specific situations and should
+** not get mixed with CURLcode or CURLMcode values.
+**
+** For portability reasons TEST_ERR_* values should be less than 127.
+*/
+
+#define TEST_ERR_MAJOR_BAD     126
+#define TEST_ERR_RUNS_FOREVER  125
+#define TEST_ERR_EASY_INIT     124
+#define TEST_ERR_MULTI_INIT    123
+#define TEST_ERR_NUM_HANDLES   122
+#define TEST_ERR_SELECT        121
+#define TEST_ERR_SUCCESS       120
+#define TEST_ERR_FAILURE       119
+#define TEST_ERR_USAGE         118
+#define TEST_ERR_FOPEN         117
+#define TEST_ERR_FSTAT         116
+#define TEST_ERR_BAD_TIMEOUT   115
+
+/*
+** Macros for test source code readability/maintainability.
+**
+** All of the following macros require that an int data type 'res' variable
+** exists in scope where macro is used, and that it has been initialized to
+** zero before the macro is used.
+**
+** exe_* and chk_* macros are helper macros not intended to be used from
+** outside of this header file. Arguments 'Y' and 'Z' of these represent
+** source code file and line number, while Arguments 'A', 'B', etc, are
+** the arguments used to actually call a libcurl function.
+**
+** All easy_* and multi_* macros call a libcurl function and evaluate if
+** the function has succeeded or failed. When the function succeeds 'res'
+** variable is not set nor cleared and program continues normal flow. On
+** the other hand if function fails 'res' variable is set and a jump to
+** label 'test_cleanup' is performed.
+**
+** Every easy_* and multi_* macros have a res_easy_* and res_multi_* macro
+** counterpart that operates in the same way with the exception that no
+** jump takes place in case of failure. res_easy_* and res_multi_* macros
+** should be immediately followed by checking if 'res' variable has been
+** set.
+**
+** 'res' variable when set will hold a CURLcode, CURLMcode, or any of the
+** TEST_ERR_* values defined above. It is advisable to return this value
+** as test result.
+*/
+
+/* ---------------------------------------------------------------- */
+
+#define exe_easy_init(A,Y,Z) do {                                 \
+  if(((A) = curl_easy_init()) == NULL) {                          \
+    fprintf(stderr, "%s:%d curl_easy_init() failed\n", (Y), (Z)); \
+    res = TEST_ERR_EASY_INIT;                                     \
+  }                                                               \
+} WHILE_FALSE
+
+#define res_easy_init(A) \
+  exe_easy_init((A), (__FILE__), (__LINE__))
+
+#define chk_easy_init(A,Y,Z) do { \
+  exe_easy_init((A), (Y), (Z));   \
+  if(res)                         \
+    goto test_cleanup;            \
+} WHILE_FALSE
+
+#define easy_init(A) \
+  chk_easy_init((A), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_init(A,Y,Z) do {                                 \
+  if(((A) = curl_multi_init()) == NULL) {                          \
+    fprintf(stderr, "%s:%d curl_multi_init() failed\n", (Y), (Z)); \
+    res = TEST_ERR_MULTI_INIT;                                     \
+  }                                                                \
+} WHILE_FALSE
+
+#define res_multi_init(A) \
+  exe_multi_init((A), (__FILE__), (__LINE__))
+
+#define chk_multi_init(A,Y,Z) do { \
+  exe_multi_init((A), (Y), (Z));   \
+  if(res)                          \
+    goto test_cleanup;             \
+} WHILE_FALSE
+
+#define multi_init(A) \
+  chk_multi_init((A), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_easy_setopt(A,B,C,Y,Z) do {                    \
+  CURLcode ec;                                             \
+  if((ec = curl_easy_setopt((A), (B), (C))) != CURLE_OK) { \
+    fprintf(stderr, "%s:%d curl_easy_setopt() failed, "    \
+            "with code %d (%s)\n",                         \
+            (Y), (Z), (int)ec, curl_easy_strerror(ec));    \
+    res = (int)ec;                                         \
+  }                                                        \
+} WHILE_FALSE
+
+#define res_easy_setopt(A, B, C) \
+  exe_easy_setopt((A), (B), (C), (__FILE__), (__LINE__))
+
+#define chk_easy_setopt(A, B, C, Y, Z) do { \
+  exe_easy_setopt((A), (B), (C), (Y), (Z)); \
+  if(res)                                   \
+    goto test_cleanup;                      \
+} WHILE_FALSE
+
+#define easy_setopt(A, B, C) \
+  chk_easy_setopt((A), (B), (C), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_setopt(A, B, C, Y, Z) do {                \
+  CURLMcode ec;                                             \
+  if((ec = curl_multi_setopt((A), (B), (C))) != CURLM_OK) { \
+    fprintf(stderr, "%s:%d curl_multi_setopt() failed, "    \
+            "with code %d (%s)\n",                          \
+            (Y), (Z), (int)ec, curl_multi_strerror(ec));    \
+    res = (int)ec;                                          \
+  }                                                         \
+} WHILE_FALSE
+
+#define res_multi_setopt(A,B,C) \
+  exe_multi_setopt((A), (B), (C), (__FILE__), (__LINE__))
+
+#define chk_multi_setopt(A,B,C,Y,Z) do {     \
+  exe_multi_setopt((A), (B), (C), (Y), (Z)); \
+  if(res)                                    \
+    goto test_cleanup;                       \
+} WHILE_FALSE
+
+#define multi_setopt(A,B,C) \
+  chk_multi_setopt((A), (B), (C), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_add_handle(A,B,Y,Z) do {                   \
+  CURLMcode ec;                                              \
+  if((ec = curl_multi_add_handle((A), (B))) != CURLM_OK) {   \
+    fprintf(stderr, "%s:%d curl_multi_add_handle() failed, " \
+            "with code %d (%s)\n",                           \
+            (Y), (Z), (int)ec, curl_multi_strerror(ec));     \
+    res = (int)ec;                                           \
+  }                                                          \
+} WHILE_FALSE
+
+#define res_multi_add_handle(A, B) \
+  exe_multi_add_handle((A), (B), (__FILE__), (__LINE__))
+
+#define chk_multi_add_handle(A, B, Y, Z) do { \
+  exe_multi_add_handle((A), (B), (Y), (Z));   \
+  if(res)                                     \
+    goto test_cleanup;                        \
+} WHILE_FALSE
+
+#define multi_add_handle(A, B) \
+  chk_multi_add_handle((A), (B), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_remove_handle(A,B,Y,Z) do {                   \
+  CURLMcode ec;                                                 \
+  if((ec = curl_multi_remove_handle((A), (B))) != CURLM_OK) {   \
+    fprintf(stderr, "%s:%d curl_multi_remove_handle() failed, " \
+            "with code %d (%s)\n",                              \
+            (Y), (Z), (int)ec, curl_multi_strerror(ec));        \
+    res = (int)ec;                                              \
+  }                                                             \
+} WHILE_FALSE
+
+#define res_multi_remove_handle(A, B) \
+  exe_multi_remove_handle((A), (B), (__FILE__), (__LINE__))
+
+#define chk_multi_remove_handle(A, B, Y, Z) do { \
+  exe_multi_remove_handle((A), (B), (Y), (Z));   \
+  if(res)                                        \
+    goto test_cleanup;                           \
+} WHILE_FALSE
+
+
+#define multi_remove_handle(A, B) \
+  chk_multi_remove_handle((A), (B), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_perform(A,B,Y,Z) do {                          \
+  CURLMcode ec;                                                  \
+  if((ec = curl_multi_perform((A), (B))) != CURLM_OK) {          \
+    fprintf(stderr, "%s:%d curl_multi_perform() failed, "        \
+            "with code %d (%s)\n",                               \
+            (Y), (Z), (int)ec, curl_multi_strerror(ec));         \
+    res = (int)ec;                                               \
+  }                                                              \
+  else if(*((B)) < 0) {                                          \
+    fprintf(stderr, "%s:%d curl_multi_perform() succeeded, "     \
+            "but returned invalid running_handles value (%d)\n", \
+            (Y), (Z), (int)*((B)));                              \
+    res = TEST_ERR_NUM_HANDLES;                                  \
+  }                                                              \
+} WHILE_FALSE
+
+#define res_multi_perform(A, B) \
+  exe_multi_perform((A), (B), (__FILE__), (__LINE__))
+
+#define chk_multi_perform(A, B, Y, Z) do { \
+  exe_multi_perform((A), (B), (Y), (Z));   \
+  if(res)                                  \
+    goto test_cleanup;                     \
+} WHILE_FALSE
+
+#define multi_perform(A,B) \
+  chk_multi_perform((A), (B), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_fdset(A, B, C, D, E, Y, Z) do {                    \
+  CURLMcode ec;                                                      \
+  if((ec = curl_multi_fdset((A), (B), (C), (D), (E))) != CURLM_OK) { \
+    fprintf(stderr, "%s:%d curl_multi_fdset() failed, "              \
+            "with code %d (%s)\n",                                   \
+            (Y), (Z), (int)ec, curl_multi_strerror(ec));             \
+    res = (int)ec;                                                   \
+  }                                                                  \
+  else if(*((E)) < -1) {                                             \
+    fprintf(stderr, "%s:%d curl_multi_fdset() succeeded, "           \
+            "but returned invalid max_fd value (%d)\n",              \
+            (Y), (Z), (int)*((E)));                                  \
+    res = TEST_ERR_NUM_HANDLES;                                      \
+  }                                                                  \
+} WHILE_FALSE
+
+#define res_multi_fdset(A, B, C, D, E) \
+  exe_multi_fdset((A), (B), (C), (D), (E), (__FILE__), (__LINE__))
+
+#define chk_multi_fdset(A, B, C, D, E, Y, Z) do {       \
+    exe_multi_fdset((A), (B), (C), (D), (E), (Y), (Z)); \
+    if(res)                                             \
+      goto test_cleanup;                                \
+  } WHILE_FALSE
+
+#define multi_fdset(A, B, C, D, E) \
+  chk_multi_fdset((A), (B), (C), (D), (E), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_multi_timeout(A,B,Y,Z) do {                      \
+  CURLMcode ec;                                              \
+  if((ec = curl_multi_timeout((A), (B))) != CURLM_OK) {      \
+    fprintf(stderr, "%s:%d curl_multi_timeout() failed, "    \
+            "with code %d (%s)\n",                           \
+            (Y), (Z), (int)ec, curl_multi_strerror(ec));     \
+    res = (int)ec;                                           \
+  }                                                          \
+  else if(*((B)) < -1L) {                                    \
+    fprintf(stderr, "%s:%d curl_multi_timeout() succeeded, " \
+            "but returned invalid timeout value (%ld)\n",    \
+            (Y), (Z), (long)*((B)));                         \
+    res = TEST_ERR_BAD_TIMEOUT;                              \
+  }                                                          \
+} WHILE_FALSE
+
+#define res_multi_timeout(A, B) \
+  exe_multi_timeout((A), (B), (__FILE__), (__LINE__))
+
+#define chk_multi_timeout(A, B, Y, Z) do { \
+    exe_multi_timeout((A), (B), (Y), (Z)); \
+    if(res)                                \
+      goto test_cleanup;                   \
+  } WHILE_FALSE
+
+#define multi_timeout(A, B) \
+  chk_multi_timeout((A), (B), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_select_test(A, B, C, D, E, Y, Z) do {               \
+    int ec;                                                     \
+    if(select_wrapper((A), (B), (C), (D), (E)) == -1) {         \
+      ec = SOCKERRNO;                                           \
+      fprintf(stderr, "%s:%d select() failed, with "            \
+              "errno %d (%s)\n",                                \
+              (Y), (Z), ec, strerror(ec));                      \
+      res = TEST_ERR_SELECT;                                    \
+    }                                                           \
+  } WHILE_FALSE
+
+#define res_select_test(A, B, C, D, E) \
+  exe_select_test((A), (B), (C), (D), (E), (__FILE__), (__LINE__))
+
+#define chk_select_test(A, B, C, D, E, Y, Z) do {       \
+    exe_select_test((A), (B), (C), (D), (E), (Y), (Z)); \
+    if(res)                                             \
+      goto test_cleanup;                                \
+  } WHILE_FALSE
+
+#define select_test(A, B, C, D, E) \
+  chk_select_test((A), (B), (C), (D), (E), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define start_test_timing() do { \
+  tv_test_start = tutil_tvnow(); \
+} WHILE_FALSE
+
+#define exe_test_timedout(Y,Z) do {                                    \
+  if(tutil_tvdiff(tutil_tvnow(), tv_test_start) > TEST_HANG_TIMEOUT) { \
+    fprintf(stderr, "%s:%d ABORTING TEST, since it seems "             \
+                    "that it would have run forever.\n", (Y), (Z));    \
+    res = TEST_ERR_RUNS_FOREVER;                                       \
+  }                                                                    \
+} WHILE_FALSE
+
+#define res_test_timedout() \
+  exe_test_timedout((__FILE__), (__LINE__))
+
+#define chk_test_timedout(Y, Z) do { \
+    exe_test_timedout(Y, Z);         \
+    if(res)                          \
+      goto test_cleanup;             \
+  } WHILE_FALSE
+
+#define abort_on_test_timeout() \
+  chk_test_timedout((__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
+
+#define exe_global_init(A,Y,Z) do {                     \
+  CURLcode ec;                                          \
+  if((ec = curl_global_init((A))) != CURLE_OK) {        \
+    fprintf(stderr, "%s:%d curl_global_init() failed, " \
+            "with code %d (%s)\n",                      \
+            (Y), (Z), (int)ec, curl_easy_strerror(ec)); \
+    res = (int)ec;                                      \
+  }                                                     \
+} WHILE_FALSE
+
+#define res_global_init(A) \
+  exe_global_init((A), (__FILE__), (__LINE__))
+
+#define chk_global_init(A, Y, Z) do { \
+    exe_global_init((A), (Y), (Z));   \
+    if(res)                           \
+      return res;                     \
+  } WHILE_FALSE
+
+/* global_init() is different than other macros. In case of
+   failure it 'return's instead of going to 'test_cleanup'. */
+
+#define global_init(A) \
+  chk_global_init((A), (__FILE__), (__LINE__))
+
+/* ---------------------------------------------------------------- */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test1013.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test1013.pl
new file mode 100755
index 0000000..b680273
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test1013.pl
@@ -0,0 +1,51 @@
+#!/usr/bin/env perl
+# Determine if curl-config --protocols/--features matches the
+# curl --version protocols/features
+if ( $#ARGV != 2 )
+{
+    print "Usage: $0 curl-config-script curl-version-output-file features|protocols\n";
+    exit 3;
+}
+
+my $what=$ARGV[2];
+
+# Read the output of curl --version
+my $curl_protocols="";
+open(CURL, "$ARGV[1]") || die "Can't get curl $what list\n";
+while( <CURL> )
+{
+    $curl_protocols = lc($_) if ( /$what:/i );
+}
+close CURL;
+
+$curl_protocols =~ s/\r//;
+$curl_protocols =~ /\w+: (.*)$/;
+@curl = split / /,$1;
+
+# These features are not supported by curl-config
+@curl = grep(!/^(Debug|TrackMemory|Metalink|Largefile|CharConv)$/i, @curl);
+@curl = sort @curl;
+
+# Read the output of curl-config
+my @curl_config;
+open(CURLCONFIG, "sh $ARGV[0] --$what|") || die "Can't get curl-config $what list\n";
+while( <CURLCONFIG> )
+{
+    chomp;
+    # ignore curl-config --features not in curl's feature list
+    push @curl_config, lc($_);
+}
+close CURLCONFIG;
+
+@curl_config = sort @curl_config;
+
+my $curlproto = join ' ', @curl;
+my $curlconfigproto = join ' ', @curl_config;
+
+my $different = $curlproto ne $curlconfigproto;
+if ($different) {
+    print "Mismatch in $what lists:\n";
+    print "curl:        $curlproto\n";
+    print "curl-config: $curlconfigproto\n";
+}
+exit $different;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test1022.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test1022.pl
new file mode 100755
index 0000000..377808c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test1022.pl
@@ -0,0 +1,54 @@
+#!/usr/bin/env perl
+# Determine if curl-config --version matches the curl --version
+if ( $#ARGV != 2 )
+{
+    print "Usage: $0 curl-config-script curl-version-output-file version|vernum\n";
+    exit 3;
+}
+
+my $what=$ARGV[2];
+
+# Read the output of curl --version
+open(CURL, "$ARGV[1]") || die "Can't open curl --version list in $ARGV[1]\n";
+$_ = <CURL>;
+chomp;
+/libcurl\/([\.\d]+((-DEV)|(-\d+))?)/;
+my $version = $1;
+close CURL;
+
+my $curlconfigversion;
+
+# Read the output of curl-config --version/--vernum
+open(CURLCONFIG, "sh $ARGV[0] --$what|") || die "Can't get curl-config --$what list\n";
+$_ = <CURLCONFIG>;
+chomp;
+my $filever=$_;
+if ( $what eq "version" ) {
+    if($filever =~ /^libcurl ([\.\d]+((-DEV)|(-\d+))?)$/) {
+        $curlconfigversion = $1;
+    }
+    else {
+        $curlconfigversion = "illegal value";
+    }
+}
+else { # "vernum" case
+    # Convert hex version to decimal for comparison's sake
+    if($filever =~ /^(..)(..)(..)$/) {
+        $curlconfigversion = hex($1) . "." . hex($2) . "." . hex($3);
+    }
+    else {
+        $curlconfigversion = "illegal value";
+    }
+
+    # Strip off the -DEV from the curl version if it's there
+    $version =~ s/-\w*$//;
+}
+close CURLCONFIG;
+
+my $different = $version ne $curlconfigversion;
+if ($different || !$version) {
+    print "Mismatch in --version:\n";
+    print "curl:        $version\n";
+    print "curl-config: $curlconfigversion\n";
+    exit 1;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test307.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test307.pl
new file mode 100755
index 0000000..469af3c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test307.pl
@@ -0,0 +1,19 @@
+#!/usr/bin/env perl
+# Determine if the given curl executable supports the 'openssl' SSL engine
+if ( $#ARGV != 0 )
+{
+    print "Usage: $0 curl-executable\n";
+    exit 3;
+}
+if (!open(CURL, "@ARGV[0] -s --engine list|"))
+{
+    print "Can't get SSL engine list\n";
+    exit 2;
+}
+while( <CURL> )
+{
+    exit 0 if ( /openssl/ );
+}
+close CURL;
+print "openssl engine not supported\n";
+exit 1;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test610.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test610.pl
new file mode 100755
index 0000000..a900d94
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test610.pl
@@ -0,0 +1,33 @@
+#!/usr/bin/env perl
+# Perform simple file and directory manipulation in a portable way
+if ( $#ARGV <= 0 )
+{
+    print "Usage: $0 mkdir|rmdir|rm|move|gone path1 [path2] [more commands...]\n";
+    exit 1;
+}
+
+use File::Copy;
+while(@ARGV) {
+    my $cmd = shift @ARGV;
+    my $arg = shift @ARGV;
+    if ($cmd eq "mkdir") {
+        mkdir $arg || die "$!";
+    }
+    elsif ($cmd eq "rmdir") {
+        rmdir $arg || die "$!";
+    }
+    elsif ($cmd eq "rm") {
+        unlink $arg || die "$!";
+    }
+    elsif ($cmd eq "move") {
+        my $arg2 = shift @ARGV;
+        move($arg,$arg2) || die "$!";
+    }
+    elsif ($cmd eq "gone") {
+        ! -e $arg || die "Path $arg exists";
+    } else {
+        print "Unsupported command $cmd\n";
+        exit 1;
+    }
+}
+exit 0;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test613.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test613.pl
new file mode 100755
index 0000000..03d09cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test613.pl
@@ -0,0 +1,109 @@
+#!/usr/bin/env perl
+# Prepare a directory with known files and clean up afterwards
+use Time::Local;
+
+if ( $#ARGV < 1 )
+{
+    print "Usage: $0 prepare|postprocess dir [logfile]\n";
+    exit 1;
+}
+
+# <precheck> expects an error message on stdout
+sub errout {
+    print $_[0] . "\n";
+    exit 1;
+}
+
+if ($ARGV[0] eq "prepare")
+{
+    my $dirname = $ARGV[1];
+    mkdir $dirname || errout "$!";
+    chdir $dirname;
+
+    # Create the files in alphabetical order, to increase the chances
+    # of receiving a consistent set of directory contents regardless
+    # of whether the server alphabetizes the results or not.
+    mkdir "asubdir" || errout "$!";
+    chmod 0777, "asubdir";
+
+    open(FILE, ">plainfile.txt") || errout "$!";
+    binmode FILE;
+    print FILE "Test file to support curl test suite\n";
+    close(FILE);
+    # The mtime is specifically chosen to be an even number so that it can be
+    # represented exactly on a FAT filesystem.
+    utime time, timegm(0,0,12,1,0,100), "plainfile.txt";
+    chmod 0666, "plainfile.txt";
+
+    open(FILE, ">rofile.txt") || errout "$!";
+    binmode FILE;
+    print FILE "Read-only test file to support curl test suite\n";
+    close(FILE);
+    # The mtime is specifically chosen to be an even number so that it can be
+    # represented exactly on a FAT filesystem.
+    utime time, timegm(0,0,12,31,11,100), "rofile.txt";
+    chmod 0444, "rofile.txt";
+
+    exit 0;
+}
+elsif ($ARGV[0] eq "postprocess")
+{
+    my $dirname = $ARGV[1];
+    my $logfile = $ARGV[2];
+
+    # Clean up the test directory
+    unlink "$dirname/rofile.txt";
+    unlink "$dirname/plainfile.txt";
+    rmdir "$dirname/asubdir";
+
+    rmdir $dirname || die "$!";
+
+    if ($logfile) {
+        # Process the directory file to remove all information that
+        # could be inconsistent from one test run to the next (e.g.
+        # file date) or may be unsupported on some platforms (e.g.
+        # Windows). Also, since 7.17.0, the sftp directory listing
+        # format can be dependent on the server (with a recent
+        # enough version of libssh2) so this script must also
+        # canonicalize the format.  Here are examples of the general
+        # format supported:
+        # -r--r--r--   12 ausername grp            47 Dec 31  2000 rofile.txt
+        # -r--r--r--   1  1234  4321         47 Dec 31  2000 rofile.txt
+        # The "canonical" format is similar to the first (which is
+        # the one generated on a typical Linux installation):
+        # -r-?r-?r-?   12 U         U              47 Dec 31  2000 rofile.txt
+
+        my @canondir;
+        open(IN, "<$logfile") || die "$!";
+        while (<IN>) {
+            /^(.)(..).(..).(..).\s*(\S+)\s+\S+\s+\S+\s+(\S+)\s+(\S+\s+\S+\s+\S+)(.*)$/;
+            if ($1 eq "d") {
+                # Erase all directory metadata except for the name, as it is not
+                # consistent for across all test systems and filesystems
+                push @canondir, "d?????????    N U         U               N ???  N NN:NN$8\n";
+            } elsif ($1 eq "-") {
+                # Erase user and group names, as they are not consistent across
+                # all test systems
+                my $line = sprintf("%s%s?%s?%s?%5d U         U %15d %s%s\n", $1,$2,$3,$4,$5,$6,$7,$8);
+                push @canondir, $line;
+            } else {
+                # Unexpected format; just pass it through and let the test fail
+                push @canondir, $_;
+            }
+        }
+        close(IN);
+
+        @canondir = sort {substr($a,57) cmp substr($b,57)} @canondir;
+        my $newfile = $logfile . ".new";
+        open(OUT, ">$newfile") || die "$!";
+        print OUT join('', @canondir);
+        close(OUT);
+
+        unlink $logfile;
+        rename $newfile, $logfile;
+    }
+
+    exit 0;
+}
+print "Unsupported command $ARGV[0]\n";
+exit 1;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/test75.pl b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test75.pl
new file mode 100755
index 0000000..31cdfb8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/test75.pl
@@ -0,0 +1,13 @@
+#!/usr/bin/env perl
+# Check that the length of a given URL is correct
+if ( $#ARGV != 1 )
+{
+    print "Usage: $0 string length\n";
+    exit 3;
+}
+if (length(@ARGV[0]) != @ARGV[1])
+{
+    print "Given host IP and port not supported\n";
+    exit 1;
+}
+exit 0;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/testtrace.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testtrace.c
new file mode 100644
index 0000000..62641e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testtrace.c
@@ -0,0 +1,143 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#include "test.h"
+#include "testutil.h"
+#include "testtrace.h"
+#include "memdebug.h"
+
+struct libtest_trace_cfg libtest_debug_config;
+
+static time_t epoch_offset; /* for test time tracing */
+static int    known_offset; /* for test time tracing */
+
+static
+void libtest_debug_dump(const char *timebuf, const char *text, FILE *stream,
+                        const unsigned char *ptr, size_t size, int nohex)
+{
+  size_t i;
+  size_t c;
+
+  unsigned int width = 0x10;
+
+  if(nohex)
+    /* without the hex output, we can fit more on screen */
+    width = 0x40;
+
+  fprintf(stream, "%s%s, %d bytes (0x%x)\n", timebuf, text,
+          (int)size, (int)size);
+
+  for(i = 0; i < size; i += width) {
+
+    fprintf(stream, "%04x: ", (int)i);
+
+    if(!nohex) {
+      /* hex not disabled, show it */
+      for(c = 0; c < width; c++)
+        if(i+c < size)
+          fprintf(stream, "%02x ", ptr[i+c]);
+        else
+          fputs("   ", stream);
+    }
+
+    for(c = 0; (c < width) && (i+c < size); c++) {
+      /* check for 0D0A; if found, skip past and start a new line of output */
+      if(nohex &&
+         (i+c+1 < size) && (ptr[i+c] == 0x0D) && (ptr[i+c+1] == 0x0A)) {
+        i += (c+2-width);
+        break;
+      }
+      fprintf(stream, "%c", ((ptr[i+c] >= 0x20) && (ptr[i+c] < 0x80)) ?
+              ptr[i+c] : '.');
+      /* check again for 0D0A, to avoid an extra \n if it's at width */
+      if(nohex &&
+         (i+c+2 < size) && (ptr[i+c+1] == 0x0D) && (ptr[i+c+2] == 0x0A)) {
+        i += (c+3-width);
+        break;
+      }
+    }
+    fputc('\n', stream); /* newline */
+  }
+  fflush(stream);
+}
+
+int libtest_debug_cb(CURL *handle, curl_infotype type,
+                     unsigned char *data, size_t size,
+                     void *userp)
+{
+
+  struct libtest_trace_cfg *trace_cfg = userp;
+  const char *text;
+  struct timeval tv;
+  struct tm *now;
+  char timebuf[20];
+  char *timestr;
+  time_t secs;
+
+  (void)handle;
+
+  timebuf[0] = '\0';
+  timestr = &timebuf[0];
+
+  if(trace_cfg->tracetime) {
+    tv = tutil_tvnow();
+    if(!known_offset) {
+      epoch_offset = time(NULL) - tv.tv_sec;
+      known_offset = 1;
+    }
+    secs = epoch_offset + tv.tv_sec;
+    now = localtime(&secs);  /* not thread safe but we don't care */
+    snprintf(timebuf, sizeof(timebuf), "%02d:%02d:%02d.%06ld ",
+             now->tm_hour, now->tm_min, now->tm_sec, (long)tv.tv_usec);
+  }
+
+  switch(type) {
+  case CURLINFO_TEXT:
+    fprintf(stderr, "%s== Info: %s", timestr, (char *)data);
+    /* FALLTHROUGH */
+  default: /* in case a new one is introduced to shock us */
+    return 0;
+
+  case CURLINFO_HEADER_OUT:
+    text = "=> Send header";
+    break;
+  case CURLINFO_DATA_OUT:
+    text = "=> Send data";
+    break;
+  case CURLINFO_SSL_DATA_OUT:
+    text = "=> Send SSL data";
+    break;
+  case CURLINFO_HEADER_IN:
+    text = "<= Recv header";
+    break;
+  case CURLINFO_DATA_IN:
+    text = "<= Recv data";
+    break;
+  case CURLINFO_SSL_DATA_IN:
+    text = "<= Recv SSL data";
+    break;
+  }
+
+  libtest_debug_dump(timebuf, text, stderr, data, size, trace_cfg->nohex);
+  return 0;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/testtrace.h b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testtrace.h
new file mode 100644
index 0000000..fafdf29
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testtrace.h
@@ -0,0 +1,37 @@
+#ifndef HEADER_LIBTEST_TESTTRACE_H
+#define HEADER_LIBTEST_TESTTRACE_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+struct libtest_trace_cfg {
+  int tracetime;  /* 0 represents FALSE, anything else TRUE */
+  int nohex;      /* 0 represents FALSE, anything else TRUE */
+};
+
+extern struct libtest_trace_cfg libtest_debug_config;
+
+int libtest_debug_cb(CURL *handle, curl_infotype type,
+                     unsigned char *data, size_t size,
+                     void *userp);
+
+#endif /* HEADER_LIBTEST_TESTTRACE_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/testutil.c b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testutil.c
new file mode 100644
index 0000000..f3ad0ce
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testutil.c
@@ -0,0 +1,130 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curl_setup.h"
+#include <curl/curl.h>
+#include "testutil.h"
+#include "memdebug.h"
+
+#if defined(WIN32) && !defined(MSDOS)
+
+struct timeval tutil_tvnow(void)
+{
+  /*
+  ** GetTickCount() is available on _all_ Windows versions from W95 up
+  ** to nowadays. Returns milliseconds elapsed since last system boot,
+  ** increases monotonically and wraps once 49.7 days have elapsed.
+  */
+  struct timeval now;
+  DWORD milliseconds = GetTickCount();
+  now.tv_sec = milliseconds / 1000;
+  now.tv_usec = (milliseconds % 1000) * 1000;
+  return now;
+}
+
+#elif defined(HAVE_CLOCK_GETTIME_MONOTONIC)
+
+struct timeval tutil_tvnow(void)
+{
+  /*
+  ** clock_gettime() is granted to be increased monotonically when the
+  ** monotonic clock is queried. Time starting point is unspecified, it
+  ** could be the system start-up time, the Epoch, or something else,
+  ** in any case the time starting point does not change once that the
+  ** system has started up.
+  */
+  struct timeval now;
+  struct timespec tsnow;
+  if(0 == clock_gettime(CLOCK_MONOTONIC, &tsnow)) {
+    now.tv_sec = tsnow.tv_sec;
+    now.tv_usec = tsnow.tv_nsec / 1000;
+  }
+  /*
+  ** Even when the configure process has truly detected monotonic clock
+  ** availability, it might happen that it is not actually available at
+  ** run-time. When this occurs simply fallback to other time source.
+  */
+#ifdef HAVE_GETTIMEOFDAY
+  else
+    (void)gettimeofday(&now, NULL);
+#else
+  else {
+    now.tv_sec = (long)time(NULL);
+    now.tv_usec = 0;
+  }
+#endif
+  return now;
+}
+
+#elif defined(HAVE_GETTIMEOFDAY)
+
+struct timeval tutil_tvnow(void)
+{
+  /*
+  ** gettimeofday() is not granted to be increased monotonically, due to
+  ** clock drifting and external source time synchronization it can jump
+  ** forward or backward in time.
+  */
+  struct timeval now;
+  (void)gettimeofday(&now, NULL);
+  return now;
+}
+
+#else
+
+struct timeval tutil_tvnow(void)
+{
+  /*
+  ** time() returns the value of time in seconds since the Epoch.
+  */
+  struct timeval now;
+  now.tv_sec = (long)time(NULL);
+  now.tv_usec = 0;
+  return now;
+}
+
+#endif
+
+/*
+ * Make sure that the first argument is the more recent time, as otherwise
+ * we'll get a weird negative time-diff back...
+ *
+ * Returns: the time difference in number of milliseconds.
+ */
+long tutil_tvdiff(struct timeval newer, struct timeval older)
+{
+  return (long)(newer.tv_sec-older.tv_sec)*1000+
+    (long)(newer.tv_usec-older.tv_usec)/1000;
+}
+
+
+/*
+ * Same as tutil_tvdiff but with full usec resolution.
+ *
+ * Returns: the time difference in seconds with subsecond resolution.
+ */
+double tutil_tvdiff_secs(struct timeval newer, struct timeval older)
+{
+  if(newer.tv_sec != older.tv_sec)
+    return (double)(newer.tv_sec-older.tv_sec)+
+      (double)(newer.tv_usec-older.tv_usec)/1000000.0;
+  return (double)(newer.tv_usec-older.tv_usec)/1000000.0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/libtest/testutil.h b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testutil.h
new file mode 100644
index 0000000..f2aeae6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/libtest/testutil.h
@@ -0,0 +1,45 @@
+#ifndef HEADER_CURL_LIBTEST_TESTUTIL_H
+#define HEADER_CURL_LIBTEST_TESTUTIL_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curl_setup.h"
+
+struct timeval tutil_tvnow(void);
+
+/*
+ * Make sure that the first argument (t1) is the more recent time and t2 is
+ * the older time, as otherwise you get a weird negative time-diff back...
+ *
+ * Returns: the time difference in number of milliseconds.
+ */
+long tutil_tvdiff(struct timeval t1, struct timeval t2);
+
+/*
+ * Same as tutil_tvdiff but with full usec resolution.
+ *
+ * Returns: the time difference in seconds with subsecond resolution.
+ */
+double tutil_tvdiff_secs(struct timeval t1, struct timeval t2);
+
+
+#endif  /* HEADER_CURL_LIBTEST_TESTUTIL_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/manpage-scan.pl b/ap/lib/libcurl/curl-7.54.1/tests/manpage-scan.pl
new file mode 100644
index 0000000..b6864c8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/manpage-scan.pl
@@ -0,0 +1,289 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2016, 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+#
+# Scan symbols-in-version (which is verified to be correct by test 1119), then
+# verify that each option mention in there that should have its own man page
+# actually does.
+#
+# In addition, make sure that every current option to curl_easy_setopt,
+# curl_easy_getinfo and curl_multi_setopt are also mentioned in their
+# corresponding main (index) man page.
+#
+# src/tool_getparam.c lists all options curl can parse
+# docs/curl.1 documents all command line options
+# src/tool_help.c outputs all options with curl -h
+# - make sure they're all in sync
+#
+# Output all deviances to stderr.
+
+use strict;
+use warnings;
+
+# we may get the dir roots pointed out
+my $root=$ARGV[0] || ".";
+my $buildroot=$ARGV[1] || ".";
+my $syms = "$root/docs/libcurl/symbols-in-versions";
+my $curlh = "$root/include/curl/curl.h";
+my $errors=0;
+
+# the prepopulated alias list is the CURLINFO_* defines that are used for the
+# debug function callback and the fact that they use the same prefix as the
+# curl_easy_getinfo options was a mistake.
+my %alias = (
+    'CURLINFO_DATA_IN' => 'none',
+    'CURLINFO_DATA_OUT' => 'none',
+    'CURLINFO_END' => 'none',
+    'CURLINFO_HEADER_IN' => 'none',
+    'CURLINFO_HEADER_OUT' => 'none',
+    'CURLINFO_LASTONE' => 'none',
+    'CURLINFO_NONE' => 'none',
+    'CURLINFO_SSL_DATA_IN' => 'none',
+    'CURLINFO_SSL_DATA_OUT' => 'none',
+    'CURLINFO_TEXT' => 'none'
+    );
+
+sub scanmanpage {
+    my ($file, @words) = @_;
+
+    open(M, "<$file");
+    my @m = <M>;
+    close(M);
+
+    foreach my $m (@words) {
+
+        my @g = grep(/^\.IP $m/, @m);
+        if(!$g[0]) {
+            print STDERR "Missing mention of $m in $file\n";
+            $errors++;
+        }
+    }
+}
+
+# check for define alises
+open(R, "<$curlh") ||
+    die "no curl.h";
+while(<R>) {
+    if(/^\#define (CURL(OPT|INFO|MOPT)_\w+) (.*)/) {
+        $alias{$1}=$3;
+    }
+}
+close(R);
+
+my @curlopt;
+my @curlinfo;
+my @curlmopt;
+open(R, "<$syms") ||
+    die "no input file";
+while(<R>) {
+    chomp;
+    my $l= $_;
+    if($l =~ /(CURL(OPT|INFO|MOPT)_\w+) *([0-9.]*) *([0-9.-]*) *([0-9.]*)/) {
+        my ($opt, $type, $add, $dep, $rem) = ($1, $2, $3, $4, $5);
+
+        if($alias{$opt}) {
+            #print "$opt => $alias{$opt}\n";
+        }
+        elsif($rem) {
+            # $opt was removed in $rem
+            # so don't check for that
+        }
+        else {
+            if($type eq "OPT") {
+                push @curlopt, $opt,
+            }
+            elsif($type eq "INFO") {
+                push @curlinfo, $opt,
+            }
+            elsif($type eq "MOPT") {
+                push @curlmopt, $opt,
+            }
+            if(! -f "$root/docs/libcurl/opts/$opt.3") {
+                print STDERR "Missing $opt.3\n";
+                $errors++;
+            }
+        }
+    }
+}
+close(R);
+
+scanmanpage("$root/docs/libcurl/curl_easy_setopt.3", @curlopt);
+scanmanpage("$root/docs/libcurl/curl_easy_getinfo.3", @curlinfo);
+scanmanpage("$root/docs/libcurl/curl_multi_setopt.3", @curlmopt);
+
+# using this hash array, we can whitelist specific options
+my %opts = (
+    # pretend these --no options exists in tool_getparam.c
+    '--no-alpn' => 1,
+    '--no-npn' => 1,
+    '-N, --no-buffer' => 1,
+    '--no-sessionid' => 1,
+    '--no-keepalive' => 1,
+
+    # pretend these options without -no exist in curl.1 and tool_help.c
+    '--alpn' => 6,
+    '--npn' => 6,
+    '--eprt' => 6,
+    '--epsv' => 6,
+    '--keepalive' => 6,
+    '-N, --buffer' => 6,
+    '--sessionid' => 6,
+
+    # deprecated options do not need to be in tool_help.c nor curl.1
+    '--krb4' => 6,
+    '--ftp-ssl' => 6,
+    '--ftp-ssl-reqd' => 6,
+
+    # for tests and debug only, can remain hidden
+    '--test-event' => 6,
+    '--wdebug' => 6,
+    );
+
+
+#########################################################################
+# parse the curl code that parses the command line arguments!
+open(R, "<$root/src/tool_getparam.c") ||
+    die "no input file";
+my $list;
+my @getparam; # store all parsed parameters
+
+while(<R>) {
+    chomp;
+    my $l= $_;
+    if(/struct LongShort aliases/) {
+        $list=1;
+    }
+    elsif($list) {
+        if( /^  \{([^,]*), *([^ ]*)/) {
+            my ($s, $l)=($1, $2);
+            my $sh;
+            my $lo;
+            my $title;
+            if($l =~ /\"(.*)\"/) {
+                # long option
+                $lo = $1;
+                $title="--$lo";
+            }
+            if($s =~ /\"(.)\"/) {
+                # a short option
+                $sh = $1;
+                $title="-$sh, $title";
+            }
+            push @getparam, $title;
+            $opts{$title} |= 1;
+        }
+    }
+}
+close(R);
+
+#########################################################################
+# parse the curl.1 man page, extract all documented command line options
+# The man page may or may not be rebuilt, so check both possible locations
+open(R, "<$buildroot/docs/curl.1") || open(R, "<$root/docs/curl.1") ||
+    die "no input file";
+my @manpage; # store all parsed parameters
+while(<R>) {
+    chomp;
+    my $l= $_;
+    if(/^\.IP \"(-[^\"]*)\"/) {
+        my $str = $1;
+        my $combo;
+        if($str =~ /^-(.), --([a-z0-9.-]*)/) {
+            # figure out the -short, --long combo
+            $combo = "-$1, --$2";
+        }
+        elsif($str =~ /^--([a-z0-9.-]*)/) {
+            # figure out the --long name
+            $combo = "--$1";
+        }
+        if($combo) {
+            push @manpage, $combo;
+            $opts{$combo} |= 2;
+        }
+    }
+}
+close(R);
+
+
+#########################################################################
+# parse the curl code that outputs the curl -h list
+open(R, "<$root/src/tool_help.c") ||
+    die "no input file";
+my @toolhelp; # store all parsed parameters
+while(<R>) {
+    chomp;
+    my $l= $_;
+    if(/^  \{\" *(.*)/) {
+        my $str=$1;
+        my $combo;
+        if($str =~ /^-(.), --([a-z0-9.-]*)/) {
+            # figure out the -short, --long combo
+            $combo = "-$1, --$2";
+        }
+        elsif($str =~ /^--([a-z0-9.-]*)/) {
+            # figure out the --long name
+            $combo = "--$1";
+        }
+        if($combo) {
+            push @toolhelp, $combo;
+            $opts{$combo} |= 4;
+        }
+
+    }
+}
+close(R);
+
+#
+# Now we have three arrays with options to cross-reference.
+
+foreach my $o (keys %opts) {
+    my $where = $opts{$o};
+
+    if($where != 7) {
+        # this is not in all three places
+        $errors++;
+        my $exists;
+        my $missing;
+        if($where & 1) {
+            $exists=" tool_getparam.c";
+        }
+        else {
+            $missing=" tool_getparam.c";
+        }
+        if($where & 2) {
+            $exists.= " curl.1";
+        }
+        else {
+            $missing.= " curl.1";
+        }
+        if($where & 4) {
+            $exists .= " tool_help.c";
+        }
+        else {
+            $missing .= " tool_help.c";
+        }
+
+        print STDERR "$o is not in$missing (but in$exists)\n";
+    }
+}
+
+exit $errors;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/mem-include-scan.pl b/ap/lib/libcurl/curl-7.54.1/tests/mem-include-scan.pl
new file mode 100644
index 0000000..8922bd4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/mem-include-scan.pl
@@ -0,0 +1,96 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2010-2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+#
+# This script scans C source files. If they seem to use memory functions,
+# it also makes sure that it #includes the correct two header files!
+#
+# You can also mark a C source as fine by using 'mem-include-scan' anywhere in
+# it.
+#
+
+use strict;
+use warnings;
+
+my $dir = $ARGV[0] || die "specify directory!";
+
+sub scanfile {
+    my ($file) = @_;
+    my $memfunc;
+    my $memdebug;
+    my $curlmem;
+
+    print STDERR "checking $file...\n";
+
+    open(F, "<$file");
+    while(<F>) {
+        if($_ =~ /(free|alloc|strdup)\(/) {
+            $memfunc++;
+        }
+        elsif($_ =~ /^ *# *include \"memdebug.h\"/) {
+            $memdebug++;
+        }
+        elsif($_ =~ /^ *# *include \"curl_memory.h\"/) {
+            $curlmem++;
+        }
+        elsif($_ =~ /mem-include-scan/) {
+            # free pass
+            close(F);
+            return 0;
+        }
+        if($memfunc && $memdebug && $curlmem) {
+            last;
+        }
+    }
+    close(F);
+
+
+    if($memfunc) {
+        if($memdebug && $curlmem) {
+            return 0;
+        }
+        else {
+            if(!$memdebug) {
+                print STDERR "$file doesn't include \"memdebug.h\"!\n";
+            }
+            if(!$curlmem) {
+                print STDERR "$file doesn't include \"curl_memory.h\"!\n";
+            }
+            return 1;
+        }
+    }
+    return 0;
+}
+
+opendir(my $dh, $dir) || die "can't opendir $dir: $!";
+my @cfiles = grep { /\.c\z/ && -f "$dir/$_" } readdir($dh);
+closedir $dh;
+
+my $errs;
+for(@cfiles) {
+    $errs += scanfile("$dir/$_");
+}
+
+if($errs) {
+    print STDERR "----\n$errs errors detected!\n";
+    exit 2;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/memanalyze.pl b/ap/lib/libcurl/curl-7.54.1/tests/memanalyze.pl
new file mode 100755
index 0000000..35d1c7e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/memanalyze.pl
@@ -0,0 +1,409 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+#
+# Example input:
+#
+# MEM mprintf.c:1094 malloc(32) = e5718
+# MEM mprintf.c:1103 realloc(e5718, 64) = e6118
+# MEM sendf.c:232 free(f6520)
+
+my $mallocs=0;
+my $callocs=0;
+my $reallocs=0;
+my $strdups=0;
+my $wcsdups=0;
+my $showlimit;
+
+while(1) {
+    if($ARGV[0] eq "-v") {
+        $verbose=1;
+        shift @ARGV;
+    }
+    elsif($ARGV[0] eq "-t") {
+        $trace=1;
+        shift @ARGV;
+    }
+    elsif($ARGV[0] eq "-l") {
+        # only show what alloc that caused a memlimit failure
+        $showlimit=1;
+        shift @ARGV;
+    }
+    else {
+        last;
+    }
+}
+
+my $maxmem;
+
+sub newtotal {
+    my ($newtot)=@_;
+    # count a max here
+
+    if($newtot > $maxmem) {
+        $maxmem= $newtot;
+    }
+}
+
+my $file = $ARGV[0];
+
+if(! -f $file) {
+    print "Usage: memanalyze.pl [options] <dump file>\n",
+    "Options:\n",
+    " -l  memlimit failure displayed\n",
+    " -v  Verbose\n",
+    " -t  Trace\n";
+    exit;
+}
+
+open(FILE, "<$file");
+
+if($showlimit) {
+    while(<FILE>) {
+        if(/^LIMIT.*memlimit$/) {
+            print $_;
+            last;
+        }
+    }
+    close(FILE);
+    exit;
+}
+
+
+my $lnum=0;
+while(<FILE>) {
+    chomp $_;
+    $line = $_;
+    $lnum++;
+    if($line =~ /^LIMIT ([^ ]*):(\d*) (.*)/) {
+        # new memory limit test prefix
+        my $i = $3;
+        my ($source, $linenum) = ($1, $2);
+        if($trace && ($i =~ /([^ ]*) reached memlimit/)) {
+            print "LIMIT: $1 returned error at $source:$linenum\n";
+        }
+    }
+    elsif($line =~ /^MEM ([^ ]*):(\d*) (.*)/) {
+        # generic match for the filename+linenumber
+        $source = $1;
+        $linenum = $2;
+        $function = $3;
+
+        if($function =~ /free\((\(nil\)|0x([0-9a-f]*))/) {
+            $addr = $2;
+            if($1 eq "(nil)") {
+                ; # do nothing when free(NULL)
+            }
+            elsif(!exists $sizeataddr{$addr}) {
+                print "FREE ERROR: No memory allocated: $line\n";
+            }
+            elsif(-1 == $sizeataddr{$addr}) {
+                print "FREE ERROR: Memory freed twice: $line\n";
+                print "FREE ERROR: Previously freed at: ".$getmem{$addr}."\n";
+            }
+            else {
+                $totalmem -= $sizeataddr{$addr};
+                if($trace) {
+                    print "FREE: malloc at ".$getmem{$addr}." is freed again at $source:$linenum\n";
+                    printf("FREE: %d bytes freed, left allocated: $totalmem bytes\n", $sizeataddr{$addr});
+                }
+
+                newtotal($totalmem);
+                $frees++;
+
+                $sizeataddr{$addr}=-1; # set -1 to mark as freed
+                $getmem{$addr}="$source:$linenum";
+
+            }
+        }
+        elsif($function =~ /malloc\((\d*)\) = 0x([0-9a-f]*)/) {
+            $size = $1;
+            $addr = $2;
+
+            if($sizeataddr{$addr}>0) {
+                # this means weeeeeirdo
+                print "Mixed debug compile ($source:$linenum at line $lnum), rebuild curl now\n";
+                print "We think $sizeataddr{$addr} bytes are already allocated at that memory address: $addr!\n";
+            }
+
+            $sizeataddr{$addr}=$size;
+            $totalmem += $size;
+
+            if($trace) {
+                print "MALLOC: malloc($size) at $source:$linenum",
+                " makes totally $totalmem bytes\n";
+            }
+
+            newtotal($totalmem);
+            $mallocs++;
+
+            $getmem{$addr}="$source:$linenum";
+        }
+        elsif($function =~ /calloc\((\d*),(\d*)\) = 0x([0-9a-f]*)/) {
+            $size = $1*$2;
+            $addr = $3;
+
+            $arg1 = $1;
+            $arg2 = $2;
+
+            if($sizeataddr{$addr}>0) {
+                # this means weeeeeirdo
+                print "Mixed debug compile, rebuild curl now\n";
+            }
+
+            $sizeataddr{$addr}=$size;
+            $totalmem += $size;
+
+            if($trace) {
+                print "CALLOC: calloc($arg1,$arg2) at $source:$linenum",
+                " makes totally $totalmem bytes\n";
+            }
+
+            newtotal($totalmem);
+            $callocs++;
+
+            $getmem{$addr}="$source:$linenum";
+        }
+        elsif($function =~ /realloc\((\(nil\)|0x([0-9a-f]*)), (\d*)\) = 0x([0-9a-f]*)/) {
+            my ($oldaddr, $newsize, $newaddr) = ($2, $3, $4);
+
+            $totalmem -= $sizeataddr{$oldaddr};
+            if($trace) {
+                printf("REALLOC: %d less bytes and ", $sizeataddr{$oldaddr});
+            }
+            $sizeataddr{$oldaddr}=0;
+
+            $totalmem += $newsize;
+            $sizeataddr{$newaddr}=$newsize;
+
+            if($trace) {
+                printf("%d more bytes ($source:$linenum)\n", $newsize);
+            }
+
+            newtotal($totalmem);
+            $reallocs++;
+
+            $getmem{$oldaddr}="";
+            $getmem{$newaddr}="$source:$linenum";
+        }
+        elsif($function =~ /strdup\(0x([0-9a-f]*)\) \((\d*)\) = 0x([0-9a-f]*)/) {
+            # strdup(a5b50) (8) = df7c0
+
+            $dup = $1;
+            $size = $2;
+            $addr = $3;
+            $getmem{$addr}="$source:$linenum";
+            $sizeataddr{$addr}=$size;
+
+            $totalmem += $size;
+
+            if($trace) {
+                printf("STRDUP: $size bytes at %s, makes totally: %d bytes\n",
+                       $getmem{$addr}, $totalmem);
+            }
+
+            newtotal($totalmem);
+            $strdups++;
+        }
+        elsif($function =~ /wcsdup\(0x([0-9a-f]*)\) \((\d*)\) = 0x([0-9a-f]*)/) {
+            # wcsdup(a5b50) (8) = df7c0
+
+            $dup = $1;
+            $size = $2;
+            $addr = $3;
+            $getmem{$addr}="$source:$linenum";
+            $sizeataddr{$addr}=$size;
+
+            $totalmem += $size;
+
+            if($trace) {
+                printf("WCSDUP: $size bytes at %s, makes totally: %d bytes\n",
+                       $getmem{$addr}, $totalmem);
+            }
+
+            newtotal($totalmem);
+            $wcsdups++;
+        }
+        else {
+            print "Not recognized input line: $function\n";
+        }
+    }
+    # FD url.c:1282 socket() = 5
+    elsif($_ =~ /^FD ([^ ]*):(\d*) (.*)/) {
+        # generic match for the filename+linenumber
+        $source = $1;
+        $linenum = $2;
+        $function = $3;
+
+        if($function =~ /socket\(\) = (\d*)/) {
+            $filedes{$1}=1;
+            $getfile{$1}="$source:$linenum";
+            $openfile++;
+        }
+        elsif($function =~ /socketpair\(\) = (\d*) (\d*)/) {
+            $filedes{$1}=1;
+            $getfile{$1}="$source:$linenum";
+            $openfile++;
+            $filedes{$2}=1;
+            $getfile{$2}="$source:$linenum";
+            $openfile++;
+        }
+        elsif($function =~ /accept\(\) = (\d*)/) {
+            $filedes{$1}=1;
+            $getfile{$1}="$source:$linenum";
+            $openfile++;
+        }
+        elsif($function =~ /sclose\((\d*)\)/) {
+            if($filedes{$1} != 1) {
+                print "Close without open: $line\n";
+            }
+            else {
+                $filedes{$1}=0; # closed now
+                $openfile--;
+            }
+        }
+    }
+    # FILE url.c:1282 fopen("blabla") = 0x5ddd
+    elsif($_ =~ /^FILE ([^ ]*):(\d*) (.*)/) {
+        # generic match for the filename+linenumber
+        $source = $1;
+        $linenum = $2;
+        $function = $3;
+
+        if($function =~ /f[d]*open\(\"(.*)\",\"([^\"]*)\"\) = (\(nil\)|0x([0-9a-f]*))/) {
+            if($3 eq "(nil)") {
+                ;
+            }
+            else {
+                $fopen{$4}=1;
+                $fopenfile{$4}="$source:$linenum";
+                $fopens++;
+            }
+        }
+        # fclose(0x1026c8)
+        elsif($function =~ /fclose\(0x([0-9a-f]*)\)/) {
+            if(!$fopen{$1}) {
+                print "fclose() without fopen(): $line\n";
+            }
+            else {
+                $fopen{$1}=0;
+                $fopens--;
+            }
+        }
+    }
+    # GETNAME url.c:1901 getnameinfo()
+    elsif($_ =~ /^GETNAME ([^ ]*):(\d*) (.*)/) {
+        # not much to do
+    }
+
+    # ADDR url.c:1282 getaddrinfo() = 0x5ddd
+    elsif($_ =~ /^ADDR ([^ ]*):(\d*) (.*)/) {
+        # generic match for the filename+linenumber
+        $source = $1;
+        $linenum = $2;
+        $function = $3;
+
+        if($function =~ /getaddrinfo\(\) = (\(nil\)|0x([0-9a-f]*))/) {
+            my $add = $2;
+            if($add eq "(nil)") {
+                ;
+            }
+            else {
+                $addrinfo{$add}=1;
+                $addrinfofile{$add}="$source:$linenum";
+                $addrinfos++;
+            }
+            if($trace) {
+                printf("GETADDRINFO ($source:$linenum)\n");
+            }
+        }
+        # fclose(0x1026c8)
+        elsif($function =~ /freeaddrinfo\(0x([0-9a-f]*)\)/) {
+            if(!$addrinfo{$1}) {
+                print "freeaddrinfo() without getaddrinfo(): $line\n";
+            }
+            else {
+                $addrinfo{$1}=0;
+                $addrinfos--;
+            }
+            if($trace) {
+                printf("FREEADDRINFO ($source:$linenum)\n");
+            }
+        }
+
+    }
+    else {
+        print "Not recognized prefix line: $line\n";
+    }
+}
+close(FILE);
+
+if($totalmem) {
+    print "Leak detected: memory still allocated: $totalmem bytes\n";
+
+    for(keys %sizeataddr) {
+        $addr = $_;
+        $size = $sizeataddr{$addr};
+        if($size > 0) {
+            print "At $addr, there's $size bytes.\n";
+            print " allocated by ".$getmem{$addr}."\n";
+        }
+    }
+}
+
+if($openfile) {
+    for(keys %filedes) {
+        if($filedes{$_} == 1) {
+            print "Open file descriptor created at ".$getfile{$_}."\n";
+        }
+    }
+}
+
+if($fopens) {
+    print "Open FILE handles left at:\n";
+    for(keys %fopen) {
+        if($fopen{$_} == 1) {
+            print "fopen() called at ".$fopenfile{$_}."\n";
+        }
+    }
+}
+
+if($addrinfos) {
+    print "IPv6-style name resolve data left at:\n";
+    for(keys %addrinfofile) {
+        if($addrinfo{$_} == 1) {
+            print "getaddrinfo() called at ".$addrinfofile{$_}."\n";
+        }
+    }
+}
+
+if($verbose) {
+    print "Mallocs: $mallocs\n",
+    "Reallocs: $reallocs\n",
+    "Callocs: $callocs\n",
+    "Strdups:  $strdups\n",
+    "Wcsdups:  $wcsdups\n",
+    "Frees: $frees\n",
+    "Allocations: ".($mallocs + $callocs + $reallocs + $strdups + $wcsdups)."\n";
+
+    print "Maximum allocated: $maxmem\n";
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/nroff-scan.pl b/ap/lib/libcurl/curl-7.54.1/tests/nroff-scan.pl
new file mode 100644
index 0000000..393068c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/nroff-scan.pl
@@ -0,0 +1,104 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+#
+# scan nroff pages to find basic syntactic problems such as unbalanced \f
+# codes or references to non-existing curl man pages.
+
+my $docsroot = $ARGV[0];
+
+if(!$docsroot || ($docsroot eq "-g")) {
+    print "Usage: nroff-scan.pl <docs root dir> [nroff files]\n";
+    exit;
+}
+
+
+shift @ARGV;
+
+my @f = @ARGV;
+
+my %manp;
+
+sub manpresent {
+    my ($man) = @_;
+    if($manp{$man}) {
+        return 1;
+    }
+    elsif(-r "$docsroot/$man" ||
+          -r "$docsroot/libcurl/$man" ||
+          -r "$docsroot/libcurl/opts/$man") {
+        $manp{$man}=1;
+        return 1;
+    }
+    return 0;
+}
+
+sub file {
+    my ($f) = @_;
+    open(F, "<$f") ||
+        die "no file";
+    my $line = 1;
+    while(<F>) {
+        chomp;
+        my $l = $_;
+        while($l =~ s/\\f(.)([^ ]*)\\f(.)//) {
+            my ($pre, $str, $post)=($1, $2, $3);
+            if($post ne "P") {
+                print STDERR "error: $f:$line: missing \\fP after $str\n";
+                $errors++;
+            }
+            if($str =~ /((libcurl|curl)([^ ]*))\(3\)/i) {
+                my $man = "$1.3";
+                if(!manpresent($man)) {
+                    print STDERR "error: $f:$line: refering to non-existing man page $man\n";
+                    $errors++;
+                }
+                if($pre ne "I") {
+                    print STDERR "error: $f:$line: use \\fI before $str\n";
+                    $errors++;
+                }
+            }
+        }
+        if($l =~ /(curl([^ ]*)\(3\))/i) {
+            print STDERR "error: $f:$line: non-referencing $1\n";
+            $errors++;
+        }
+        if($l =~ /^\.BR (.*)/) {
+            my $i= $1;
+            while($i =~ s/((lib|)curl([^ ]*)) *\"\(3\)(,|) *\" *//i ) {
+                my $man = "$1.3";
+                if(!manpresent($man)) {
+                    print STDERR "error: $f:$line: refering to non-existing man page $man\n";
+                    $errors++;
+                }
+            }
+        }
+        $line++;
+    }
+    close(F);
+}
+
+foreach my $f (@f) {
+    file($f);
+}
+
+exit $errors?1:0;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/pathhelp.pm b/ap/lib/libcurl/curl-7.54.1/tests/pathhelp.pm
new file mode 100644
index 0000000..10a87aa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/pathhelp.pm
@@ -0,0 +1,761 @@
+###########################################################################
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2016, Evgeny Grin (Karlson2k), <k2k@narod.ru>.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+# This Perl package helps with path transforming when running curl tests on
+# Win32 platform with Msys or Cygwin.
+# Three main functions 'sys_native_abs_path', 'sys_native_path' and
+# 'build_sys_abs_path' autodetect format of given pathnames. Following formats
+# are supported:
+#  (1) /some/path   - absolute path in Unix-style
+#  (2) D:/some/path - absolute path in Win32-style
+#  (3) some/path    - relative path
+#  (4) D:some/path  - path relative to current directory on Win32 drive (paths
+#                     like 'D:' are treated as 'D:./') (*)
+#  (5) \some/path   - path from root directory on current Win32 drive (*)
+# All forward '/' and back '\' slashes are treated identically except leading
+# slash in forms (1) and (5).
+# Forward slashes are simpler processed in Perl, do not require extra escaping
+# for shell (unlike back slashes) and accepted by Win32 native programs, so
+# all functions return paths with only forward slashes except
+# 'sys_native_path' which returns paths with first forward slash for form (5).
+# All returned paths don't contain any duplicated slashes, only single slashes
+# are used as directory separators on output.
+# On non-Windows platforms functions acts as transparent wrappers for similar
+# Perl's functions or return unmodified string (depending on functionality),
+# so all functions can be unconditionally used on all platforms.
+#
+# (*) CAUTION! Forms (4) and (5) are not recommended to use as they can be
+#     interpreted incorrectly in Perl and Msys/Cygwin environment have low
+#     control on Win32 current drive and Win32 current path on specific drive.
+
+
+package pathhelp;
+use strict;
+use warnings;
+use Cwd 'abs_path';
+
+BEGIN {
+    require Exporter;
+
+    our @ISA    = qw(Exporter);
+
+    our @EXPORT = qw(
+      sys_native_abs_path
+      sys_native_path
+    );
+
+    our @EXPORT_OK = qw(
+      build_sys_abs_path
+      sys_native_current_path
+      normalize_path
+      os_is_win
+      $use_cygpath
+      should_use_cygpath
+      drives_mounted_on_cygdrive
+    );
+}
+
+
+#######################################################################
+# Block for cached static variables
+#
+{
+    # Cached static variable, Perl 5.0-compatible.
+    my $is_win = $^O eq 'MSWin32'
+              || $^O eq 'cygwin'
+              || $^O eq 'msys';
+
+    # Returns boolean true if OS is any form of Windows.
+    sub os_is_win {
+        return $is_win;
+    }
+
+    # Cached static variable, Perl 5.0-compatible.
+    my $cygdrive_present;
+
+    # Returns boolean true if Win32 drives mounted with '/cygdrive/' prefix.
+    sub drives_mounted_on_cygdrive {
+        return $cygdrive_present if defined $cygdrive_present;
+        $cygdrive_present = ((-e '/cygdrive/') && (-d '/cygdrive/')) ? 1 : 0;
+        return $cygdrive_present;
+    }
+}
+
+our $use_cygpath;    # Only for Win32:
+                     #  undef - autodetect
+                     #      1 - use cygpath
+                     #      0 - do not use cygpath
+
+# Returns boolean true if 'cygpath' utility should be used for path conversion.
+sub should_use_cygpath {
+    unless (os_is_win()) {
+        $use_cygpath = 0;
+        return 0;
+    }
+    return $use_cygpath if defined $use_cygpath;
+
+    $use_cygpath = (qx{cygpath -u '.\\' 2>/dev/null} eq "./\n" && $? == 0);
+
+    return $use_cygpath;
+}
+
+#######################################################################
+# Performs path "normalization": all slashes converted to forward
+# slashes (except leading slash), all duplicated slashes are replaced
+# with single slashes, all relative directories ('./' and '../') are
+# resolved if possible.
+# Path processed as string, directories are not checked for presence so
+# path for not yet existing directory can be "normalized".
+#
+sub normalize_path;
+
+#######################################################################
+# Returns current working directory in Win32 format on Windows.
+#
+sub sys_native_current_path {
+    return Cwd::getcwd() unless os_is_win();
+
+    my $cur_dir;
+    if($^O eq 'msys') {
+        # MSys shell has built-in command.
+        chomp($cur_dir = `bash -c 'pwd -W'`);
+        if($? != 0) {
+            warn "Can't determine Win32 current directory.\n";
+            return undef;
+        }
+        # Add final slash if required.
+        $cur_dir .= '/' if length($cur_dir) > 3;
+    }
+    else {
+        # Do not use 'cygpath' - it falsely succeed on paths like '/cygdrive'.
+        $cur_dir = `cmd "/c;" echo %__CD__%`;
+        if($? != 0 || substr($cur_dir, 0, 1) eq '%') {
+            warn "Can't determine Win32 current directory.\n";
+            return undef;
+        }
+        # Remove both '\r' and '\n'.
+        $cur_dir =~ s{\n|\r}{}g;
+
+        # Replace back slashes with forward slashes.
+        $cur_dir =~ s{\\}{/}g;
+    }
+    return $cur_dir;
+}
+
+#######################################################################
+# Returns Win32 current drive letter with colon.
+#
+sub get_win32_current_drive {
+    # Notice parameter "/c;" - it's required to turn off Msys's
+    # transformation of '/c' and compatible with Cygwin.
+    my $drive_letter = `cmd "/c;" echo %__CD__:~0,2%`;
+    if($? != 0 || substr($drive_letter, 1, 1) ne ':') {
+        warn "Can't determine current Win32 drive letter.\n";
+        return undef;
+    }
+
+    return substr($drive_letter, 0, 2);
+}
+
+# Internal function. Converts path by using Msys's built-in transformation.
+# Returned path may contain duplicated and back slashes.
+sub do_msys_transform;
+
+# Internal function. Gets two parameters: first parameter must be single
+# drive letter ('c'), second optional parameter is path relative to drive's 
+# current working directory. Returns Win32 absolute normalized path.
+sub get_abs_path_on_win32_drive;
+
+# Internal function. Tries to find or guess Win32 version of given
+# absolute Unix-style path. Other types of paths are not supported.
+# Returned paths contain only single forward slashes (no back and
+# duplicated slashes).
+# Last resort. Used only when other transformations are not available.
+sub do_dumb_guessed_transform;
+
+#######################################################################
+# Converts given path to system native format, i.e. to Win32 format on
+# Windows platform. Relative paths converted to relative, absolute
+# paths converted to absolute.
+#
+sub sys_native_path {
+    my ($path) = @_;
+
+    # Return untouched on non-Windows platforms.
+    return $path unless (os_is_win());
+
+    # Do not process empty path.
+    return $path if ($path eq '');
+
+    if($path =~ s{^([a-zA-Z]):$}{\u$1:}) {
+        # Path is single drive with colon. (C:)
+        # This type of paths is not processed correctly by 'cygpath'.
+        # WARNING!
+        # Be careful, this relative path can be accidentally transformed
+        # into wrong absolute path by adding to it some '/dirname' with
+        # slash at font.
+        return $path;
+    }
+    elsif($path =~ m{^\\} || $path =~ m{^[a-zA-Z]:[^/\\]}) {
+        # Path is a directory or filename on Win32 current drive or relative
+        # path on current directory on specific Win32 drive.
+        # ('\path' or 'D:path')
+        # First type of paths is not processed by Msys transformation and
+        # resolved to absolute path by 'cygpath'.
+        # Second type is not processed by Msys transformation and may be
+        # incorrectly processed by 'cygpath' (for paths like 'D:..\../.\')
+
+        my $first_char = ucfirst(substr($path, 0, 1));
+
+        # Replace any back and duplicated slashes with single forward slashes.
+        $path =~ s{[\\/]+}{/}g;
+
+        # Convert leading slash back to forward slash to indicate
+        # directory on Win32 current drive or capitalize drive letter.
+        substr($path, 0, 1) = $first_char;
+        return $path;
+    }
+    elsif(should_use_cygpath()) {
+        # 'cygpath' is available - use it.
+
+        # Remove leading duplicated forward and back slashes, as they may
+        # prevent transforming and may be not processed.
+        $path =~ s{^([\\/])[\\/]+}{$1}g;
+
+        my $has_final_slash = ($path =~ m{[/\\]$});
+
+        # Use 'cygpath', '-m' means Win32 path with forward slashes.
+        chomp($path = `cygpath -m '$path'`);
+        if ($? != 0) {
+            warn "Can't convert path by \"cygpath\".\n";
+            return undef;
+        }
+
+        # 'cygpath' may remove last slash for existing directories.
+        $path .= '/' if($has_final_slash);
+
+        # Remove any duplicated forward slashes (added by 'cygpath' for root
+        # directories)
+        $path =~ s{//+}{/}g;
+
+        return $path;
+    }
+    elsif($^O eq 'msys') {
+        # Msys transforms automatically path to Windows native form in staring
+        # program parameters if program is not Msys-based.
+
+        $path = do_msys_transform($path);
+        return undef unless defined $path;
+
+        # Capitalize drive letter for Win32 paths.
+        $path =~ s{^([a-z]:)}{\u$1};
+
+        # Replace any back and duplicated slashes with single forward slashes.
+        $path =~ s{[\\/]+}{/}g;
+        return $path;
+    }
+    elsif($path =~ s{^([a-zA-Z]):[/\\]}{\u$1:/}) {
+        # Path is already in Win32 form. ('C:\path')
+
+        # Replace any back and duplicated slashes with single forward slashes.
+        $path =~ s{[\\/]+}{/}g;
+        return $path;
+    }
+    elsif($path !~ m{^/}) {
+        # Path is in relative form. ('path/name', './path' or '../path')
+
+        # Replace any back and duplicated slashes with single forward slashes.
+        $path =~ s{[\\/]+}{/}g;
+        return $path;
+    }
+
+    # OS is Windows, but not Msys, path is absolute, path is not in Win32
+    # form and 'cygpath' is not available.
+    return do_dumb_guessed_transform($path);
+}
+
+#######################################################################
+# Converts given path to system native absolute path, i.e. to Win32
+# absolute format on Windows platform. Both relative and absolute
+# formats are supported for input.
+#
+sub sys_native_abs_path {
+    my ($path) = @_;
+
+    unless(os_is_win()) {
+        # Convert path to absolute form.
+        $path = Cwd::abs_path($path);
+
+        # Do not process further on non-Windows platforms.
+        return $path;
+    }
+
+    if($path =~ m{^([a-zA-Z]):($|[^/\\].*$)}) {
+        # Path is single drive with colon or relative path on Win32 drive.
+        # ('C:' or 'C:path')
+        # This kind of relative path is not processed correctly by 'cygpath'.
+        # Get specified drive letter
+        return get_abs_path_on_win32_drive($1, $2);
+    }
+    elsif($path eq '') {
+        # Path is empty string. Return current directory.
+        # Empty string processed correctly by 'cygpath'.
+
+        return sys_native_current_path();
+    }
+    elsif(should_use_cygpath()) {
+        # 'cygpath' is available - use it.
+
+        my $has_final_slash = ($path =~ m{[\\/]$});
+
+        # Remove leading duplicated forward and back slashes, as they may
+        # prevent transforming and may be not processed.
+        $path =~ s{^([\\/])[\\/]+}{$1}g;
+
+        print "Inter result: \"$path\"\n";
+        # Use 'cygpath', '-m' means Win32 path with forward slashes,
+        # '-a' means absolute path
+        chomp($path = `cygpath -m -a '$path'`);
+        if($? != 0) {
+            warn "Can't resolve path by usung \"cygpath\".\n";
+            return undef;
+        }
+
+        # 'cygpath' may remove last slash for existing directories.
+        $path .= '/' if($has_final_slash);
+
+        # Remove any duplicated forward slashes (added by 'cygpath' for root
+        # directories)
+        $path =~ s{//+}{/}g;
+
+        return $path
+    }
+    elsif($path =~ s{^([a-zA-Z]):[/\\]}{\u$1:/}) {
+        # Path is already in Win32 form. ('C:\path')
+
+        # Replace any possible back slashes with forward slashes,
+        # remove any duplicated slashes, resolve relative dirs.
+        return normalize_path($path);
+    }
+    elsif(substr($path, 0, 1) eq '\\' ) {
+        # Path is directory or filename on Win32 current drive. ('\Windows')
+
+        my $w32drive = get_win32_current_drive();
+        return undef unless defined $w32drive;
+
+        # Combine drive and path.
+        # Replace any possible back slashes with forward slashes,
+        # remove any duplicated slashes, resolve relative dirs.
+        return normalize_path($w32drive . $path);
+    }
+
+    unless (substr($path, 0, 1) eq '/') {
+        # Path is in relative form. Resolve relative directories in Unix form
+        # *BEFORE* converting to Win32 form otherwise paths like
+        # '../../../cygdrive/c/windows' will not be resolved.
+        my $cur_dir = `pwd -L`;
+        if($? != 0) {
+            warn "Can't determine current working directory.\n";
+            return undef;
+        }
+        chomp($cur_dir);
+
+        $path = $cur_dir . '/' . $path;
+    }
+
+    # Resolve relative dirs.
+    $path = normalize_path($path);
+    return undef unless defined $path;
+
+    if($^O eq 'msys') {
+        # Msys transforms automatically path to Windows native form in staring
+        # program parameters if program is not Msys-based.
+        $path = do_msys_transform($path);
+        return undef unless defined $path;
+
+        # Replace any back and duplicated slashes with single forward slashes.
+        $path =~ s{[\\/]+}{/}g;
+        return $path;
+    }
+    # OS is Windows, but not Msys, path is absolute, path is not in Win32
+    # form and 'cygpath' is not available.
+
+    return do_dumb_guessed_transform($path);
+}
+
+# Internal function. Converts given Unix-style absolute path to Win32 format.
+sub simple_transform_win32_to_unix;
+
+#######################################################################
+# Converts given path to build system format absolute path, i.e. to
+# Msys/Cygwin Unix-style absolute format on Windows platform. Both
+# relative and absolute formats are supported for input.
+#
+sub build_sys_abs_path {
+    my ($path) = @_;
+
+    unless(os_is_win()) {
+        # Convert path to absolute form.
+        $path = Cwd::abs_path($path);
+
+        # Do not process further on non-Windows platforms.
+        return $path;
+    }
+
+    if($path =~ m{^([a-zA-Z]):($|[^/\\].*$)}) {
+        # Path is single drive with colon or relative path on Win32 drive.
+        # ('C:' or 'C:path')
+        # This kind of relative path is not processed correctly by 'cygpath'.
+        # Get specified drive letter
+
+        # Resolve relative dirs in Win32-style path or paths like 'D:/../c/'
+        # will be resolved incorrectly.
+        # Replace any possible back slashes with forward slashes,
+        # remove any duplicated slashes.
+        $path = get_abs_path_on_win32_drive($1, $2);
+        return undef unless defined $path;
+
+        return simple_transform_win32_to_unix($path);
+    }
+    elsif($path eq '') {
+        # Path is empty string. Return current directory.
+        # Empty string processed correctly by 'cygpath'.
+
+        chomp($path = `pwd -L`);
+        if($? != 0) {
+            warn "Can't determine Unix-style current working directory.\n";
+            return undef;
+        }
+
+        # Add final slash if not at root dir.
+        $path .= '/' if length($path) > 2;
+        return $path;
+    }
+    elsif(should_use_cygpath()) {
+        # 'cygpath' is avalable - use it.
+
+        my $has_final_slash = ($path =~ m{[\\/]$});
+
+        # Resolve relative directories, as they may be not resolved for 
+        # Unix-style paths.
+        # Remove duplicated slashes, as they may be not processed.
+        $path = normalize_path($path);
+        return undef unless defined $path;
+
+        # Use 'cygpath', '-u' means Unix-stile path,
+        # '-a' means absolute path
+        chomp($path = `cygpath -u -a '$path'`);
+        if($? != 0) {
+            warn "Can't resolve path by usung \"cygpath\".\n";
+            return undef;
+        }
+
+        # 'cygpath' removes last slash if path is root dir on Win32 drive.
+        # Restore it.
+        $path .= '/' if($has_final_slash &&
+                        substr($path, length($path) - 1, 1) ne '/');
+
+        return $path
+    }
+    elsif($path =~ m{^[a-zA-Z]:[/\\]}) {
+        # Path is already in Win32 form. ('C:\path')
+
+        # Resolve relative dirs in Win32-style path otherwise paths
+        # like 'D:/../c/' will be resolved incorrectly.
+        # Replace any possible back slashes with forward slashes,
+        # remove any duplicated slashes.
+        $path = normalize_path($path);
+        return undef unless defined $path;
+
+        return simple_transform_win32_to_unix($path);
+    }
+    elsif(substr($path, 0, 1) eq '\\') {
+        # Path is directory or filename on Win32 current drive. ('\Windows')
+
+        my $w32drive = get_win32_current_drive();
+        return undef unless defined $w32drive;
+
+        # Combine drive and path.
+        # Resolve relative dirs in Win32-style path or paths like 'D:/../c/'
+        # will be resolved incorrectly.
+        # Replace any possible back slashes with forward slashes,
+        # remove any duplicated slashes.
+        $path = normalize_path($w32drive . $path);
+        return undef unless defined $path;
+
+        return simple_transform_win32_to_unix($path);
+    }
+
+    # Path is not in any Win32 form.
+    unless (substr($path, 0, 1) eq '/') {
+        # Path in relative form. Resolve relative directories in Unix form
+        # *BEFORE* converting to Win32 form otherwise paths like
+        # '../../../cygdrive/c/windows' will not be resolved.
+        my $cur_dir = `pwd -L`;
+        if($? != 0) {
+            warn "Can't determine current working directory.\n";
+            return undef;
+        }
+        chomp($cur_dir);
+
+        $path = $cur_dir . '/' . $path;
+    }
+
+    return normalize_path($path);
+}
+
+#######################################################################
+# Performs path "normalization": all slashes converted to forward
+# slashes (except leading slash), all duplicated slashes are replaced
+# with single slashes, all relative directories ('./' and '../') are
+# resolved if possible.
+# Path processed as string, directories are not checked for presence so
+# path for not yet existing directory can be "normalized".
+#
+sub normalize_path {
+    my ($path) = @_;
+
+    # Don't process empty paths.
+    return $path if $path eq '';
+
+    unless($path =~ m{(?:^|\\|/)\.{1,2}(?:\\|/|$)}) {
+        # Speed up processing of simple paths.
+        my $first_char = substr($path, 0, 1);
+        $path =~ s{[\\/]+}{/}g;
+        # Restore starting backslash if any.
+        substr($path, 0, 1) = $first_char;
+        return $path;
+    }
+
+    my @arr;
+    my $prefix;
+    my $have_root = 0;
+
+    # Check whether path starts from Win32 drive. ('C:path' or 'C:\path')
+    if($path =~ m{^([a-zA-Z]:(/|\\)?)(.*$)}) {
+        $prefix = $1;
+        $have_root = 1 if defined $2;
+        # Process path separately from drive letter.
+        @arr = split(m{\/|\\}, $3);
+        # Replace backslash with forward slash if required.
+        substr($prefix, 2, 1) = '/' if $have_root;
+    }
+    else {
+        if($path =~ m{^(\/|\\)}) {
+            $have_root = 1;
+            $prefix = $1;
+        }
+        else {
+            $prefix = '';
+        }
+        @arr = split(m{\/|\\}, $path);
+    }
+
+    my $p = 0;
+    my @res;
+
+    for my $el (@arr) {
+        if(length($el) == 0 || $el eq '.') {
+            next;
+        }
+        elsif($el eq '..' && @res > 0 && $res[$#res] ne '..') {
+            pop @res;
+            next;
+        }
+        push @res, $el;
+    }
+    if($have_root && @res > 0 && $res[0] eq '..') {
+        warn "Error processing path \"$path\": " .
+             "Parent directory of root directory does not exist!\n";
+        return undef;
+    }
+
+    my $ret = $prefix . join('/', @res);
+    $ret .= '/' if($path =~ m{\\$|/$} && scalar @res > 0);
+
+    return $ret;
+}
+
+# Internal function. Converts path by using Msys's built-in
+# transformation.
+sub do_msys_transform {
+    my ($path) = @_;
+    return undef if $^O ne 'msys';
+    return $path if $path eq '';
+
+    # Remove leading double forward slashes, as they turn off Msys
+    # transforming.
+    $path =~ s{^/[/\\]+}{/};
+
+    # Msys transforms automatically path to Windows native form in staring
+    # program parameters if program is not Msys-based.
+    # Note: already checked that $path is non-empty.
+    $path = `cmd //c echo '$path'`;
+    if($? != 0) {
+        warn "Can't transform path into Win32 form by using Msys" .
+             "internal transformation.\n";
+        return undef;
+    }
+
+    # Remove double quotes, they are added for paths with spaces,
+    # remove both '\r' and '\n'.
+    $path =~ s{^\"|\"$|\"\r|\n|\r}{}g;
+
+    return $path;
+}
+
+# Internal function. Gets two parameters: first parameter must be single
+# drive letter ('c'), second optional parameter is path relative to drive's 
+# current working directory. Returns Win32 absolute normalized path.
+sub get_abs_path_on_win32_drive {
+    my ($drv, $rel_path) = @_;
+    my $res;
+
+    # Get current directory on specified drive.
+    # "/c;" is compatible with both Msys and Cygwin.
+    my $cur_dir_on_drv = `cmd "/c;" echo %=$drv:%`;
+    if($? != 0) {
+        warn "Can't determine Win32 current directory on drive $drv:.\n";
+        return undef;
+    }
+
+    if($cur_dir_on_drv =~ m{^[%]}) {
+        # Current directory on drive is not set, default is
+        # root directory.
+
+        $res = ucfirst($drv) . ':/';
+    }
+    else {
+        # Current directory on drive was set.
+        # Remove both '\r' and '\n'.
+        $cur_dir_on_drv =~ s{\n|\r}{}g;
+
+        # Append relative path part.
+        $res = $cur_dir_on_drv . '/';
+    }
+    $res .= $rel_path if defined $rel_path;
+
+    # Replace any possible back slashes with forward slashes,
+    # remove any duplicated slashes, resolve relative dirs.
+    return normalize_path($res);
+}
+
+# Internal function. Tries to find or guess Win32 version of given
+# absolute Unix-style path. Other types of paths are not supported.
+# Returned paths contain only single forward slashes (no back and
+# duplicated slashes).
+# Last resort. Used only when other transformations are not available.
+sub do_dumb_guessed_transform {
+    my ($path) = @_;
+
+    # Replace any possible back slashes and duplicated forward slashes
+    # with single forward slashes.
+    $path =~ s{[/\\]+}{/}g;
+
+    # Empty path is not valid.
+    return undef if (length($path) == 0);
+
+    # RE to find Win32 drive letter
+    my $drv_ltr_re = drives_mounted_on_cygdrive() ?
+                        qr{^/cygdrive/([a-zA-Z])($|/.*$)} :
+                        qr{^/([a-zA-Z])($|/.*$)};
+
+    # Check path whether path is Win32 directly mapped drive and try to
+    # transform it assuming that drive letter is matched to Win32 drive letter.
+    if($path =~ m{$drv_ltr_re}) {
+        return ucfirst($1) . ':/' if(length($2) == 0);
+        return ucfirst($1) . ':' . $2;
+    }
+
+    # This may be some custom mapped path. ('/mymount/path')
+
+    # Must check longest possible path component as subdir can be mapped to
+    # different directory. For example '/usr/bin/' can be mapped to '/bin/' or
+    # '/bin/' can be mapped to '/usr/bin/'.
+    my $check_path = $path;
+    my $path_tail = '';
+    do {
+        if(-d $check_path) {
+            my $res =
+                `(cd "$check_path" && cmd /c "echo %__CD__%") 2>/dev/null`;
+            if($? == 0 && substr($path, 0, 1) ne '%') {
+                # Remove both '\r' and '\n'.
+                $res =~ s{\n|\r}{}g;
+
+                # Replace all back slashes with forward slashes.
+                $res =~ s{\\}{/}g;
+
+                if(length($path_tail) > 0) {
+                    return $res . $path_tail;
+                }
+                else {
+                    $res =~ s{/$}{} unless $check_path =~ m{/$};
+                    return $res;
+                }
+            }
+        }
+        if($check_path =~ m{(^.*/)([^/]+/*)}) {
+            $check_path = $1;
+            $path_tail = $2 . $path_tail;
+        }
+        else {
+            # Shouldn't happens as root '/' directory should always
+            # be resolvable.
+            warn "Can't determine Win32 directory for path \"$path\".\n";
+            return undef;
+        }
+    } while(1);
+}
+
+
+# Internal function. Converts given Unix-style absolute path to Win32 format.
+sub simple_transform_win32_to_unix {
+    my ($path) = @_;
+
+    if(should_use_cygpath()) {
+        # 'cygpath' gives precise result.
+        my $res;
+        chomp($res = `cygpath -a -u '$path'`);
+        if($? != 0) {
+            warn "Can't determine Unix-style directory for Win32 " .
+                 "directory \"$path\".\n";
+            return undef;
+        }
+
+        # 'cygpath' removes last slash if path is root dir on Win32 drive.
+        $res .= '/' if(substr($res, length($res) - 1, 1) ne '/' &&
+                       $path =~ m{[/\\]$});
+        return $res;
+    }
+
+    # 'cygpath' is not available, use guessed transformation.
+    unless($path =~ s{^([a-zA-Z]):(?:/|\\)}{/\l$1/}) {
+        warn "Can't determine Unix-style directory for Win32 " .
+             "directory \"$path\".\n";
+        return undef;
+    }
+
+    $path = '/cygdrive' . $path if(drives_mounted_on_cygdrive());
+    return $path;
+}
+
+1;    # End of module
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/rtspserver.pl b/ap/lib/libcurl/curl-7.54.1/tests/rtspserver.pl
new file mode 100755
index 0000000..02d2f9f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/rtspserver.pl
@@ -0,0 +1,109 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+BEGIN {
+    push(@INC, $ENV{'srcdir'}) if(defined $ENV{'srcdir'});
+    push(@INC, ".");
+}
+
+use strict;
+use warnings;
+
+use serverhelp qw(
+    server_pidfilename
+    server_logfilename
+    );
+
+my $verbose = 0;     # set to 1 for debugging
+my $port = 8990;     # just a default
+my $ipvnum = 4;      # default IP version of rtsp server
+my $idnum = 1;       # default rtsp server instance number
+my $proto = 'rtsp';  # protocol the rtsp server speaks
+my $pidfile;         # rtsp server pid file
+my $logfile;         # rtsp server log file
+my $srcdir;
+
+my $flags  = "";
+my $path   = '.';
+my $logdir = $path .'/log';
+
+while(@ARGV) {
+    if($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--logfile') {
+        if($ARGV[1]) {
+            $logfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--srcdir') {
+        if($ARGV[1]) {
+            $srcdir = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--ipv4') {
+        $ipvnum = 4;
+    }
+    elsif($ARGV[0] eq '--ipv6') {
+        $ipvnum = 6;
+    }
+    elsif($ARGV[0] eq '--port') {
+        if($ARGV[1] =~ /^(\d+)$/) {
+            $port = $1;
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--id') {
+        if($ARGV[1] =~ /^(\d+)$/) {
+            $idnum = $1 if($1 > 0);
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    else {
+        print STDERR "\nWarning: rtspserver.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+if(!$srcdir) {
+    $srcdir = $ENV{'srcdir'} || '.';
+}
+if(!$pidfile) {
+    $pidfile = "$path/". server_pidfilename($proto, $ipvnum, $idnum);
+}
+if(!$logfile) {
+    $logfile = server_logfilename($logdir, $proto, $ipvnum, $idnum);
+}
+
+$flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+$flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
+
+exec("server/rtspd $flags");
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/runtests.1 b/ap/lib/libcurl/curl-7.54.1/tests/runtests.1
new file mode 100644
index 0000000..a049029
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/runtests.1
@@ -0,0 +1,118 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.haxx.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.\"
+.TH runtests.pl 1 "May 05, 2017" "Curl 5.5.5" "runtests"
+
+.SH NAME
+runtests.pl \- run one or more test cases
+.SH SYNOPSIS
+.B runtests.pl [options] [test number] [!test number] [key word] [!key word]
+.SH DESCRIPTION
+\fIruntests.pl\fP runs one, several or all the existing test cases in curl's
+test suite. It is often called from the root Makefile of the curl package with
+\&'make test'.
+.SH "TEST NUMBER"
+If no test case number is given, all existing tests that the script can find
+will be considered for running. You can specify single test cases to run,
+space-separated, like "1 3 5 7 11", and you can specify a range like "45 to
+67". You can also specify only the tests you don't want to run by listing
+the numbers with a leading exclamation point, like "!66".
+.P
+It is also possible to specify tests to skip based on a key word describing
+the test. These are specified with a leading exclamation point and the
+key word or phrase, like "!HTTP NTLM auth".  Likewise, tests to run can
+be specified simply by specifying the unadorned key words, like "FTPS".
+Remember that the exclamation marks and spaces will need to be quoted somehow
+when entered at many command shells.
+.SH OPTIONS
+.IP "-a"
+Continue running the rest of the test cases even if one test fails. By
+default, the test script stops as soon as an error is detected.
+.IP "-bN"
+Use N as the base TCP/UDP port number on which to start the test servers.
+.IP "-c <curl>"
+Provide a path to a custom curl binary to run the tests with. Default is the
+curl executable in the build tree.
+.IP "-d"
+Enable protocol debug: have the servers display protocol output.
+.IP "-e"
+Run the test event-based (if possible). This will make runtests invoke curl
+with --test-event option. This option only works if both curl and libcurl were
+built debug-enabled.
+.IP "-g"
+Run the given test(s) with gdb. This is best used on a single test case and
+curl built --disable-shared. This then fires up gdb with command line set to
+run the specified test case. Simply (set a break-point and) type 'run' to
+start.
+.IP "-h"
+Displays a help text about this program's command line options.
+.IP "-k"
+Keep output and log files in log/ after a test run, even if no error was
+detected. Useful for debugging.
+.IP "-l"
+Lists all test case names.
+.IP "-n"
+Disable the check for and use of valgrind.
+.IP "-p"
+Prints out all files in "log/" to stdout when a test case fails. Very
+practical when used in the automated and distributed tests since then the
+people checking the failures and the reasons for them might not have physical
+access to the machine and logs.
+.IP "-R"
+Run the tests in a scrambled, or randomized, order instead of sequentially.
+.IP "-r"
+Display run time statistics. (Requires Perl Time::HiRes module)
+.IP "-rf"
+Display full run time statistics. (Requires Perl Time::HiRes module)
+.IP "-s"
+Shorter output. Speaks less than default.
+.IP "-t[num]"
+Selects a \fBtorture\fP test for the given tests. This makes runtests.pl first
+run the tests once and count the number of memory allocations made. It then
+reruns the test that number of times, each time forcing one of the allocations
+to fail until all allocs have been tested. By setting \fInum\fP you can force
+the allocation with that number to be set to fail at once instead of looping
+through everyone, which is very handy when debugging and then often in
+combination with \fI-g\fP.
+.IP "-v"
+Enable verbose output. Speaks more than default.
+.IP "-vc <curl>"
+Provide a path to a custom curl binary to run when verifying that the servers
+running are indeed our test servers. Default is the curl executable in the
+build tree.
+.SH "RUNNING TESTS"
+Many tests have conditions that must be met before the test case can run
+fine. They could depend on built-in features in libcurl or features present in
+the operating system or even in third-party libraries that curl may or may not
+use.
+.P
+The test script checks most of these by itself to determine when it is
+safe to attempt to run each test.  Those which cannot be run due to
+failed requirements will simply be skipped and listed at the completion
+of all test cases.  In some unusual configurations, the test script
+cannot make the correct determination for all tests.  In these cases,
+the problematic tests can be skipped using the "!keyword" skip feature
+documented earlier.
+.SH "WRITING TESTS"
+The simplest way to write test cases is to start with a similar existing test,
+save it with a new number and then adjust it to fit. There's an attempt to
+document the test case file format in the tests/FILEFORMAT.
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/runtests.pl b/ap/lib/libcurl/curl-7.54.1/tests/runtests.pl
new file mode 100755
index 0000000..05a8bb4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/runtests.pl
@@ -0,0 +1,5386 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+# Experimental hooks are available to run tests remotely on machines that
+# are able to run curl but are unable to run the test harness.
+# The following sections need to be modified:
+#
+#  $HOSTIP, $HOST6IP - Set to the address of the host running the test suite
+#  $CLIENTIP, $CLIENT6IP - Set to the address of the host running curl
+#  runclient, runclientoutput - Modify to copy all the files in the log/
+#    directory to the system running curl, run the given command remotely
+#    and save the return code or returned stdout (respectively), then
+#    copy all the files from the remote system's log/ directory back to
+#    the host running the test suite.  This can be done a few ways, such
+#    as using scp & ssh, rsync & telnet, or using a NFS shared directory
+#    and ssh.
+#
+# 'make && make test' needs to be done on both machines before making the
+# above changes and running runtests.pl manually.  In the shared NFS case,
+# the contents of the tests/server/ directory must be from the host
+# running the test suite, while the rest must be from the host running curl.
+#
+# Note that even with these changes a number of tests will still fail (mainly
+# to do with cookies, those that set environment variables, or those that
+# do more than touch the file system in a <precheck> or <postcheck>
+# section). These can be added to the $TESTCASES line below,
+# e.g. $TESTCASES="!8 !31 !63 !cookies..."
+#
+# Finally, to properly support -g and -n, checktestcmd needs to change
+# to check the remote system's PATH, and the places in the code where
+# the curl binary is read directly to determine its type also need to be
+# fixed. As long as the -g option is never given, and the -n is always
+# given, this won't be a problem.
+
+
+# These should be the only variables that might be needed to get edited:
+
+BEGIN {
+    push(@INC, $ENV{'srcdir'}) if(defined $ENV{'srcdir'});
+    push(@INC, ".");
+    # run time statistics needs Time::HiRes
+    eval {
+        no warnings "all";
+        require Time::HiRes;
+        import  Time::HiRes qw( time );
+    }
+}
+
+use strict;
+use warnings;
+use Cwd;
+
+# Subs imported from serverhelp module
+use serverhelp qw(
+    serverfactors
+    servername_id
+    servername_str
+    servername_canon
+    server_pidfilename
+    server_logfilename
+    );
+
+# Variables and subs imported from sshhelp module
+use sshhelp qw(
+    $sshdexe
+    $sshexe
+    $sftpexe
+    $sshconfig
+    $sftpconfig
+    $sshdlog
+    $sshlog
+    $sftplog
+    $sftpcmds
+    display_sshdconfig
+    display_sshconfig
+    display_sftpconfig
+    display_sshdlog
+    display_sshlog
+    display_sftplog
+    exe_ext
+    find_sshd
+    find_ssh
+    find_sftp
+    find_httptlssrv
+    sshversioninfo
+    );
+
+use pathhelp;
+
+require "getpart.pm"; # array functions
+require "valgrind.pm"; # valgrind report parser
+require "ftp.pm";
+
+my $HOSTIP="127.0.0.1";   # address on which the test server listens
+my $HOST6IP="[::1]";      # address on which the test server listens
+my $CLIENTIP="127.0.0.1"; # address which curl uses for incoming connections
+my $CLIENT6IP="[::1]";    # address which curl uses for incoming connections
+
+my $base = 8990; # base port number
+
+my $HTTPPORT;            # HTTP server port
+my $HTTP6PORT;           # HTTP IPv6 server port
+my $HTTPSPORT;           # HTTPS (stunnel) server port
+my $FTPPORT;             # FTP server port
+my $FTP2PORT;            # FTP server 2 port
+my $FTPSPORT;            # FTPS (stunnel) server port
+my $FTP6PORT;            # FTP IPv6 server port
+my $TFTPPORT;            # TFTP
+my $TFTP6PORT;           # TFTP
+my $SSHPORT;             # SCP/SFTP
+my $SOCKSPORT;           # SOCKS4/5 port
+my $POP3PORT;            # POP3
+my $POP36PORT;           # POP3 IPv6 server port
+my $IMAPPORT;            # IMAP
+my $IMAP6PORT;           # IMAP IPv6 server port
+my $SMTPPORT;            # SMTP
+my $SMTP6PORT;           # SMTP IPv6 server port
+my $RTSPPORT;            # RTSP
+my $RTSP6PORT;           # RTSP IPv6 server port
+my $GOPHERPORT;          # Gopher
+my $GOPHER6PORT;         # Gopher IPv6 server port
+my $HTTPTLSPORT;         # HTTP TLS (non-stunnel) server port
+my $HTTPTLS6PORT;        # HTTP TLS (non-stunnel) IPv6 server port
+my $HTTPPROXYPORT;       # HTTP proxy port, when using CONNECT
+my $HTTPPIPEPORT;        # HTTP pipelining port
+my $HTTPUNIXPATH;        # HTTP server Unix domain socket path
+my $HTTP2PORT;           # HTTP/2 server port
+
+my $srcdir = $ENV{'srcdir'} || '.';
+my $CURL="../src/curl".exe_ext(); # what curl executable to run on the tests
+my $VCURL=$CURL;   # what curl binary to use to verify the servers with
+                   # VCURL is handy to set to the system one when the one you
+                   # just built hangs or crashes and thus prevent verification
+my $DBGCURL=$CURL; #"../src/.libs/curl";  # alternative for debugging
+my $LOGDIR="log";
+my $TESTDIR="$srcdir/data";
+my $LIBDIR="./libtest";
+my $UNITDIR="./unit";
+# TODO: change this to use server_inputfilename()
+my $SERVERIN="$LOGDIR/server.input"; # what curl sent the server
+my $SERVER2IN="$LOGDIR/server2.input"; # what curl sent the second server
+my $PROXYIN="$LOGDIR/proxy.input"; # what curl sent the proxy
+my $CURLLOG="$LOGDIR/curl.log"; # all command lines run
+my $FTPDCMD="$LOGDIR/ftpserver.cmd"; # copy ftp server instructions here
+my $SERVERLOGS_LOCK="$LOGDIR/serverlogs.lock"; # server logs advisor read lock
+my $CURLCONFIG="../curl-config"; # curl-config from current build
+
+# Normally, all test cases should be run, but at times it is handy to
+# simply run a particular one:
+my $TESTCASES="all";
+
+# To run specific test cases, set them like:
+# $TESTCASES="1 2 3 7 8";
+
+#######################################################################
+# No variables below this point should need to be modified
+#
+
+# invoke perl like this:
+my $perl="perl -I$srcdir";
+my $server_response_maxtime=13;
+
+my $debug_build=0;          # built debug enabled (--enable-debug)
+my $has_memory_tracking=0;  # built with memory tracking (--enable-curldebug)
+my $libtool;
+
+# name of the file that the memory debugging creates:
+my $memdump="$LOGDIR/memdump";
+
+# the path to the script that analyzes the memory debug output file:
+my $memanalyze="$perl $srcdir/memanalyze.pl";
+
+my $pwd = getcwd();          # current working directory
+
+my $start;
+my $ftpchecktime=1; # time it took to verify our test FTP server
+my $scrambleorder;
+my $stunnel = checkcmd("stunnel4") || checkcmd("tstunnel") || checkcmd("stunnel");
+my $valgrind = checktestcmd("valgrind");
+my $valgrind_logfile="--logfile";
+my $valgrind_tool;
+my $gdb = checktestcmd("gdb");
+my $httptlssrv = find_httptlssrv();
+
+my $has_ssl;        # set if libcurl is built with SSL support
+my $has_largefile;  # set if libcurl is built with large file support
+my $has_idn;        # set if libcurl is built with IDN support
+my $http_ipv6;      # set if HTTP server has IPv6 support
+my $http_unix;      # set if HTTP server has Unix sockets support
+my $ftp_ipv6;       # set if FTP server has IPv6 support
+my $tftp_ipv6;      # set if TFTP server has IPv6 support
+my $gopher_ipv6;    # set if Gopher server has IPv6 support
+my $has_ipv6;       # set if libcurl is built with IPv6 support
+my $has_unix;       # set if libcurl is built with Unix sockets support
+my $has_libz;       # set if libcurl is built with libz support
+my $has_getrlimit;  # set if system has getrlimit()
+my $has_ntlm;       # set if libcurl is built with NTLM support
+my $has_ntlm_wb;    # set if libcurl is built with NTLM delegation to winbind
+my $has_sspi;       # set if libcurl is built with Windows SSPI
+my $has_gssapi;     # set if libcurl is built with a GSS-API library
+my $has_kerberos;   # set if libcurl is built with Kerberos support
+my $has_spnego;     # set if libcurl is built with SPNEGO support
+my $has_charconv;   # set if libcurl is built with CharConv support
+my $has_tls_srp;    # set if libcurl is built with TLS-SRP support
+my $has_metalink;   # set if curl is built with Metalink support
+my $has_http2;      # set if libcurl is built with HTTP2 support
+my $has_crypto;     # set if libcurl is built with cryptographic support
+my $has_cares;      # set if built with c-ares
+my $has_threadedres;# set if built with threaded resolver
+my $has_psl;        # set if libcurl is built with PSL support
+
+# this version is decided by the particular nghttp2 library that is being used
+my $h2cver = "h2c";
+
+my $has_openssl;    # built with a lib using an OpenSSL-like API
+my $has_gnutls;     # built with GnuTLS
+my $has_nss;        # built with NSS
+my $has_yassl;      # built with yassl
+my $has_polarssl;   # built with polarssl
+my $has_axtls;      # built with axTLS
+my $has_winssl;     # built with WinSSL    (Secure Channel aka Schannel)
+my $has_darwinssl;  # built with DarwinSSL (Secure Transport)
+my $has_boringssl;  # built with BoringSSL
+my $has_libressl;   # built with libressl
+my $has_mbedtls;    # built with mbedTLS
+
+my $has_sslpinning; # built with a TLS backend that supports pinning
+
+my $has_shared = "unknown";  # built shared
+
+my $resolver;       # name of the resolver backend (for human presentation)
+my $ssllib;         # name of the SSL library we use (for human presentation)
+
+my $has_textaware;  # set if running on a system that has a text mode concept
+                    # on files. Windows for example
+
+my @protocols;   # array of lowercase supported protocol servers
+
+my $skipped=0;  # number of tests skipped; reported in main loop
+my %skipped;    # skipped{reason}=counter, reasons for skip
+my @teststat;   # teststat[testnum]=reason, reasons for skip
+my %disabled_keywords;  # key words of tests to skip
+my %enabled_keywords;   # key words of tests to run
+my %disabled;           # disabled test cases
+
+my $sshdid;      # for socks server, ssh daemon version id
+my $sshdvernum;  # for socks server, ssh daemon version number
+my $sshdverstr;  # for socks server, ssh daemon version string
+my $sshderror;   # for socks server, ssh daemon version error
+
+my $defserverlogslocktimeout = 20; # timeout to await server logs lock removal
+my $defpostcommanddelay = 0; # delay between command and postcheck sections
+
+my $timestats;   # time stamping and stats generation
+my $fullstats;   # show time stats for every single test
+my %timeprepini; # timestamp for each test preparation start
+my %timesrvrini; # timestamp for each test required servers verification start
+my %timesrvrend; # timestamp for each test required servers verification end
+my %timetoolini; # timestamp for each test command run starting
+my %timetoolend; # timestamp for each test command run stopping
+my %timesrvrlog; # timestamp for each test server logs lock removal
+my %timevrfyend; # timestamp for each test result verification end
+
+my $testnumcheck; # test number, set in singletest sub.
+my %oldenv;
+
+#######################################################################
+# variables that command line options may set
+#
+
+my $short;
+my $automakestyle;
+my $verbose;
+my $debugprotocol;
+my $anyway;
+my $gdbthis;      # run test case with gdb debugger
+my $gdbxwin;      # use windowed gdb when using gdb
+my $keepoutfiles; # keep stdout and stderr files after tests
+my $listonly;     # only list the tests
+my $postmortem;   # display detailed info about failed tests
+my $run_event_based; # run curl with --test-event to test the event API
+
+my %run;          # running server
+my %doesntrun;    # servers that don't work, identified by pidfile
+my %serverpidfile;# all server pid file names, identified by server id
+my %runcert;      # cert file currently in use by an ssl running server
+
+# torture test variables
+my $torture;
+my $tortnum;
+my $tortalloc;
+
+#######################################################################
+# logmsg is our general message logging subroutine.
+#
+sub logmsg {
+    for(@_) {
+        print "$_";
+    }
+}
+
+# get the name of the current user
+my $USER = $ENV{USER};          # Linux
+if (!$USER) {
+    $USER = $ENV{USERNAME};     # Windows
+    if (!$USER) {
+        $USER = $ENV{LOGNAME};  # Some Unix (I think)
+    }
+}
+
+# enable memory debugging if curl is compiled with it
+$ENV{'CURL_MEMDEBUG'} = $memdump;
+$ENV{'CURL_ENTROPY'}="12345678";
+$ENV{'CURL_FORCETIME'}=1; # for debug NTLM magic
+$ENV{'HOME'}=$pwd;
+
+sub catch_zap {
+    my $signame = shift;
+    logmsg "runtests.pl received SIG$signame, exiting\n";
+    stopservers($verbose);
+    die "Somebody sent me a SIG$signame";
+}
+$SIG{INT} = \&catch_zap;
+$SIG{TERM} = \&catch_zap;
+
+##########################################################################
+# Clear all possible '*_proxy' environment variables for various protocols
+# to prevent them to interfere with our testing!
+
+my $protocol;
+foreach $protocol (('ftp', 'http', 'ftps', 'https', 'no', 'all')) {
+    my $proxy = "${protocol}_proxy";
+    # clear lowercase version
+    delete $ENV{$proxy} if($ENV{$proxy});
+    # clear uppercase version
+    delete $ENV{uc($proxy)} if($ENV{uc($proxy)});
+}
+
+# make sure we don't get affected by other variables that control our
+# behaviour
+
+delete $ENV{'SSL_CERT_DIR'} if($ENV{'SSL_CERT_DIR'});
+delete $ENV{'SSL_CERT_PATH'} if($ENV{'SSL_CERT_PATH'});
+delete $ENV{'CURL_CA_BUNDLE'} if($ENV{'CURL_CA_BUNDLE'});
+
+#######################################################################
+# Load serverpidfile hash with pidfile names for all possible servers.
+#
+sub init_serverpidfile_hash {
+  for my $proto (('ftp', 'http', 'imap', 'pop3', 'smtp', 'http/2')) {
+    for my $ssl (('', 's')) {
+      for my $ipvnum ((4, 6)) {
+        for my $idnum ((1, 2, 3)) {
+          my $serv = servername_id("$proto$ssl", $ipvnum, $idnum);
+          my $pidf = server_pidfilename("$proto$ssl", $ipvnum, $idnum);
+          $serverpidfile{$serv} = $pidf;
+        }
+      }
+    }
+  }
+  for my $proto (('tftp', 'sftp', 'socks', 'ssh', 'rtsp', 'gopher', 'httptls')) {
+    for my $ipvnum ((4, 6)) {
+      for my $idnum ((1, 2)) {
+        my $serv = servername_id($proto, $ipvnum, $idnum);
+        my $pidf = server_pidfilename($proto, $ipvnum, $idnum);
+        $serverpidfile{$serv} = $pidf;
+      }
+    }
+  }
+  for my $proto (('http', 'imap', 'pop3', 'smtp', 'http/2')) {
+    for my $ssl (('', 's')) {
+      my $serv = servername_id("$proto$ssl", "unix", 1);
+      my $pidf = server_pidfilename("$proto$ssl", "unix", 1);
+      $serverpidfile{$serv} = $pidf;
+    }
+  }
+}
+
+#######################################################################
+# Check if a given child process has just died. Reaps it if so.
+#
+sub checkdied {
+    use POSIX ":sys_wait_h";
+    my $pid = $_[0];
+    if((not defined $pid) || $pid <= 0) {
+        return 0;
+    }
+    my $rc = waitpid($pid, &WNOHANG);
+    return ($rc == $pid)?1:0;
+}
+
+#######################################################################
+# Start a new thread/process and run the given command line in there.
+# Return the pids (yes plural) of the new child process to the parent.
+#
+sub startnew {
+    my ($cmd, $pidfile, $timeout, $fake)=@_;
+
+    logmsg "startnew: $cmd\n" if ($verbose);
+
+    my $child = fork();
+    my $pid2 = 0;
+
+    if(not defined $child) {
+        logmsg "startnew: fork() failure detected\n";
+        return (-1,-1);
+    }
+
+    if(0 == $child) {
+        # Here we are the child. Run the given command.
+
+        # Put an "exec" in front of the command so that the child process
+        # keeps this child's process ID.
+        exec("exec $cmd") || die "Can't exec() $cmd: $!";
+
+        # exec() should never return back here to this process. We protect
+        # ourselves by calling die() just in case something goes really bad.
+        die "error: exec() has returned";
+    }
+
+    # Ugly hack but ssh client and gnutls-serv don't support pid files
+    if ($fake) {
+        if(open(OUT, ">$pidfile")) {
+            print OUT $child . "\n";
+            close(OUT);
+            logmsg "startnew: $pidfile faked with pid=$child\n" if($verbose);
+        }
+        else {
+            logmsg "startnew: failed to write fake $pidfile with pid=$child\n";
+        }
+        # could/should do a while connect fails sleep a bit and loop
+        sleep $timeout;
+        if (checkdied($child)) {
+            logmsg "startnew: child process has failed to start\n" if($verbose);
+            return (-1,-1);
+        }
+    }
+
+    my $count = $timeout;
+    while($count--) {
+        if(-f $pidfile && -s $pidfile && open(PID, "<$pidfile")) {
+            $pid2 = 0 + <PID>;
+            close(PID);
+            if(($pid2 > 0) && pidexists($pid2)) {
+                # if $pid2 is valid, then make sure this pid is alive, as
+                # otherwise it is just likely to be the _previous_ pidfile or
+                # similar!
+                last;
+            }
+            # invalidate $pid2 if not actually alive
+            $pid2 = 0;
+        }
+        if (checkdied($child)) {
+            logmsg "startnew: child process has died, server might start up\n"
+                if($verbose);
+            # We can't just abort waiting for the server with a
+            # return (-1,-1);
+            # because the server might have forked and could still start
+            # up normally. Instead, just reduce the amount of time we remain
+            # waiting.
+            $count >>= 2;
+        }
+        sleep(1);
+    }
+
+    # Return two PIDs, the one for the child process we spawned and the one
+    # reported by the server itself (in case it forked again on its own).
+    # Both (potentially) need to be killed at the end of the test.
+    return ($child, $pid2);
+}
+
+
+#######################################################################
+# Check for a command in the PATH of the test server.
+#
+sub checkcmd {
+    my ($cmd)=@_;
+    my @paths=(split(":", $ENV{'PATH'}), "/usr/sbin", "/usr/local/sbin",
+               "/sbin", "/usr/bin", "/usr/local/bin",
+               "./libtest/.libs", "./libtest");
+    for(@paths) {
+        if( -x "$_/$cmd" && ! -d "$_/$cmd") {
+            # executable bit but not a directory!
+            return "$_/$cmd";
+        }
+    }
+}
+
+#######################################################################
+# Get the list of tests that the tests/data/Makefile.am knows about!
+#
+my $disttests;
+sub get_disttests {
+    my @dist = `cd data && make show`;
+    $disttests = join("", @dist);
+}
+
+#######################################################################
+# Check for a command in the PATH of the machine running curl.
+#
+sub checktestcmd {
+    my ($cmd)=@_;
+    return checkcmd($cmd);
+}
+
+#######################################################################
+# Run the application under test and return its return code
+#
+sub runclient {
+    my ($cmd)=@_;
+    my $ret = system($cmd);
+    print "CMD ($ret): $cmd\n" if($verbose && !$torture);
+    return $ret;
+
+# This is one way to test curl on a remote machine
+#    my $out = system("ssh $CLIENTIP cd \'$pwd\' \\; \'$cmd\'");
+#    sleep 2;    # time to allow the NFS server to be updated
+#    return $out;
+}
+
+#######################################################################
+# Run the application under test and return its stdout
+#
+sub runclientoutput {
+    my ($cmd)=@_;
+    return `$cmd`;
+
+# This is one way to test curl on a remote machine
+#    my @out = `ssh $CLIENTIP cd \'$pwd\' \\; \'$cmd\'`;
+#    sleep 2;    # time to allow the NFS server to be updated
+#    return @out;
+ }
+
+#######################################################################
+# Memory allocation test and failure torture testing.
+#
+sub torture {
+    my $testcmd = shift;
+    my $gdbline = shift;
+
+    # remove memdump first to be sure we get a new nice and clean one
+    unlink($memdump);
+
+    # First get URL from test server, ignore the output/result
+    runclient($testcmd);
+
+    logmsg " CMD: $testcmd\n" if($verbose);
+
+    # memanalyze -v is our friend, get the number of allocations made
+    my $count=0;
+    my @out = `$memanalyze -v $memdump`;
+    for(@out) {
+        if(/^Allocations: (\d+)/) {
+            $count = $1;
+            last;
+        }
+    }
+    if(!$count) {
+        logmsg " found no allocs to make fail\n";
+        return 0;
+    }
+
+    logmsg " $count allocations to make fail\n";
+
+    for ( 1 .. $count ) {
+        my $limit = $_;
+        my $fail;
+        my $dumped_core;
+
+        if($tortalloc && ($tortalloc != $limit)) {
+            next;
+        }
+
+        if($verbose) {
+            my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
+                localtime(time());
+            my $now = sprintf("%02d:%02d:%02d ", $hour, $min, $sec);
+            logmsg "Fail alloc no: $limit at $now\r";
+        }
+
+        # make the memory allocation function number $limit return failure
+        $ENV{'CURL_MEMLIMIT'} = $limit;
+
+        # remove memdump first to be sure we get a new nice and clean one
+        unlink($memdump);
+
+        logmsg "*** Alloc number $limit is now set to fail ***\n" if($gdbthis);
+
+        my $ret = 0;
+        if($gdbthis) {
+            runclient($gdbline);
+        }
+        else {
+            $ret = runclient($testcmd);
+        }
+        #logmsg "$_ Returned " . ($ret >> 8) . "\n";
+
+        # Now clear the variable again
+        delete $ENV{'CURL_MEMLIMIT'} if($ENV{'CURL_MEMLIMIT'});
+
+        if(-r "core") {
+            # there's core file present now!
+            logmsg " core dumped\n";
+            $dumped_core = 1;
+            $fail = 2;
+        }
+
+        # verify that it returns a proper error code, doesn't leak memory
+        # and doesn't core dump
+        if(($ret & 255) || ($ret >> 8) >= 128) {
+            logmsg " system() returned $ret\n";
+            $fail=1;
+        }
+        else {
+            my @memdata=`$memanalyze $memdump`;
+            my $leak=0;
+            for(@memdata) {
+                if($_ ne "") {
+                    # well it could be other memory problems as well, but
+                    # we call it leak for short here
+                    $leak=1;
+                }
+            }
+            if($leak) {
+                logmsg "** MEMORY FAILURE\n";
+                logmsg @memdata;
+                logmsg `$memanalyze -l $memdump`;
+                $fail = 1;
+            }
+        }
+        if($fail) {
+            logmsg " Failed on alloc number $limit in test.\n",
+            " invoke with \"-t$limit\" to repeat this single case.\n";
+            stopservers($verbose);
+            return 1;
+        }
+    }
+
+    logmsg "torture OK\n";
+    return 0;
+}
+
+#######################################################################
+# Stop a test server along with pids which aren't in the %run hash yet.
+# This also stops all servers which are relative to the given one.
+#
+sub stopserver {
+    my ($server, $pidlist) = @_;
+    #
+    # kill sockfilter processes for pingpong relative server
+    #
+    if($server =~ /^(ftp|imap|pop3|smtp)s?(\d*)(-ipv6|)$/) {
+        my $proto  = $1;
+        my $idnum  = ($2 && ($2 > 1)) ? $2 : 1;
+        my $ipvnum = ($3 && ($3 =~ /6$/)) ? 6 : 4;
+        killsockfilters($proto, $ipvnum, $idnum, $verbose);
+    }
+    #
+    # All servers relative to the given one must be stopped also
+    #
+    my @killservers;
+    if($server =~ /^(ftp|http|imap|pop3|smtp|httppipe)s((\d*)(-ipv6|-unix|))$/) {
+        # given a stunnel based ssl server, also kill non-ssl underlying one
+        push @killservers, "${1}${2}";
+    }
+    elsif($server =~ /^(ftp|http|imap|pop3|smtp|httppipe)((\d*)(-ipv6|-unix|))$/) {
+        # given a non-ssl server, also kill stunnel based ssl piggybacking one
+        push @killservers, "${1}s${2}";
+    }
+    elsif($server =~ /^(socks)((\d*)(-ipv6|))$/) {
+        # given a socks server, also kill ssh underlying one
+        push @killservers, "ssh${2}";
+    }
+    elsif($server =~ /^(ssh)((\d*)(-ipv6|))$/) {
+        # given a ssh server, also kill socks piggybacking one
+        push @killservers, "socks${2}";
+    }
+    push @killservers, $server;
+    #
+    # kill given pids and server relative ones clearing them in %run hash
+    #
+    foreach my $server (@killservers) {
+        if($run{$server}) {
+            # we must prepend a space since $pidlist may already contain a pid
+            $pidlist .= " $run{$server}";
+            $run{$server} = 0;
+        }
+        $runcert{$server} = 0 if($runcert{$server});
+    }
+    killpid($verbose, $pidlist);
+    #
+    # cleanup server pid files
+    #
+    foreach my $server (@killservers) {
+        my $pidfile = $serverpidfile{$server};
+        my $pid = processexists($pidfile);
+        if($pid > 0) {
+            logmsg "Warning: $server server unexpectedly alive\n";
+            killpid($verbose, $pid);
+        }
+        unlink($pidfile) if(-f $pidfile);
+    }
+}
+
+#######################################################################
+# Verify that the server that runs on $ip, $port is our server.  This also
+# implies that we can speak with it, as there might be occasions when the
+# server runs fine but we cannot talk to it ("Failed to connect to ::1: Can't
+# assign requested address")
+#
+sub verifyhttp {
+    my ($proto, $ipvnum, $idnum, $ip, $port_or_path) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $pid = 0;
+    my $bonus="";
+    # $port_or_path contains a path for Unix sockets, sws ignores the port
+    my $port = ($ipvnum eq "unix") ? 80 : $port_or_path;
+
+    my $verifyout = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.out';
+    unlink($verifyout) if(-f $verifyout);
+
+    my $verifylog = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.log';
+    unlink($verifylog) if(-f $verifylog);
+
+    if($proto eq "gopher") {
+        # gopher is funny
+        $bonus="1/";
+    }
+
+    my $flags = "--max-time $server_response_maxtime ";
+    $flags .= "--output $verifyout ";
+    $flags .= "--silent ";
+    $flags .= "--verbose ";
+    $flags .= "--globoff ";
+    $flags .= "--unix-socket '$port_or_path' " if $ipvnum eq "unix";
+    $flags .= "-1 "         if($has_axtls);
+    $flags .= "--insecure " if($proto eq 'https');
+    $flags .= "\"$proto://$ip:$port/${bonus}verifiedserver\"";
+
+    my $cmd = "$VCURL $flags 2>$verifylog";
+
+    # verify if our/any server is running on this port
+    logmsg "RUN: $cmd\n" if($verbose);
+    my $res = runclient($cmd);
+
+    $res >>= 8; # rotate the result
+    if($res & 128) {
+        logmsg "RUN: curl command died with a coredump\n";
+        return -1;
+    }
+
+    if($res && $verbose) {
+        logmsg "RUN: curl command returned $res\n";
+        if(open(FILE, "<$verifylog")) {
+            while(my $string = <FILE>) {
+                logmsg "RUN: $string" if($string !~ /^([ \t]*)$/);
+            }
+            close(FILE);
+        }
+    }
+
+    my $data;
+    if(open(FILE, "<$verifyout")) {
+        while(my $string = <FILE>) {
+            $data = $string;
+            last; # only want first line
+        }
+        close(FILE);
+    }
+
+    if($data && ($data =~ /WE ROOLZ: (\d+)/)) {
+        $pid = 0+$1;
+    }
+    elsif($res == 6) {
+        # curl: (6) Couldn't resolve host '::1'
+        logmsg "RUN: failed to resolve host ($proto://$ip:$port/verifiedserver)\n";
+        return -1;
+    }
+    elsif($data || ($res && ($res != 7))) {
+        logmsg "RUN: Unknown server on our $server port: $port ($res)\n";
+        return -1;
+    }
+    return $pid;
+}
+
+#######################################################################
+# Verify that the server that runs on $ip, $port is our server.  This also
+# implies that we can speak with it, as there might be occasions when the
+# server runs fine but we cannot talk to it ("Failed to connect to ::1: Can't
+# assign requested address")
+#
+sub verifyftp {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $pid = 0;
+    my $time=time();
+    my $extra="";
+
+    my $verifylog = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.log';
+    unlink($verifylog) if(-f $verifylog);
+
+    if($proto eq "ftps") {
+        $extra .= "--insecure --ftp-ssl-control ";
+    }
+
+    my $flags = "--max-time $server_response_maxtime ";
+    $flags .= "--silent ";
+    $flags .= "--verbose ";
+    $flags .= "--globoff ";
+    $flags .= $extra;
+    $flags .= "\"$proto://$ip:$port/verifiedserver\"";
+
+    my $cmd = "$VCURL $flags 2>$verifylog";
+
+    # check if this is our server running on this port:
+    logmsg "RUN: $cmd\n" if($verbose);
+    my @data = runclientoutput($cmd);
+
+    my $res = $? >> 8; # rotate the result
+    if($res & 128) {
+        logmsg "RUN: curl command died with a coredump\n";
+        return -1;
+    }
+
+    foreach my $line (@data) {
+        if($line =~ /WE ROOLZ: (\d+)/) {
+            # this is our test server with a known pid!
+            $pid = 0+$1;
+            last;
+        }
+    }
+    if($pid <= 0 && @data && $data[0]) {
+        # this is not a known server
+        logmsg "RUN: Unknown server on our $server port: $port\n";
+        return 0;
+    }
+    # we can/should use the time it took to verify the FTP server as a measure
+    # on how fast/slow this host/FTP is.
+    my $took = int(0.5+time()-$time);
+
+    if($verbose) {
+        logmsg "RUN: Verifying our test $server server took $took seconds\n";
+    }
+    $ftpchecktime = $took>=1?$took:1; # make sure it never is below 1
+
+    return $pid;
+}
+
+#######################################################################
+# Verify that the server that runs on $ip, $port is our server.  This also
+# implies that we can speak with it, as there might be occasions when the
+# server runs fine but we cannot talk to it ("Failed to connect to ::1: Can't
+# assign requested address")
+#
+sub verifyrtsp {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $pid = 0;
+
+    my $verifyout = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.out';
+    unlink($verifyout) if(-f $verifyout);
+
+    my $verifylog = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.log';
+    unlink($verifylog) if(-f $verifylog);
+
+    my $flags = "--max-time $server_response_maxtime ";
+    $flags .= "--output $verifyout ";
+    $flags .= "--silent ";
+    $flags .= "--verbose ";
+    $flags .= "--globoff ";
+    # currently verification is done using http
+    $flags .= "\"http://$ip:$port/verifiedserver\"";
+
+    my $cmd = "$VCURL $flags 2>$verifylog";
+
+    # verify if our/any server is running on this port
+    logmsg "RUN: $cmd\n" if($verbose);
+    my $res = runclient($cmd);
+
+    $res >>= 8; # rotate the result
+    if($res & 128) {
+        logmsg "RUN: curl command died with a coredump\n";
+        return -1;
+    }
+
+    if($res && $verbose) {
+        logmsg "RUN: curl command returned $res\n";
+        if(open(FILE, "<$verifylog")) {
+            while(my $string = <FILE>) {
+                logmsg "RUN: $string" if($string !~ /^([ \t]*)$/);
+            }
+            close(FILE);
+        }
+    }
+
+    my $data;
+    if(open(FILE, "<$verifyout")) {
+        while(my $string = <FILE>) {
+            $data = $string;
+            last; # only want first line
+        }
+        close(FILE);
+    }
+
+    if($data && ($data =~ /RTSP_SERVER WE ROOLZ: (\d+)/)) {
+        $pid = 0+$1;
+    }
+    elsif($res == 6) {
+        # curl: (6) Couldn't resolve host '::1'
+        logmsg "RUN: failed to resolve host ($proto://$ip:$port/verifiedserver)\n";
+        return -1;
+    }
+    elsif($data || ($res != 7)) {
+        logmsg "RUN: Unknown server on our $server port: $port\n";
+        return -1;
+    }
+    return $pid;
+}
+
+#######################################################################
+# Verify that the ssh server has written out its pidfile, recovering
+# the pid from the file and returning it if a process with that pid is
+# actually alive.
+#
+sub verifyssh {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $pidfile = server_pidfilename($proto, $ipvnum, $idnum);
+    my $pid = 0;
+    if(open(FILE, "<$pidfile")) {
+        $pid=0+<FILE>;
+        close(FILE);
+    }
+    if($pid > 0) {
+        # if we have a pid it is actually our ssh server,
+        # since runsshserver() unlinks previous pidfile
+        if(!pidexists($pid)) {
+            logmsg "RUN: SSH server has died after starting up\n";
+            checkdied($pid);
+            unlink($pidfile);
+            $pid = -1;
+        }
+    }
+    return $pid;
+}
+
+#######################################################################
+# Verify that we can connect to the sftp server, properly authenticate
+# with generated config and key files and run a simple remote pwd.
+#
+sub verifysftp {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $verified = 0;
+    # Find out sftp client canonical file name
+    my $sftp = find_sftp();
+    if(!$sftp) {
+        logmsg "RUN: SFTP server cannot find $sftpexe\n";
+        return -1;
+    }
+    # Find out ssh client canonical file name
+    my $ssh = find_ssh();
+    if(!$ssh) {
+        logmsg "RUN: SFTP server cannot find $sshexe\n";
+        return -1;
+    }
+    # Connect to sftp server, authenticate and run a remote pwd
+    # command using our generated configuration and key files
+    my $cmd = "\"$sftp\" -b $sftpcmds -F $sftpconfig -S \"$ssh\" $ip > $sftplog 2>&1";
+    my $res = runclient($cmd);
+    # Search for pwd command response in log file
+    if(open(SFTPLOGFILE, "<$sftplog")) {
+        while(<SFTPLOGFILE>) {
+            if(/^Remote working directory: /) {
+                $verified = 1;
+                last;
+            }
+        }
+        close(SFTPLOGFILE);
+    }
+    return $verified;
+}
+
+#######################################################################
+# Verify that the non-stunnel HTTP TLS extensions capable server that runs
+# on $ip, $port is our server.  This also implies that we can speak with it,
+# as there might be occasions when the server runs fine but we cannot talk
+# to it ("Failed to connect to ::1: Can't assign requested address")
+#
+sub verifyhttptls {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $pidfile = server_pidfilename($proto, $ipvnum, $idnum);
+    my $pid = 0;
+
+    my $verifyout = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.out';
+    unlink($verifyout) if(-f $verifyout);
+
+    my $verifylog = "$LOGDIR/".
+        servername_canon($proto, $ipvnum, $idnum) .'_verify.log';
+    unlink($verifylog) if(-f $verifylog);
+
+    my $flags = "--max-time $server_response_maxtime ";
+    $flags .= "--output $verifyout ";
+    $flags .= "--verbose ";
+    $flags .= "--globoff ";
+    $flags .= "--insecure ";
+    $flags .= "--tlsauthtype SRP ";
+    $flags .= "--tlsuser jsmith ";
+    $flags .= "--tlspassword abc ";
+    $flags .= "\"https://$ip:$port/verifiedserver\"";
+
+    my $cmd = "$VCURL $flags 2>$verifylog";
+
+    # verify if our/any server is running on this port
+    logmsg "RUN: $cmd\n" if($verbose);
+    my $res = runclient($cmd);
+
+    $res >>= 8; # rotate the result
+    if($res & 128) {
+        logmsg "RUN: curl command died with a coredump\n";
+        return -1;
+    }
+
+    if($res && $verbose) {
+        logmsg "RUN: curl command returned $res\n";
+        if(open(FILE, "<$verifylog")) {
+            while(my $string = <FILE>) {
+                logmsg "RUN: $string" if($string !~ /^([ \t]*)$/);
+            }
+            close(FILE);
+        }
+    }
+
+    my $data;
+    if(open(FILE, "<$verifyout")) {
+        while(my $string = <FILE>) {
+            $data .= $string;
+        }
+        close(FILE);
+    }
+
+    if($data && ($data =~ /(GNUTLS|GnuTLS)/) && open(FILE, "<$pidfile")) {
+        $pid=0+<FILE>;
+        close(FILE);
+        if($pid > 0) {
+            # if we have a pid it is actually our httptls server,
+            # since runhttptlsserver() unlinks previous pidfile
+            if(!pidexists($pid)) {
+                logmsg "RUN: $server server has died after starting up\n";
+                checkdied($pid);
+                unlink($pidfile);
+                $pid = -1;
+            }
+        }
+        return $pid;
+    }
+    elsif($res == 6) {
+        # curl: (6) Couldn't resolve host '::1'
+        logmsg "RUN: failed to resolve host (https://$ip:$port/verifiedserver)\n";
+        return -1;
+    }
+    elsif($data || ($res && ($res != 7))) {
+        logmsg "RUN: Unknown server on our $server port: $port ($res)\n";
+        return -1;
+    }
+    return $pid;
+}
+
+#######################################################################
+# STUB for verifying socks
+#
+sub verifysocks {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $server = servername_id($proto, $ipvnum, $idnum);
+    my $pidfile = server_pidfilename($proto, $ipvnum, $idnum);
+    my $pid = 0;
+    if(open(FILE, "<$pidfile")) {
+        $pid=0+<FILE>;
+        close(FILE);
+    }
+    if($pid > 0) {
+        # if we have a pid it is actually our socks server,
+        # since runsocksserver() unlinks previous pidfile
+        if(!pidexists($pid)) {
+            logmsg "RUN: SOCKS server has died after starting up\n";
+            checkdied($pid);
+            unlink($pidfile);
+            $pid = -1;
+        }
+    }
+    return $pid;
+}
+
+#######################################################################
+# Verify that the server that runs on $ip, $port is our server.
+# Retry over several seconds before giving up.  The ssh server in
+# particular can take a long time to start if it needs to generate
+# keys on a slow or loaded host.
+#
+# Just for convenience, test harness uses 'https' and 'httptls' literals
+# as values for 'proto' variable in order to differentiate different
+# servers. 'https' literal is used for stunnel based https test servers,
+# and 'httptls' is used for non-stunnel https test servers.
+#
+
+my %protofunc = ('http' => \&verifyhttp,
+                 'https' => \&verifyhttp,
+                 'rtsp' => \&verifyrtsp,
+                 'ftp' => \&verifyftp,
+                 'pop3' => \&verifyftp,
+                 'imap' => \&verifyftp,
+                 'smtp' => \&verifyftp,
+                 'httppipe' => \&verifyhttp,
+                 'ftps' => \&verifyftp,
+                 'tftp' => \&verifyftp,
+                 'ssh' => \&verifyssh,
+                 'socks' => \&verifysocks,
+                 'gopher' => \&verifyhttp,
+                 'httptls' => \&verifyhttptls);
+
+sub verifyserver {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+
+    my $count = 30; # try for this many seconds
+    my $pid;
+
+    while($count--) {
+        my $fun = $protofunc{$proto};
+
+        $pid = &$fun($proto, $ipvnum, $idnum, $ip, $port);
+
+        if($pid > 0) {
+            last;
+        }
+        elsif($pid < 0) {
+            # a real failure, stop trying and bail out
+            return 0;
+        }
+        sleep(1);
+    }
+    return $pid;
+}
+
+#######################################################################
+# Single shot server responsiveness test. This should only be used
+# to verify that a server present in %run hash is still functional
+#
+sub responsiveserver {
+    my ($proto, $ipvnum, $idnum, $ip, $port) = @_;
+    my $prev_verbose = $verbose;
+
+    $verbose = 0;
+    my $fun = $protofunc{$proto};
+    my $pid = &$fun($proto, $ipvnum, $idnum, $ip, $port);
+    $verbose = $prev_verbose;
+
+    if($pid > 0) {
+        return 1; # responsive
+    }
+
+    my $srvrname = servername_str($proto, $ipvnum, $idnum);
+    logmsg " server precheck FAILED (unresponsive $srvrname server)\n";
+    return 0;
+}
+
+#######################################################################
+# start the http2 server
+#
+sub runhttp2server {
+    my ($verbose, $port) = @_;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+    my $proto="http/2";
+    my $ipvnum = 4;
+    my $idnum = 0;
+    my $exe = "$perl $srcdir/http2-server.pl";
+    my $verbose_flag = "--verbose ";
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--port $HTTP2PORT ";
+    $flags .= "--connect $HOSTIP:$HTTPPORT ";
+    $flags .= $verbose_flag if($debugprotocol);
+
+    my $cmd = "$exe $flags";
+    my ($http2pid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($http2pid <= 0 || !pidexists($http2pid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $http2pid\n";
+    }
+
+    return ($http2pid, $pid2);
+}
+
+#######################################################################
+# start the http server
+#
+sub runhttpserver {
+    my ($proto, $verbose, $alt, $port_or_path) = @_;
+    my $ip = $HOSTIP;
+    my $ipvnum = 4;
+    my $idnum = 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+    my $exe = "$perl $srcdir/httpserver.pl";
+    my $verbose_flag = "--verbose ";
+
+    if($alt eq "ipv6") {
+        # if IPv6, use a different setup
+        $ipvnum = 6;
+        $ip = $HOST6IP;
+    }
+    elsif($alt eq "proxy") {
+        # basically the same, but another ID
+        $idnum = 2;
+    }
+    elsif($alt eq "pipe") {
+        # basically the same, but another ID
+        $idnum = 3;
+        $exe = "python $srcdir/http_pipe.py";
+        $verbose_flag .= "1 ";
+    }
+    elsif($alt eq "unix") {
+        # IP (protocol) is mutually exclusive with Unix sockets
+        $ipvnum = "unix";
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--gopher " if($proto eq "gopher");
+    $flags .= "--connect $HOSTIP " if($alt eq "proxy");
+    $flags .= $verbose_flag if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    if($ipvnum eq "unix") {
+        $flags .= "--unix-socket '$port_or_path' ";
+    } else {
+        $flags .= "--ipv$ipvnum --port $port_or_path ";
+    }
+    $flags .= "--srcdir \"$srcdir\"";
+
+    my $cmd = "$exe $flags";
+    my ($httppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($httppid <= 0 || !pidexists($httppid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port_or_path);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$httppid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $httppid\n";
+    }
+
+    sleep(1);
+
+    return ($httppid, $pid2);
+}
+
+#######################################################################
+# start the http server
+#
+sub runhttp_pipeserver {
+    my ($proto, $verbose, $alt, $port) = @_;
+    my $ip = $HOSTIP;
+    my $ipvnum = 4;
+    my $idnum = 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if($alt eq "ipv6") {
+        # No IPv6
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose 1 " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--port $port --srcdir \"$srcdir\"";
+
+    my $cmd = "$srcdir/http_pipe.py $flags";
+    my ($httppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($httppid <= 0 || !pidexists($httppid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$httppid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $httppid\n";
+    }
+
+    sleep(1);
+
+    return ($httppid, $pid2);
+}
+
+#######################################################################
+# start the https stunnel based server
+#
+sub runhttpsserver {
+    my ($verbose, $ipv6, $certfile) = @_;
+    my $proto = 'https';
+    my $ip = ($ipv6 && ($ipv6 =~ /6$/)) ? "$HOST6IP" : "$HOSTIP";
+    my $ipvnum = ($ipv6 && ($ipv6 =~ /6$/)) ? 6 : 4;
+    my $idnum = 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if(!$stunnel) {
+        return (0,0);
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $certfile = 'stunnel.pem' unless($certfile);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--ipv$ipvnum --proto $proto ";
+    $flags .= "--certfile \"$certfile\" " if($certfile ne 'stunnel.pem');
+    $flags .= "--stunnel \"$stunnel\" --srcdir \"$srcdir\" ";
+    $flags .= "--connect $HTTPPORT --accept $HTTPSPORT";
+
+    my $cmd = "$perl $srcdir/secureserver.pl $flags";
+    my ($httpspid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($httpspid <= 0 || !pidexists($httpspid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return(0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $HTTPSPORT);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$httpspid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    # Here pid3 is actually the pid returned by the unsecure-http server.
+
+    $runcert{$server} = $certfile;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $httpspid\n";
+    }
+
+    sleep(1);
+
+    return ($httpspid, $pid2);
+}
+
+#######################################################################
+# start the non-stunnel HTTP TLS extensions capable server
+#
+sub runhttptlsserver {
+    my ($verbose, $ipv6) = @_;
+    my $proto = "httptls";
+    my $port = ($ipv6 && ($ipv6 =~ /6$/)) ? $HTTPTLS6PORT : $HTTPTLSPORT;
+    my $ip = ($ipv6 && ($ipv6 =~ /6$/)) ? "$HOST6IP" : "$HOSTIP";
+    my $ipvnum = ($ipv6 && ($ipv6 =~ /6$/)) ? 6 : 4;
+    my $idnum = 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if(!$httptlssrv) {
+        return (0,0);
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--http ";
+    $flags .= "--debug 1 " if($debugprotocol);
+    $flags .= "--port $port ";
+    $flags .= "--priority NORMAL:+SRP ";
+    $flags .= "--srppasswd $srcdir/certs/srp-verifier-db ";
+    $flags .= "--srppasswdconf $srcdir/certs/srp-verifier-conf";
+
+    my $cmd = "$httptlssrv $flags > $logfile 2>&1";
+    my ($httptlspid, $pid2) = startnew($cmd, $pidfile, 10, 1); # fake pidfile
+
+    if($httptlspid <= 0 || !pidexists($httptlspid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Server is up. Verify that we can speak to it. PID is from fake pidfile
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$httptlspid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $httptlspid\n";
+    }
+
+    sleep(1);
+
+    return ($httptlspid, $pid2);
+}
+
+#######################################################################
+# start the pingpong server (FTP, POP3, IMAP, SMTP)
+#
+sub runpingpongserver {
+    my ($proto, $id, $verbose, $ipv6) = @_;
+    my $port;
+    my $ip = ($ipv6 && ($ipv6 =~ /6$/)) ? "$HOST6IP" : "$HOSTIP";
+    my $ipvnum = ($ipv6 && ($ipv6 =~ /6$/)) ? 6 : 4;
+    my $idnum = ($id && ($id =~ /^(\d+)$/) && ($id > 1)) ? $id : 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if($proto eq "ftp") {
+        $port = ($idnum>1)?$FTP2PORT:$FTPPORT;
+
+        if($ipvnum==6) {
+            # if IPv6, use a different setup
+            $port = $FTP6PORT;
+        }
+    }
+    elsif($proto eq "pop3") {
+        $port = ($ipvnum==6) ? $POP36PORT : $POP3PORT;
+    }
+    elsif($proto eq "imap") {
+        $port = ($ipvnum==6) ? $IMAP6PORT : $IMAPPORT;
+    }
+    elsif($proto eq "smtp") {
+        $port = ($ipvnum==6) ? $SMTP6PORT : $SMTPPORT;
+    }
+    else {
+        print STDERR "Unsupported protocol $proto!!\n";
+        return 0;
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--srcdir \"$srcdir\" --proto $proto ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--ipv$ipvnum --port $port --addr \"$ip\"";
+
+    my $cmd = "$perl $srcdir/ftpserver.pl $flags";
+    my ($ftppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($ftppid <= 0 || !pidexists($ftppid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$ftppid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $ftppid\n";
+    }
+
+    sleep(1);
+
+    return ($pid2, $ftppid);
+}
+
+#######################################################################
+# start the ftps server (or rather, tunnel)
+#
+sub runftpsserver {
+    my ($verbose, $ipv6, $certfile) = @_;
+    my $proto = 'ftps';
+    my $ip = ($ipv6 && ($ipv6 =~ /6$/)) ? "$HOST6IP" : "$HOSTIP";
+    my $ipvnum = ($ipv6 && ($ipv6 =~ /6$/)) ? 6 : 4;
+    my $idnum = 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if(!$stunnel) {
+        return (0,0);
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $certfile = 'stunnel.pem' unless($certfile);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--ipv$ipvnum --proto $proto ";
+    $flags .= "--certfile \"$certfile\" " if($certfile ne 'stunnel.pem');
+    $flags .= "--stunnel \"$stunnel\" --srcdir \"$srcdir\" ";
+    $flags .= "--connect $FTPPORT --accept $FTPSPORT";
+
+    my $cmd = "$perl $srcdir/secureserver.pl $flags";
+    my ($ftpspid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($ftpspid <= 0 || !pidexists($ftpspid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return(0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $FTPSPORT);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$ftpspid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    # Here pid3 is actually the pid returned by the unsecure-ftp server.
+
+    $runcert{$server} = $certfile;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $ftpspid\n";
+    }
+
+    sleep(1);
+
+    return ($ftpspid, $pid2);
+}
+
+#######################################################################
+# start the tftp server
+#
+sub runtftpserver {
+    my ($id, $verbose, $ipv6) = @_;
+    my $port = $TFTPPORT;
+    my $ip = $HOSTIP;
+    my $proto = 'tftp';
+    my $ipvnum = 4;
+    my $idnum = ($id && ($id =~ /^(\d+)$/) && ($id > 1)) ? $id : 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if($ipv6) {
+        # if IPv6, use a different setup
+        $ipvnum = 6;
+        $port = $TFTP6PORT;
+        $ip = $HOST6IP;
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
+
+    my $cmd = "$perl $srcdir/tftpserver.pl $flags";
+    my ($tftppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($tftppid <= 0 || !pidexists($tftppid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$tftppid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $tftppid\n";
+    }
+
+    sleep(1);
+
+    return ($pid2, $tftppid);
+}
+
+
+#######################################################################
+# start the rtsp server
+#
+sub runrtspserver {
+    my ($verbose, $ipv6) = @_;
+    my $port = $RTSPPORT;
+    my $ip = $HOSTIP;
+    my $proto = 'rtsp';
+    my $ipvnum = 4;
+    my $idnum = 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    if($ipv6) {
+        # if IPv6, use a different setup
+        $ipvnum = 6;
+        $port = $RTSP6PORT;
+        $ip = $HOST6IP;
+    }
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
+
+    my $cmd = "$perl $srcdir/rtspserver.pl $flags";
+    my ($rtsppid, $pid2) = startnew($cmd, $pidfile, 15, 0);
+
+    if($rtsppid <= 0 || !pidexists($rtsppid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Server is up. Verify that we can speak to it.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$rtsppid $pid2");
+        displaylogs($testnumcheck);
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $rtsppid\n";
+    }
+
+    sleep(1);
+
+    return ($rtsppid, $pid2);
+}
+
+
+#######################################################################
+# Start the ssh (scp/sftp) server
+#
+sub runsshserver {
+    my ($id, $verbose, $ipv6) = @_;
+    my $ip=$HOSTIP;
+    my $port = $SSHPORT;
+    my $socksport = $SOCKSPORT;
+    my $proto = 'ssh';
+    my $ipvnum = 4;
+    my $idnum = ($id && ($id =~ /^(\d+)$/) && ($id > 1)) ? $id : 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    $flags .= "--verbose " if($verbose);
+    $flags .= "--debugprotocol " if($debugprotocol);
+    $flags .= "--pidfile \"$pidfile\" ";
+    $flags .= "--id $idnum " if($idnum > 1);
+    $flags .= "--ipv$ipvnum --addr \"$ip\" ";
+    $flags .= "--sshport $port --socksport $socksport ";
+    $flags .= "--user \"$USER\"";
+
+    my $cmd = "$perl $srcdir/sshserver.pl $flags";
+    my ($sshpid, $pid2) = startnew($cmd, $pidfile, 60, 0);
+
+    # on loaded systems sshserver start up can take longer than the timeout
+    # passed to startnew, when this happens startnew completes without being
+    # able to read the pidfile and consequently returns a zero pid2 above.
+
+    if($sshpid <= 0 || !pidexists($sshpid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        stopserver($server, "$pid2");
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # ssh server verification allows some extra time for the server to start up
+    # and gives us the opportunity of recovering the pid from the pidfile, when
+    # this verification succeeds the recovered pid is assigned to pid2.
+
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to fetch server pid. Kill the server and return failure
+        stopserver($server, "$sshpid $pid2");
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    # once it is known that the ssh server is alive, sftp server verification
+    # is performed actually connecting to it, authenticating and performing a
+    # very simple remote command.  This verification is tried only one time.
+
+    $sshdlog = server_logfilename($LOGDIR, 'ssh', $ipvnum, $idnum);
+    $sftplog = server_logfilename($LOGDIR, 'sftp', $ipvnum, $idnum);
+
+    if(verifysftp('sftp', $ipvnum, $idnum, $ip, $port) < 1) {
+        logmsg "RUN: SFTP server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        display_sftplog();
+        display_sftpconfig();
+        display_sshdlog();
+        display_sshdconfig();
+        stopserver($server, "$sshpid $pid2");
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $pid2\n";
+    }
+
+    return ($pid2, $sshpid);
+}
+
+#######################################################################
+# Start the socks server
+#
+sub runsocksserver {
+    my ($id, $verbose, $ipv6) = @_;
+    my $ip=$HOSTIP;
+    my $port = $SOCKSPORT;
+    my $proto = 'socks';
+    my $ipvnum = 4;
+    my $idnum = ($id && ($id =~ /^(\d+)$/) && ($id > 1)) ? $id : 1;
+    my $server;
+    my $srvrname;
+    my $pidfile;
+    my $logfile;
+    my $flags = "";
+
+    $server = servername_id($proto, $ipvnum, $idnum);
+
+    $pidfile = $serverpidfile{$server};
+
+    # don't retry if the server doesn't work
+    if ($doesntrun{$pidfile}) {
+        return (0,0);
+    }
+
+    my $pid = processexists($pidfile);
+    if($pid > 0) {
+        stopserver($server, "$pid");
+    }
+    unlink($pidfile) if(-f $pidfile);
+
+    $srvrname = servername_str($proto, $ipvnum, $idnum);
+
+    $logfile = server_logfilename($LOGDIR, $proto, $ipvnum, $idnum);
+
+    # The ssh server must be already running
+    if(!$run{'ssh'}) {
+        logmsg "RUN: SOCKS server cannot find running SSH server\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Find out ssh daemon canonical file name
+    my $sshd = find_sshd();
+    if(!$sshd) {
+        logmsg "RUN: SOCKS server cannot find $sshdexe\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Find out ssh daemon version info
+    ($sshdid, $sshdvernum, $sshdverstr, $sshderror) = sshversioninfo($sshd);
+    if(!$sshdid) {
+        # Not an OpenSSH or SunSSH ssh daemon
+        logmsg "$sshderror\n" if($verbose);
+        logmsg "SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    logmsg "ssh server found $sshd is $sshdverstr\n" if($verbose);
+
+    # Find out ssh client canonical file name
+    my $ssh = find_ssh();
+    if(!$ssh) {
+        logmsg "RUN: SOCKS server cannot find $sshexe\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Find out ssh client version info
+    my ($sshid, $sshvernum, $sshverstr, $ssherror) = sshversioninfo($ssh);
+    if(!$sshid) {
+        # Not an OpenSSH or SunSSH ssh client
+        logmsg "$ssherror\n" if($verbose);
+        logmsg "SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Verify minimum ssh client version
+    if((($sshid =~ /OpenSSH/) && ($sshvernum < 299)) ||
+       (($sshid =~ /SunSSH/)  && ($sshvernum < 100))) {
+        logmsg "ssh client found $ssh is $sshverstr\n";
+        logmsg "SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    logmsg "ssh client found $ssh is $sshverstr\n" if($verbose);
+
+    # Verify if ssh client and ssh daemon versions match
+    if(($sshdid ne $sshid) || ($sshdvernum != $sshvernum)) {
+        # Our test harness might work with slightly mismatched versions
+        logmsg "Warning: version mismatch: sshd $sshdverstr - ssh $sshverstr\n"
+            if($verbose);
+    }
+
+    # Config file options for ssh client are previously set from sshserver.pl
+    if(! -e $sshconfig) {
+        logmsg "RUN: SOCKS server cannot find $sshconfig\n";
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    $sshlog  = server_logfilename($LOGDIR, 'socks', $ipvnum, $idnum);
+
+    # start our socks server
+    my $cmd="\"$ssh\" -N -F $sshconfig $ip > $sshlog 2>&1";
+    my ($sshpid, $pid2) = startnew($cmd, $pidfile, 30, 1); # fake pidfile
+
+    if($sshpid <= 0 || !pidexists($sshpid)) {
+        # it is NOT alive
+        logmsg "RUN: failed to start the $srvrname server\n";
+        display_sshlog();
+        display_sshconfig();
+        display_sshdlog();
+        display_sshdconfig();
+        stopserver($server, "$pid2");
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+
+    # Ugly hack but ssh doesn't support pid files. PID is from fake pidfile.
+    my $pid3 = verifyserver($proto, $ipvnum, $idnum, $ip, $port);
+    if(!$pid3) {
+        logmsg "RUN: $srvrname server failed verification\n";
+        # failed to talk to it properly. Kill the server and return failure
+        stopserver($server, "$sshpid $pid2");
+        $doesntrun{$pidfile} = 1;
+        return (0,0);
+    }
+    $pid2 = $pid3;
+
+    if($verbose) {
+        logmsg "RUN: $srvrname server is now running PID $pid2\n";
+    }
+
+    return ($pid2, $sshpid);
+}
+
+#######################################################################
+# Single shot http and gopher server responsiveness test. This should only
+# be used to verify that a server present in %run hash is still functional
+#
+sub responsive_http_server {
+    my ($proto, $verbose, $alt, $port_or_path) = @_;
+    my $ip = $HOSTIP;
+    my $ipvnum = 4;
+    my $idnum = 1;
+
+    if($alt eq "ipv6") {
+        # if IPv6, use a different setup
+        $ipvnum = 6;
+        $ip = $HOST6IP;
+    }
+    elsif($alt eq "proxy") {
+        $idnum = 2;
+    }
+    elsif($alt eq "unix") {
+        # IP (protocol) is mutually exclusive with Unix sockets
+        $ipvnum = "unix";
+    }
+
+    return &responsiveserver($proto, $ipvnum, $idnum, $ip, $port_or_path);
+}
+
+#######################################################################
+# Single shot pingpong server responsiveness test. This should only be
+# used to verify that a server present in %run hash is still functional
+#
+sub responsive_pingpong_server {
+    my ($proto, $id, $verbose, $ipv6) = @_;
+    my $port;
+    my $ip = ($ipv6 && ($ipv6 =~ /6$/)) ? "$HOST6IP" : "$HOSTIP";
+    my $ipvnum = ($ipv6 && ($ipv6 =~ /6$/)) ? 6 : 4;
+    my $idnum = ($id && ($id =~ /^(\d+)$/) && ($id > 1)) ? $id : 1;
+
+    if($proto eq "ftp") {
+        $port = ($idnum>1)?$FTP2PORT:$FTPPORT;
+
+        if($ipvnum==6) {
+            # if IPv6, use a different setup
+            $port = $FTP6PORT;
+        }
+    }
+    elsif($proto eq "pop3") {
+        $port = ($ipvnum==6) ? $POP36PORT : $POP3PORT;
+    }
+    elsif($proto eq "imap") {
+        $port = ($ipvnum==6) ? $IMAP6PORT : $IMAPPORT;
+    }
+    elsif($proto eq "smtp") {
+        $port = ($ipvnum==6) ? $SMTP6PORT : $SMTPPORT;
+    }
+    else {
+        print STDERR "Unsupported protocol $proto!!\n";
+        return 0;
+    }
+
+    return &responsiveserver($proto, $ipvnum, $idnum, $ip, $port);
+}
+
+#######################################################################
+# Single shot rtsp server responsiveness test. This should only be
+# used to verify that a server present in %run hash is still functional
+#
+sub responsive_rtsp_server {
+    my ($verbose, $ipv6) = @_;
+    my $port = $RTSPPORT;
+    my $ip = $HOSTIP;
+    my $proto = 'rtsp';
+    my $ipvnum = 4;
+    my $idnum = 1;
+
+    if($ipv6) {
+        # if IPv6, use a different setup
+        $ipvnum = 6;
+        $port = $RTSP6PORT;
+        $ip = $HOST6IP;
+    }
+
+    return &responsiveserver($proto, $ipvnum, $idnum, $ip, $port);
+}
+
+#######################################################################
+# Single shot tftp server responsiveness test. This should only be
+# used to verify that a server present in %run hash is still functional
+#
+sub responsive_tftp_server {
+    my ($id, $verbose, $ipv6) = @_;
+    my $port = $TFTPPORT;
+    my $ip = $HOSTIP;
+    my $proto = 'tftp';
+    my $ipvnum = 4;
+    my $idnum = ($id && ($id =~ /^(\d+)$/) && ($id > 1)) ? $id : 1;
+
+    if($ipv6) {
+        # if IPv6, use a different setup
+        $ipvnum = 6;
+        $port = $TFTP6PORT;
+        $ip = $HOST6IP;
+    }
+
+    return &responsiveserver($proto, $ipvnum, $idnum, $ip, $port);
+}
+
+#######################################################################
+# Single shot non-stunnel HTTP TLS extensions capable server
+# responsiveness test. This should only be used to verify that a
+# server present in %run hash is still functional
+#
+sub responsive_httptls_server {
+    my ($verbose, $ipv6) = @_;
+    my $proto = "httptls";
+    my $port = ($ipv6 && ($ipv6 =~ /6$/)) ? $HTTPTLS6PORT : $HTTPTLSPORT;
+    my $ip = ($ipv6 && ($ipv6 =~ /6$/)) ? "$HOST6IP" : "$HOSTIP";
+    my $ipvnum = ($ipv6 && ($ipv6 =~ /6$/)) ? 6 : 4;
+    my $idnum = 1;
+
+    return &responsiveserver($proto, $ipvnum, $idnum, $ip, $port);
+}
+
+#######################################################################
+# Remove all files in the specified directory
+#
+sub cleardir {
+    my $dir = $_[0];
+    my $count;
+    my $file;
+
+    # Get all files
+    opendir(DIR, $dir) ||
+        return 0; # can't open dir
+    while($file = readdir(DIR)) {
+        if($file !~ /^\./) {
+            unlink("$dir/$file");
+            $count++;
+        }
+    }
+    closedir DIR;
+    return $count;
+}
+
+#######################################################################
+# compare test results with the expected output, we might filter off
+# some pattern that is allowed to differ, output test results
+#
+sub compare {
+    my ($testnum, $testname, $subject, $firstref, $secondref)=@_;
+
+    my $result = compareparts($firstref, $secondref);
+
+    if($result) {
+        # timestamp test result verification end
+        $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+
+        if(!$short) {
+            logmsg "\n $testnum: $subject FAILED:\n";
+            logmsg showdiff($LOGDIR, $firstref, $secondref);
+        }
+        elsif(!$automakestyle) {
+            logmsg "FAILED\n";
+        }
+        else {
+            # automakestyle
+            logmsg "FAIL: $testnum - $testname - $subject\n";
+        }
+    }
+    return $result;
+}
+
+#######################################################################
+# display information about curl and the host the test suite runs on
+#
+sub checksystem {
+
+    unlink($memdump); # remove this if there was one left
+
+    my $feat;
+    my $curl;
+    my $libcurl;
+    my $versretval;
+    my $versnoexec;
+    my @version=();
+
+    my $curlverout="$LOGDIR/curlverout.log";
+    my $curlvererr="$LOGDIR/curlvererr.log";
+    my $versioncmd="$CURL --version 1>$curlverout 2>$curlvererr";
+
+    unlink($curlverout);
+    unlink($curlvererr);
+
+    $versretval = runclient($versioncmd);
+    $versnoexec = $!;
+
+    open(VERSOUT, "<$curlverout");
+    @version = <VERSOUT>;
+    close(VERSOUT);
+
+    $resolver="stock";
+    for(@version) {
+        chomp;
+
+        if($_ =~ /^curl/) {
+            $curl = $_;
+            $curl =~ s/^(.*)(libcurl.*)/$1/g;
+
+            $libcurl = $2;
+            if($curl =~ /win32|mingw(32|64)/) {
+                # This is a Windows MinGW build or native build, we need to use
+                # Win32-style path.
+                $pwd = pathhelp::sys_native_current_path();
+            }
+           if ($libcurl =~ /winssl/i) {
+               $has_winssl=1;
+               $ssllib="WinSSL";
+           }
+           elsif ($libcurl =~ /openssl/i) {
+               $has_openssl=1;
+               $has_sslpinning=1;
+               $ssllib="OpenSSL";
+           }
+           elsif ($libcurl =~ /gnutls/i) {
+               $has_gnutls=1;
+               $has_sslpinning=1;
+               $ssllib="GnuTLS";
+           }
+           elsif ($libcurl =~ /nss/i) {
+               $has_nss=1;
+               $has_sslpinning=1;
+               $ssllib="NSS";
+           }
+           elsif ($libcurl =~ /(yassl|wolfssl)/i) {
+               $has_yassl=1;
+               $has_sslpinning=1;
+               $ssllib="yassl";
+           }
+           elsif ($libcurl =~ /polarssl/i) {
+               $has_polarssl=1;
+               $has_sslpinning=1;
+               $ssllib="polarssl";
+           }
+           elsif ($libcurl =~ /axtls/i) {
+               $has_axtls=1;
+               $ssllib="axTLS";
+           }
+           elsif ($libcurl =~ /securetransport/i) {
+               $has_darwinssl=1;
+               $has_sslpinning=1;
+               $ssllib="DarwinSSL";
+           }
+           elsif ($libcurl =~ /BoringSSL/i) {
+               $has_boringssl=1;
+               $has_sslpinning=1;
+               $ssllib="BoringSSL";
+           }
+           elsif ($libcurl =~ /libressl/i) {
+               $has_libressl=1;
+               $has_sslpinning=1;
+               $ssllib="libressl";
+           }
+           elsif ($libcurl =~ /mbedTLS/i) {
+               $has_mbedtls=1;
+               $has_sslpinning=1;
+               $ssllib="mbedTLS";
+           }
+           if ($libcurl =~ /ares/i) {
+               $has_cares=1;
+               $resolver="c-ares";
+           }
+        }
+        elsif($_ =~ /^Protocols: (.*)/i) {
+            # these are the protocols compiled in to this libcurl
+            @protocols = split(' ', lc($1));
+
+            # Generate a "proto-ipv6" version of each protocol to match the
+            # IPv6 <server> name and a "proto-unix" to match the variant which
+            # uses Unix domain sockets. This works even if support isn't
+            # compiled in because the <features> test will fail.
+            push @protocols, map(("$_-ipv6", "$_-unix"), @protocols);
+
+            # 'http-proxy' is used in test cases to do CONNECT through
+            push @protocols, 'http-proxy';
+
+            # 'http-pipe' is the special server for testing pipelining
+            push @protocols, 'http-pipe';
+
+            # 'none' is used in test cases to mean no server
+            push @protocols, 'none';
+        }
+        elsif($_ =~ /^Features: (.*)/i) {
+            $feat = $1;
+            if($feat =~ /TrackMemory/i) {
+                # built with memory tracking support (--enable-curldebug)
+                $has_memory_tracking = 1;
+            }
+            if($feat =~ /debug/i) {
+                # curl was built with --enable-debug
+                $debug_build = 1;
+            }
+            if($feat =~ /SSL/i) {
+                # ssl enabled
+                $has_ssl=1;
+            }
+            if($feat =~ /Largefile/i) {
+                # large file support
+                $has_largefile=1;
+            }
+            if($feat =~ /IDN/i) {
+                # IDN support
+                $has_idn=1;
+            }
+            if($feat =~ /IPv6/i) {
+                $has_ipv6 = 1;
+            }
+            if($feat =~ /UnixSockets/i) {
+                $has_unix = 1;
+            }
+            if($feat =~ /libz/i) {
+                $has_libz = 1;
+            }
+            if($feat =~ /NTLM/i) {
+                # NTLM enabled
+                $has_ntlm=1;
+
+                # Use this as a proxy for any cryptographic authentication
+                $has_crypto=1;
+            }
+            if($feat =~ /NTLM_WB/i) {
+                # NTLM delegation to winbind daemon ntlm_auth helper enabled
+                $has_ntlm_wb=1;
+            }
+            if($feat =~ /SSPI/i) {
+                # SSPI enabled
+                $has_sspi=1;
+            }
+            if($feat =~ /GSS-API/i) {
+                # GSS-API enabled
+                $has_gssapi=1;
+            }
+            if($feat =~ /Kerberos/i) {
+                # Kerberos enabled
+                $has_kerberos=1;
+
+                # Use this as a proxy for any cryptographic authentication
+                $has_crypto=1;
+            }
+            if($feat =~ /SPNEGO/i) {
+                # SPNEGO enabled
+                $has_spnego=1;
+
+                # Use this as a proxy for any cryptographic authentication
+                $has_crypto=1;
+            }
+            if($feat =~ /CharConv/i) {
+                # CharConv enabled
+                $has_charconv=1;
+            }
+            if($feat =~ /TLS-SRP/i) {
+                # TLS-SRP enabled
+                $has_tls_srp=1;
+            }
+            if($feat =~ /Metalink/i) {
+                # Metalink enabled
+                $has_metalink=1;
+            }
+            if($feat =~ /PSL/i) {
+                # PSL enabled
+                $has_psl=1;
+            }
+            if($feat =~ /AsynchDNS/i) {
+                if(!$has_cares) {
+                    # this means threaded resolver
+                    $has_threadedres=1;
+                    $resolver="threaded";
+                }
+            }
+            if($feat =~ /HTTP2/) {
+                # http2 enabled
+                $has_http2=1;
+
+                push @protocols, 'http/2';
+            }
+        }
+        #
+        # Test harness currently uses a non-stunnel server in order to
+        # run HTTP TLS-SRP tests required when curl is built with https
+        # protocol support and TLS-SRP feature enabled. For convenience
+        # 'httptls' may be included in the test harness protocols array
+        # to differentiate this from classic stunnel based 'https' test
+        # harness server.
+        #
+        if($has_tls_srp) {
+            my $add_httptls;
+            for(@protocols) {
+                if($_ =~ /^https(-ipv6|)$/) {
+                    $add_httptls=1;
+                    last;
+                }
+            }
+            if($add_httptls && (! grep /^httptls$/, @protocols)) {
+                push @protocols, 'httptls';
+                push @protocols, 'httptls-ipv6';
+            }
+        }
+    }
+    if(!$curl) {
+        logmsg "unable to get curl's version, further details are:\n";
+        logmsg "issued command: \n";
+        logmsg "$versioncmd \n";
+        if ($versretval == -1) {
+            logmsg "command failed with: \n";
+            logmsg "$versnoexec \n";
+        }
+        elsif ($versretval & 127) {
+            logmsg sprintf("command died with signal %d, and %s coredump.\n",
+                           ($versretval & 127), ($versretval & 128)?"a":"no");
+        }
+        else {
+            logmsg sprintf("command exited with value %d \n", $versretval >> 8);
+        }
+        logmsg "contents of $curlverout: \n";
+        displaylogcontent("$curlverout");
+        logmsg "contents of $curlvererr: \n";
+        displaylogcontent("$curlvererr");
+        die "couldn't get curl's version";
+    }
+
+    if(-r "../lib/curl_config.h") {
+        open(CONF, "<../lib/curl_config.h");
+        while(<CONF>) {
+            if($_ =~ /^\#define HAVE_GETRLIMIT/) {
+                $has_getrlimit = 1;
+            }
+        }
+        close(CONF);
+    }
+
+    if($has_ipv6) {
+        # client has IPv6 support
+
+        # check if the HTTP server has it!
+        my @sws = `server/sws --version`;
+        if($sws[0] =~ /IPv6/) {
+            # HTTP server has IPv6 support!
+            $http_ipv6 = 1;
+            $gopher_ipv6 = 1;
+        }
+
+        # check if the FTP server has it!
+        @sws = `server/sockfilt --version`;
+        if($sws[0] =~ /IPv6/) {
+            # FTP server has IPv6 support!
+            $ftp_ipv6 = 1;
+        }
+    }
+
+    if($has_unix) {
+        # client has Unix sockets support, check whether the HTTP server has it
+        my @sws = `server/sws --version`;
+        $http_unix = 1 if($sws[0] =~ /unix/);
+    }
+
+    if(!$has_memory_tracking && $torture) {
+        die "can't run torture tests since curl was built without ".
+            "TrackMemory feature (--enable-curldebug)";
+    }
+
+    $has_shared = `sh $CURLCONFIG --built-shared`;
+    chomp $has_shared;
+
+    my $hostname=join(' ', runclientoutput("hostname"));
+    my $hosttype=join(' ', runclientoutput("uname -a"));
+
+    logmsg ("********* System characteristics ******** \n",
+    "* $curl\n",
+    "* $libcurl\n",
+    "* Features: $feat\n",
+    "* Host: $hostname",
+    "* System: $hosttype");
+
+    if($has_memory_tracking && $has_threadedres) {
+        $has_memory_tracking = 0;
+        logmsg("*\n",
+               "*** DISABLES memory tracking when using threaded resolver\n",
+               "*\n");
+    }
+
+    logmsg sprintf("* Servers: %s", $stunnel?"SSL ":"");
+    logmsg sprintf("%s", $http_ipv6?"HTTP-IPv6 ":"");
+    logmsg sprintf("%s", $http_unix?"HTTP-unix ":"");
+    logmsg sprintf("%s\n", $ftp_ipv6?"FTP-IPv6 ":"");
+
+    logmsg sprintf("* Env: %s%s", $valgrind?"Valgrind ":"",
+                   $run_event_based?"event-based ":"");
+    logmsg sprintf("%s\n", $libtool?"Libtool ":"");
+
+    if($verbose) {
+        logmsg "* Ports:\n";
+
+        logmsg sprintf("*   HTTP/%d ", $HTTPPORT);
+        logmsg sprintf("FTP/%d ", $FTPPORT);
+        logmsg sprintf("FTP2/%d ", $FTP2PORT);
+        logmsg sprintf("RTSP/%d ", $RTSPPORT);
+        if($stunnel) {
+            logmsg sprintf("FTPS/%d ", $FTPSPORT);
+            logmsg sprintf("HTTPS/%d ", $HTTPSPORT);
+        }
+        logmsg sprintf("\n*   TFTP/%d ", $TFTPPORT);
+        if($http_ipv6) {
+            logmsg sprintf("HTTP-IPv6/%d ", $HTTP6PORT);
+            logmsg sprintf("RTSP-IPv6/%d ", $RTSP6PORT);
+        }
+        if($ftp_ipv6) {
+            logmsg sprintf("FTP-IPv6/%d ", $FTP6PORT);
+        }
+        if($tftp_ipv6) {
+            logmsg sprintf("TFTP-IPv6/%d ", $TFTP6PORT);
+        }
+        logmsg sprintf("\n*   GOPHER/%d ", $GOPHERPORT);
+        if($gopher_ipv6) {
+            logmsg sprintf("GOPHER-IPv6/%d", $GOPHER6PORT);
+        }
+        logmsg sprintf("\n*   SSH/%d ", $SSHPORT);
+        logmsg sprintf("SOCKS/%d ", $SOCKSPORT);
+        logmsg sprintf("POP3/%d ", $POP3PORT);
+        logmsg sprintf("IMAP/%d ", $IMAPPORT);
+        logmsg sprintf("SMTP/%d\n", $SMTPPORT);
+        if($ftp_ipv6) {
+            logmsg sprintf("*   POP3-IPv6/%d ", $POP36PORT);
+            logmsg sprintf("IMAP-IPv6/%d ", $IMAP6PORT);
+            logmsg sprintf("SMTP-IPv6/%d\n", $SMTP6PORT);
+        }
+        if($httptlssrv) {
+            logmsg sprintf("*   HTTPTLS/%d ", $HTTPTLSPORT);
+            if($has_ipv6) {
+                logmsg sprintf("HTTPTLS-IPv6/%d ", $HTTPTLS6PORT);
+            }
+            logmsg "\n";
+        }
+        logmsg sprintf("*   HTTP-PIPE/%d \n", $HTTPPIPEPORT);
+
+        if($has_unix) {
+            logmsg "* Unix socket paths:\n";
+            if($http_unix) {
+                logmsg sprintf("*   HTTP-Unix:%s\n", $HTTPUNIXPATH);
+            }
+        }
+    }
+    $has_textaware = ($^O eq 'MSWin32') || ($^O eq 'msys');
+
+    logmsg "***************************************** \n";
+}
+
+#######################################################################
+# substitute the variable stuff into either a joined up file or
+# a command, in either case passed by reference
+#
+sub subVariables {
+  my ($thing) = @_;
+
+  # ports
+
+  $$thing =~ s/%FTP6PORT/$FTP6PORT/g;
+  $$thing =~ s/%FTP2PORT/$FTP2PORT/g;
+  $$thing =~ s/%FTPSPORT/$FTPSPORT/g;
+  $$thing =~ s/%FTPPORT/$FTPPORT/g;
+
+  $$thing =~ s/%GOPHER6PORT/$GOPHER6PORT/g;
+  $$thing =~ s/%GOPHERPORT/$GOPHERPORT/g;
+
+  $$thing =~ s/%HTTPTLS6PORT/$HTTPTLS6PORT/g;
+  $$thing =~ s/%HTTPTLSPORT/$HTTPTLSPORT/g;
+  $$thing =~ s/%HTTP6PORT/$HTTP6PORT/g;
+  $$thing =~ s/%HTTPSPORT/$HTTPSPORT/g;
+  $$thing =~ s/%HTTP2PORT/$HTTP2PORT/g;
+  $$thing =~ s/%HTTPPORT/$HTTPPORT/g;
+  $$thing =~ s/%HTTPPIPEPORT/$HTTPPIPEPORT/g;
+  $$thing =~ s/%PROXYPORT/$HTTPPROXYPORT/g;
+
+  $$thing =~ s/%IMAP6PORT/$IMAP6PORT/g;
+  $$thing =~ s/%IMAPPORT/$IMAPPORT/g;
+
+  $$thing =~ s/%POP36PORT/$POP36PORT/g;
+  $$thing =~ s/%POP3PORT/$POP3PORT/g;
+
+  $$thing =~ s/%RTSP6PORT/$RTSP6PORT/g;
+  $$thing =~ s/%RTSPPORT/$RTSPPORT/g;
+
+  $$thing =~ s/%SMTP6PORT/$SMTP6PORT/g;
+  $$thing =~ s/%SMTPPORT/$SMTPPORT/g;
+
+  $$thing =~ s/%SOCKSPORT/$SOCKSPORT/g;
+  $$thing =~ s/%SSHPORT/$SSHPORT/g;
+
+  $$thing =~ s/%TFTP6PORT/$TFTP6PORT/g;
+  $$thing =~ s/%TFTPPORT/$TFTPPORT/g;
+
+  # server Unix domain socket paths
+
+  $$thing =~ s/%HTTPUNIXPATH/$HTTPUNIXPATH/g;
+
+  # client IP addresses
+
+  $$thing =~ s/%CLIENT6IP/$CLIENT6IP/g;
+  $$thing =~ s/%CLIENTIP/$CLIENTIP/g;
+
+  # server IP addresses
+
+  $$thing =~ s/%HOST6IP/$HOST6IP/g;
+  $$thing =~ s/%HOSTIP/$HOSTIP/g;
+
+  # misc
+
+  $$thing =~ s/%CURL/$CURL/g;
+  $$thing =~ s/%PWD/$pwd/g;
+  $$thing =~ s/%SRCDIR/$srcdir/g;
+  $$thing =~ s/%USER/$USER/g;
+
+  # The purpose of FTPTIME2 and FTPTIME3 is to provide times that can be
+  # used for time-out tests and that whould work on most hosts as these
+  # adjust for the startup/check time for this particular host. We needed
+  # to do this to make the test suite run better on very slow hosts.
+
+  my $ftp2 = $ftpchecktime * 2;
+  my $ftp3 = $ftpchecktime * 3;
+
+  $$thing =~ s/%FTPTIME2/$ftp2/g;
+  $$thing =~ s/%FTPTIME3/$ftp3/g;
+
+  # HTTP2
+
+  $$thing =~ s/%H2CVER/$h2cver/g;  
+}
+
+sub fixarray {
+    my @in = @_;
+
+    for(@in) {
+        subVariables \$_;
+    }
+    return @in;
+}
+
+#######################################################################
+# Provide time stamps for single test skipped events
+#
+sub timestampskippedevents {
+    my $testnum = $_[0];
+
+    return if((not defined($testnum)) || ($testnum < 1));
+
+    if($timestats) {
+
+        if($timevrfyend{$testnum}) {
+            return;
+        }
+        elsif($timesrvrlog{$testnum}) {
+            $timevrfyend{$testnum} = $timesrvrlog{$testnum};
+            return;
+        }
+        elsif($timetoolend{$testnum}) {
+            $timevrfyend{$testnum} = $timetoolend{$testnum};
+            $timesrvrlog{$testnum} = $timetoolend{$testnum};
+        }
+        elsif($timetoolini{$testnum}) {
+            $timevrfyend{$testnum} = $timetoolini{$testnum};
+            $timesrvrlog{$testnum} = $timetoolini{$testnum};
+            $timetoolend{$testnum} = $timetoolini{$testnum};
+        }
+        elsif($timesrvrend{$testnum}) {
+            $timevrfyend{$testnum} = $timesrvrend{$testnum};
+            $timesrvrlog{$testnum} = $timesrvrend{$testnum};
+            $timetoolend{$testnum} = $timesrvrend{$testnum};
+            $timetoolini{$testnum} = $timesrvrend{$testnum};
+        }
+        elsif($timesrvrini{$testnum}) {
+            $timevrfyend{$testnum} = $timesrvrini{$testnum};
+            $timesrvrlog{$testnum} = $timesrvrini{$testnum};
+            $timetoolend{$testnum} = $timesrvrini{$testnum};
+            $timetoolini{$testnum} = $timesrvrini{$testnum};
+            $timesrvrend{$testnum} = $timesrvrini{$testnum};
+        }
+        elsif($timeprepini{$testnum}) {
+            $timevrfyend{$testnum} = $timeprepini{$testnum};
+            $timesrvrlog{$testnum} = $timeprepini{$testnum};
+            $timetoolend{$testnum} = $timeprepini{$testnum};
+            $timetoolini{$testnum} = $timeprepini{$testnum};
+            $timesrvrend{$testnum} = $timeprepini{$testnum};
+            $timesrvrini{$testnum} = $timeprepini{$testnum};
+        }
+    }
+}
+
+#######################################################################
+# Run a single specified test case
+#
+sub singletest {
+    my ($evbased, # 1 means switch on if possible (and "curl" is tested)
+                  # returns "not a test" if it can't be used for this test
+        $testnum,
+        $count,
+        $total)=@_;
+
+    my @what;
+    my $why;
+    my %feature;
+    my $cmd;
+    my $disablevalgrind;
+
+    # copy test number to a global scope var, this allows
+    # testnum checking when starting test harness servers.
+    $testnumcheck = $testnum;
+
+    # timestamp test preparation start
+    $timeprepini{$testnum} = Time::HiRes::time() if($timestats);
+
+    if($disttests !~ /test$testnum\W/ ) {
+        logmsg "Warning: test$testnum not present in tests/data/Makefile.inc\n";
+    }
+    if($disabled{$testnum}) {
+        logmsg "Warning: test$testnum is explicitly disabled\n";
+    }
+
+    # load the test case file definition
+    if(loadtest("${TESTDIR}/test${testnum}")) {
+        if($verbose) {
+            # this is not a test
+            logmsg "RUN: $testnum doesn't look like a test case\n";
+        }
+        $why = "no test";
+    }
+    else {
+        @what = getpart("client", "features");
+    }
+
+    # We require a feature to be present
+    for(@what) {
+        my $f = $_;
+        $f =~ s/\s//g;
+
+        if($f =~ /^([^!].*)$/) {
+            # Store the feature for later
+            $feature{$1} = $1;
+
+            if($1 eq "SSL") {
+                if($has_ssl) {
+                    next;
+                }
+            }
+            elsif($1 eq "SSLpinning") {
+                if($has_sslpinning) {
+                    next;
+                }
+            }
+            elsif($1 eq "OpenSSL") {
+                if($has_openssl) {
+                    next;
+                }
+            }
+            elsif($1 eq "GnuTLS") {
+                if($has_gnutls) {
+                    next;
+                }
+            }
+            elsif($1 eq "NSS") {
+                if($has_nss) {
+                    next;
+                }
+            }
+            elsif($1 eq "axTLS") {
+                if($has_axtls) {
+                    next;
+                }
+            }
+            elsif($1 eq "WinSSL") {
+                if($has_winssl) {
+                    next;
+                }
+            }
+            elsif($1 eq "DarwinSSL") {
+                if($has_darwinssl) {
+                    next;
+                }
+            }
+            elsif($1 eq "unittest") {
+                if($debug_build) {
+                    next;
+                }
+            }
+            elsif($1 eq "debug") {
+                if($debug_build) {
+                    next;
+                }
+            }
+            elsif($1 eq "TrackMemory") {
+                if($has_memory_tracking) {
+                    next;
+                }
+            }
+            elsif($1 eq "large_file") {
+                if($has_largefile) {
+                    next;
+                }
+            }
+            elsif($1 eq "idn") {
+                if($has_idn) {
+                    next;
+                }
+            }
+            elsif($1 eq "ipv6") {
+                if($has_ipv6) {
+                    next;
+                }
+            }
+            elsif($1 eq "libz") {
+                if($has_libz) {
+                    next;
+                }
+            }
+            elsif($1 eq "NTLM") {
+                if($has_ntlm) {
+                    next;
+                }
+            }
+            elsif($1 eq "NTLM_WB") {
+                if($has_ntlm_wb) {
+                    next;
+                }
+            }
+            elsif($1 eq "SSPI") {
+                if($has_sspi) {
+                    next;
+                }
+            }
+            elsif($1 eq "GSS-API") {
+                if($has_gssapi) {
+                    next;
+                }
+            }
+            elsif($1 eq "Kerberos") {
+                if($has_kerberos) {
+                    next;
+                }
+            }
+            elsif($1 eq "SPNEGO") {
+                if($has_spnego) {
+                    next;
+                }
+            }
+            elsif($1 eq "getrlimit") {
+                if($has_getrlimit) {
+                    next;
+                }
+            }
+            elsif($1 eq "crypto") {
+                if($has_crypto) {
+                    next;
+                }
+            }
+            elsif($1 eq "TLS-SRP") {
+                if($has_tls_srp) {
+                    next;
+                }
+            }
+            elsif($1 eq "Metalink") {
+                if($has_metalink) {
+                    next;
+                }
+            }
+            elsif($1 eq "http/2") {
+                if($has_http2) {
+                    next;
+                }
+            }
+            elsif($1 eq "PSL") {
+                if($has_psl) {
+                    next;
+                }
+            }
+            elsif($1 eq "socks") {
+                next;
+            }
+            elsif($1 eq "unix-sockets") {
+                next if $has_unix;
+            }
+            # See if this "feature" is in the list of supported protocols
+            elsif (grep /^\Q$1\E$/i, @protocols) {
+                next;
+            }
+
+            $why = "curl lacks $1 support";
+            last;
+        }
+    }
+
+    # We require a feature to not be present
+    if(!$why) {
+        for(@what) {
+            my $f = $_;
+            $f =~ s/\s//g;
+
+            if($f =~ /^!(.*)$/) {
+                if($1 eq "SSL") {
+                    if(!$has_ssl) {
+                        next;
+                    }
+                }
+                elsif($1 eq "OpenSSL") {
+                    if(!$has_openssl) {
+                        next;
+                    }
+                }
+                elsif($1 eq "GnuTLS") {
+                    if(!$has_gnutls) {
+                        next;
+                    }
+                }
+                elsif($1 eq "NSS") {
+                    if(!$has_nss) {
+                        next;
+                    }
+                }
+                elsif($1 eq "axTLS") {
+                    if(!$has_axtls) {
+                        next;
+                    }
+                }
+                elsif($1 eq "WinSSL") {
+                    if(!$has_winssl) {
+                        next;
+                    }
+                }
+                elsif($1 eq "DarwinSSL") {
+                    if(!$has_darwinssl) {
+                        next;
+                    }
+                }
+                elsif($1 eq "TrackMemory") {
+                    if(!$has_memory_tracking) {
+                        next;
+                    }
+                }
+                elsif($1 eq "large_file") {
+                    if(!$has_largefile) {
+                        next;
+                    }
+                }
+                elsif($1 eq "idn") {
+                    if(!$has_idn) {
+                        next;
+                    }
+                }
+                elsif($1 eq "ipv6") {
+                    if(!$has_ipv6) {
+                        next;
+                    }
+                }
+                elsif($1 eq "unix-sockets") {
+                    next if !$has_unix;
+                }
+                elsif($1 eq "libz") {
+                    if(!$has_libz) {
+                        next;
+                    }
+                }
+                elsif($1 eq "NTLM") {
+                    if(!$has_ntlm) {
+                        next;
+                    }
+                }
+                elsif($1 eq "NTLM_WB") {
+                    if(!$has_ntlm_wb) {
+                        next;
+                    }
+                }
+                elsif($1 eq "SSPI") {
+                    if(!$has_sspi) {
+                        next;
+                    }
+                }
+                elsif($1 eq "GSS-API") {
+                    if(!$has_gssapi) {
+                        next;
+                    }
+                }
+                elsif($1 eq "Kerberos") {
+                    if(!$has_kerberos) {
+                        next;
+                    }
+                }
+                elsif($1 eq "SPNEGO") {
+                    if(!$has_spnego) {
+                        next;
+                    }
+                }
+                elsif($1 eq "getrlimit") {
+                    if(!$has_getrlimit) {
+                        next;
+                    }
+                }
+                elsif($1 eq "crypto") {
+                    if(!$has_crypto) {
+                        next;
+                    }
+                }
+                elsif($1 eq "TLS-SRP") {
+                    if(!$has_tls_srp) {
+                        next;
+                    }
+                }
+                elsif($1 eq "Metalink") {
+                    if(!$has_metalink) {
+                        next;
+                    }
+                }
+                elsif($1 eq "PSL") {
+                    if(!$has_psl) {
+                        next;
+                    }
+                }
+                else {
+                    next;
+                }
+            }
+            else {
+                next;
+            }
+
+            $why = "curl has $1 support";
+            last;
+        }
+    }
+
+    if(!$why) {
+        my @keywords = getpart("info", "keywords");
+        my $match;
+        my $k;
+
+        if(!$keywords[0]) {
+            $why = "missing the <keywords> section!";
+        }
+
+        for $k (@keywords) {
+            chomp $k;
+            if ($disabled_keywords{$k}) {
+                $why = "disabled by keyword";
+            } elsif ($enabled_keywords{$k}) {
+                $match = 1;
+            }
+        }
+
+        if(!$why && !$match && %enabled_keywords) {
+            $why = "disabled by missing keyword";
+        }
+    }
+
+    # test definition may instruct to (un)set environment vars
+    # this is done this early, so that the precheck can use environment
+    # variables and still bail out fine on errors
+
+    # restore environment variables that were modified in a previous run
+    foreach my $var (keys %oldenv) {
+        if($oldenv{$var} eq 'notset') {
+            delete $ENV{$var} if($ENV{$var});
+        }
+        else {
+            $ENV{$var} = $oldenv{$var};
+        }
+        delete $oldenv{$var};
+    }
+
+    # remove test server commands file before servers are started/verified
+    unlink($FTPDCMD) if(-f $FTPDCMD);
+
+    # timestamp required servers verification start
+    $timesrvrini{$testnum} = Time::HiRes::time() if($timestats);
+
+    if(!$why) {
+        $why = serverfortest($testnum);
+    }
+
+    # timestamp required servers verification end
+    $timesrvrend{$testnum} = Time::HiRes::time() if($timestats);
+
+    my @setenv = getpart("client", "setenv");
+    if(@setenv) {
+        foreach my $s (@setenv) {
+            chomp $s;
+            subVariables \$s;
+            if($s =~ /([^=]*)=(.*)/) {
+                my ($var, $content) = ($1, $2);
+                # remember current setting, to restore it once test runs
+                $oldenv{$var} = ($ENV{$var})?"$ENV{$var}":'notset';
+                # set new value
+                if(!$content) {
+                    delete $ENV{$var} if($ENV{$var});
+                }
+                else {
+                    if($var =~ /^LD_PRELOAD/) {
+                        if(exe_ext() && (exe_ext() eq '.exe')) {
+                            # print "Skipping LD_PRELOAD due to lack of OS support\n";
+                            next;
+                        }
+                        if($debug_build || ($has_shared ne "yes")) {
+                            # print "Skipping LD_PRELOAD due to no release shared build\n";
+                            next;
+                        }
+                    }
+                    $ENV{$var} = "$content";
+                }
+            }
+        }
+    }
+
+    if(!$why) {
+        my @precheck = getpart("client", "precheck");
+        if(@precheck) {
+            $cmd = $precheck[0];
+            chomp $cmd;
+            subVariables \$cmd;
+            if($cmd) {
+                my @p = split(/ /, $cmd);
+                if($p[0] !~ /\//) {
+                    # the first word, the command, does not contain a slash so
+                    # we will scan the "improved" PATH to find the command to
+                    # be able to run it
+                    my $fullp = checktestcmd($p[0]);
+
+                    if($fullp) {
+                        $p[0] = $fullp;
+                    }
+                    $cmd = join(" ", @p);
+                }
+
+                my @o = `$cmd 2>/dev/null`;
+                if($o[0]) {
+                    $why = $o[0];
+                    chomp $why;
+                } elsif($?) {
+                    $why = "precheck command error";
+                }
+                logmsg "prechecked $cmd\n" if($verbose);
+            }
+        }
+    }
+
+    if($why && !$listonly) {
+        # there's a problem, count it as "skipped"
+        $skipped++;
+        $skipped{$why}++;
+        $teststat[$testnum]=$why; # store reason for this test case
+
+        if(!$short) {
+            if($skipped{$why} <= 3) {
+                # show only the first three skips for each reason
+                logmsg sprintf("test %04d SKIPPED: $why\n", $testnum);
+            }
+        }
+
+        timestampskippedevents($testnum);
+        return -1;
+    }
+    logmsg sprintf("test %04d...", $testnum) if(!$automakestyle);
+
+    my %replyattr = getpartattr("reply", "data");
+    my @reply;
+    if (partexists("reply", "datacheck")) {
+        for my $partsuffix (('', '1', '2', '3', '4')) {
+            my @replycheckpart = getpart("reply", "datacheck".$partsuffix);
+            if(@replycheckpart) {
+                my %replycheckpartattr = getpartattr("reply", "datacheck".$partsuffix);
+                # get the mode attribute
+                my $filemode=$replycheckpartattr{'mode'};
+                if($filemode && ($filemode eq "text") && $has_textaware) {
+                    # text mode when running on windows: fix line endings
+                    map s/\r\n/\n/g, @replycheckpart;
+                    map s/\n/\r\n/g, @replycheckpart;
+                }
+                if($replycheckpartattr{'nonewline'}) {
+                    # Yes, we must cut off the final newline from the final line
+                    # of the datacheck
+                    chomp($replycheckpart[$#replycheckpart]);
+                }
+                push(@reply, @replycheckpart);
+            }
+        }
+    }
+    else {
+        # check against the data section
+        @reply = getpart("reply", "data");
+        # get the mode attribute
+        my $filemode=$replyattr{'mode'};
+        if($filemode && ($filemode eq "text") && $has_textaware) {
+            # text mode when running on windows: fix line endings
+            map s/\r\n/\n/g, @reply;
+            map s/\n/\r\n/g, @reply;
+        }
+    }
+
+    # this is the valid protocol blurb curl should generate
+    my @protocol= fixarray ( getpart("verify", "protocol") );
+
+    # this is the valid protocol blurb curl should generate to a proxy
+    my @proxyprot = fixarray ( getpart("verify", "proxy") );
+
+    # redirected stdout/stderr to these files
+    $STDOUT="$LOGDIR/stdout$testnum";
+    $STDERR="$LOGDIR/stderr$testnum";
+
+    # if this section exists, we verify that the stdout contained this:
+    my @validstdout = fixarray ( getpart("verify", "stdout") );
+
+    # if this section exists, we verify upload
+    my @upload = getpart("verify", "upload");
+
+    # if this section exists, it might be FTP server instructions:
+    my @ftpservercmd = getpart("reply", "servercmd");
+
+    my $CURLOUT="$LOGDIR/curl$testnum.out"; # curl output if not stdout
+
+    # name of the test
+    my @testname= getpart("client", "name");
+    my $testname = $testname[0];
+    $testname =~ s/\n//g;
+    logmsg "[$testname]\n" if(!$short);
+
+    if($listonly) {
+        timestampskippedevents($testnum);
+        return 0; # look successful
+    }
+
+    my @codepieces = getpart("client", "tool");
+
+    my $tool="";
+    if(@codepieces) {
+        $tool = $codepieces[0];
+        chomp $tool;
+    }
+
+    # remove server output logfile
+    unlink($SERVERIN);
+    unlink($SERVER2IN);
+    unlink($PROXYIN);
+
+    if(@ftpservercmd) {
+        # write the instructions to file
+        writearray($FTPDCMD, \@ftpservercmd);
+    }
+
+    # get the command line options to use
+    my @blaha;
+    ($cmd, @blaha)= getpart("client", "command");
+
+    if($cmd) {
+        # make some nice replace operations
+        $cmd =~ s/\n//g; # no newlines please
+        # substitute variables in the command line
+        subVariables \$cmd;
+    }
+    else {
+        # there was no command given, use something silly
+        $cmd="-";
+    }
+    if($has_memory_tracking) {
+        unlink($memdump);
+    }
+
+    # create a (possibly-empty) file before starting the test
+    my @inputfile=getpart("client", "file");
+    my %fileattr = getpartattr("client", "file");
+    my $filename=$fileattr{'name'};
+    if(@inputfile || $filename) {
+        if(!$filename) {
+            logmsg "ERROR: section client=>file has no name attribute\n";
+            timestampskippedevents($testnum);
+            return -1;
+        }
+        my $fileContent = join('', @inputfile);
+        subVariables \$fileContent;
+#        logmsg "DEBUG: writing file " . $filename . "\n";
+        open(OUTFILE, ">$filename");
+        binmode OUTFILE; # for crapage systems, use binary
+        print OUTFILE $fileContent;
+        close(OUTFILE);
+    }
+
+    my %cmdhash = getpartattr("client", "command");
+
+    my $out="";
+
+    if((!$cmdhash{'option'}) || ($cmdhash{'option'} !~ /no-output/)) {
+        #We may slap on --output!
+        if (!@validstdout) {
+            $out=" --output $CURLOUT ";
+        }
+    }
+
+    my $serverlogslocktimeout = $defserverlogslocktimeout;
+    if($cmdhash{'timeout'}) {
+        # test is allowed to override default server logs lock timeout
+        if($cmdhash{'timeout'} =~ /(\d+)/) {
+            $serverlogslocktimeout = $1 if($1 >= 0);
+        }
+    }
+
+    my $postcommanddelay = $defpostcommanddelay;
+    if($cmdhash{'delay'}) {
+        # test is allowed to specify a delay after command is executed
+        if($cmdhash{'delay'} =~ /(\d+)/) {
+            $postcommanddelay = $1 if($1 > 0);
+        }
+    }
+
+    my $CMDLINE;
+    my $cmdargs;
+    my $cmdtype = $cmdhash{'type'} || "default";
+    my $fail_due_event_based = $evbased;
+    if($cmdtype eq "perl") {
+        # run the command line prepended with "perl"
+        $cmdargs ="$cmd";
+        $CMDLINE = "perl ";
+        $tool=$CMDLINE;
+        $disablevalgrind=1;
+    }
+    elsif($cmdtype eq "shell") {
+        # run the command line prepended with "/bin/sh"
+        $cmdargs ="$cmd";
+        $CMDLINE = "/bin/sh ";
+        $tool=$CMDLINE;
+        $disablevalgrind=1;
+    }
+    elsif(!$tool) {
+        # run curl, add suitable command line options
+        $cmd = "-1 ".$cmd if(exists $feature{"SSL"} && ($has_axtls));
+
+        my $inc="";
+        if((!$cmdhash{'option'}) || ($cmdhash{'option'} !~ /no-include/)) {
+            $inc = " --include";
+        }
+
+        $cmdargs = "$out$inc ";
+        $cmdargs .= "--trace-ascii log/trace$testnum ";
+        $cmdargs .= "--trace-time ";
+        if($evbased) {
+            $cmdargs .= "--test-event ";
+            $fail_due_event_based--;
+        }
+        $cmdargs .= $cmd;
+    }
+    else {
+        $cmdargs = " $cmd"; # $cmd is the command line for the test file
+        $CURLOUT = $STDOUT; # sends received data to stdout
+
+        if($tool =~ /^lib/) {
+            $CMDLINE="$LIBDIR/$tool";
+        }
+        elsif($tool =~ /^unit/) {
+            $CMDLINE="$UNITDIR/$tool";
+        }
+
+        if(! -f $CMDLINE) {
+            logmsg "The tool set in the test case for this: '$tool' does not exist\n";
+            timestampskippedevents($testnum);
+            return -1;
+        }
+        $DBGCURL=$CMDLINE;
+    }
+
+    if($gdbthis) {
+        # gdb is incompatible with valgrind, so disable it when debugging
+        # Perhaps a better approach would be to run it under valgrind anyway
+        # with --db-attach=yes or --vgdb=yes.
+        $disablevalgrind=1;
+    }
+
+    if($fail_due_event_based) {
+        logmsg "This test cannot run event based\n";
+        return -1;
+    }
+
+    my @stdintest = getpart("client", "stdin");
+
+    if(@stdintest) {
+        my $stdinfile="$LOGDIR/stdin-for-$testnum";
+
+        my %hash = getpartattr("client", "stdin");
+        if($hash{'nonewline'}) {
+            # cut off the final newline from the final line of the stdin data
+            chomp($stdintest[$#stdintest]);
+        }
+
+        writearray($stdinfile, \@stdintest);
+
+        $cmdargs .= " <$stdinfile";
+    }
+
+    if(!$tool) {
+        $CMDLINE="$CURL";
+    }
+
+    my $usevalgrind;
+    if($valgrind && !$disablevalgrind) {
+        my @valgrindoption = getpart("verify", "valgrind");
+        if((!@valgrindoption) || ($valgrindoption[0] !~ /disable/)) {
+            $usevalgrind = 1;
+            my $valgrindcmd = "$valgrind ";
+            $valgrindcmd .= "$valgrind_tool " if($valgrind_tool);
+            $valgrindcmd .= "--quiet --leak-check=yes ";
+            $valgrindcmd .= "--suppressions=$srcdir/valgrind.supp ";
+           # $valgrindcmd .= "--gen-suppressions=all ";
+            $valgrindcmd .= "--num-callers=16 ";
+            $valgrindcmd .= "${valgrind_logfile}=$LOGDIR/valgrind$testnum";
+            $CMDLINE = "$valgrindcmd $CMDLINE";
+        }
+    }
+
+    $CMDLINE .= "$cmdargs >$STDOUT 2>$STDERR";
+
+    if($verbose) {
+        logmsg "$CMDLINE\n";
+    }
+
+    print CMDLOG "$CMDLINE\n";
+
+    unlink("core");
+
+    my $dumped_core;
+    my $cmdres;
+
+    if($gdbthis) {
+        my $gdbinit = "$TESTDIR/gdbinit$testnum";
+        open(GDBCMD, ">$LOGDIR/gdbcmd");
+        print GDBCMD "set args $cmdargs\n";
+        print GDBCMD "show args\n";
+        print GDBCMD "source $gdbinit\n" if -e $gdbinit;
+        close(GDBCMD);
+    }
+
+    # timestamp starting of test command
+    $timetoolini{$testnum} = Time::HiRes::time() if($timestats);
+
+    # run the command line we built
+    if ($torture) {
+        $cmdres = torture($CMDLINE,
+                       "$gdb --directory libtest $DBGCURL -x $LOGDIR/gdbcmd");
+    }
+    elsif($gdbthis) {
+        my $GDBW = ($gdbxwin) ? "-w" : "";
+        runclient("$gdb --directory libtest $DBGCURL $GDBW -x $LOGDIR/gdbcmd");
+        $cmdres=0; # makes it always continue after a debugged run
+    }
+    else {
+        $cmdres = runclient("$CMDLINE");
+        my $signal_num  = $cmdres & 127;
+        $dumped_core = $cmdres & 128;
+
+        if(!$anyway && ($signal_num || $dumped_core)) {
+            $cmdres = 1000;
+        }
+        else {
+            $cmdres >>= 8;
+            $cmdres = (2000 + $signal_num) if($signal_num && !$cmdres);
+        }
+    }
+
+    # timestamp finishing of test command
+    $timetoolend{$testnum} = Time::HiRes::time() if($timestats);
+
+    if(!$dumped_core) {
+        if(-r "core") {
+            # there's core file present now!
+            $dumped_core = 1;
+        }
+    }
+
+    if($dumped_core) {
+        logmsg "core dumped\n";
+        if(0 && $gdb) {
+            logmsg "running gdb for post-mortem analysis:\n";
+            open(GDBCMD, ">$LOGDIR/gdbcmd2");
+            print GDBCMD "bt\n";
+            close(GDBCMD);
+            runclient("$gdb --directory libtest -x $LOGDIR/gdbcmd2 -batch $DBGCURL core ");
+     #       unlink("$LOGDIR/gdbcmd2");
+        }
+    }
+
+    # If a server logs advisor read lock file exists, it is an indication
+    # that the server has not yet finished writing out all its log files,
+    # including server request log files used for protocol verification.
+    # So, if the lock file exists the script waits here a certain amount
+    # of time until the server removes it, or the given time expires.
+
+    if($serverlogslocktimeout) {
+        my $lockretry = $serverlogslocktimeout * 20;
+        while((-f $SERVERLOGS_LOCK) && $lockretry--) {
+            select(undef, undef, undef, 0.05);
+        }
+        if(($lockretry < 0) &&
+           ($serverlogslocktimeout >= $defserverlogslocktimeout)) {
+            logmsg "Warning: server logs lock timeout ",
+                   "($serverlogslocktimeout seconds) expired\n";
+        }
+    }
+
+    # Test harness ssh server does not have this synchronization mechanism,
+    # this implies that some ssh server based tests might need a small delay
+    # once that the client command has run to avoid false test failures.
+    #
+    # gnutls-serv also lacks this synchronization mechanism, so gnutls-serv
+    # based tests might need a small delay once that the client command has
+    # run to avoid false test failures.
+
+    sleep($postcommanddelay) if($postcommanddelay);
+
+    # timestamp removal of server logs advisor read lock
+    $timesrvrlog{$testnum} = Time::HiRes::time() if($timestats);
+
+    # test definition might instruct to stop some servers
+    # stop also all servers relative to the given one
+
+    my @killtestservers = getpart("client", "killserver");
+    if(@killtestservers) {
+        #
+        # All servers relative to the given one must be stopped also
+        #
+        my @killservers;
+        foreach my $server (@killtestservers) {
+            chomp $server;
+            if($server =~ /^(ftp|http|imap|pop3|smtp)s((\d*)(-ipv6|-unix|))$/) {
+                # given a stunnel ssl server, also kill non-ssl underlying one
+                push @killservers, "${1}${2}";
+            }
+            elsif($server =~ /^(ftp|http|imap|pop3|smtp)((\d*)(-ipv6|-unix|))$/) {
+                # given a non-ssl server, also kill stunnel piggybacking one
+                push @killservers, "${1}s${2}";
+            }
+            elsif($server =~ /^(socks)((\d*)(-ipv6|))$/) {
+                # given a socks server, also kill ssh underlying one
+                push @killservers, "ssh${2}";
+            }
+            elsif($server =~ /^(ssh)((\d*)(-ipv6|))$/) {
+                # given a ssh server, also kill socks piggybacking one
+                push @killservers, "socks${2}";
+            }
+            push @killservers, $server;
+        }
+        #
+        # kill sockfilter processes for pingpong relative servers
+        #
+        foreach my $server (@killservers) {
+            if($server =~ /^(ftp|imap|pop3|smtp)s?(\d*)(-ipv6|)$/) {
+                my $proto  = $1;
+                my $idnum  = ($2 && ($2 > 1)) ? $2 : 1;
+                my $ipvnum = ($3 && ($3 =~ /6$/)) ? 6 : 4;
+                killsockfilters($proto, $ipvnum, $idnum, $verbose);
+            }
+        }
+        #
+        # kill server relative pids clearing them in %run hash
+        #
+        my $pidlist;
+        foreach my $server (@killservers) {
+            if($run{$server}) {
+                $pidlist .= "$run{$server} ";
+                $run{$server} = 0;
+            }
+            $runcert{$server} = 0 if($runcert{$server});
+        }
+        killpid($verbose, $pidlist);
+        #
+        # cleanup server pid files
+        #
+        foreach my $server (@killservers) {
+            my $pidfile = $serverpidfile{$server};
+            my $pid = processexists($pidfile);
+            if($pid > 0) {
+                logmsg "Warning: $server server unexpectedly alive\n";
+                killpid($verbose, $pid);
+            }
+            unlink($pidfile) if(-f $pidfile);
+        }
+    }
+
+    # remove the test server commands file after each test
+    unlink($FTPDCMD) if(-f $FTPDCMD);
+
+    # run the postcheck command
+    my @postcheck= getpart("client", "postcheck");
+    if(@postcheck) {
+        $cmd = join("", @postcheck);
+        chomp $cmd;
+        subVariables \$cmd;
+        if($cmd) {
+            logmsg "postcheck $cmd\n" if($verbose);
+            my $rc = runclient("$cmd");
+            # Must run the postcheck command in torture mode in order
+            # to clean up, but the result can't be relied upon.
+            if($rc != 0 && !$torture) {
+                logmsg " postcheck FAILED\n";
+                # timestamp test result verification end
+                $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+                return 1;
+            }
+        }
+    }
+
+    # restore environment variables that were modified
+    if(%oldenv) {
+        foreach my $var (keys %oldenv) {
+            if($oldenv{$var} eq 'notset') {
+                delete $ENV{$var} if($ENV{$var});
+            }
+            else {
+                $ENV{$var} = "$oldenv{$var}";
+            }
+        }
+    }
+
+    # Skip all the verification on torture tests
+    if ($torture) {
+        if(!$cmdres && !$keepoutfiles) {
+            cleardir($LOGDIR);
+        }
+        # timestamp test result verification end
+        $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+        return $cmdres;
+    }
+
+    my @err = getpart("verify", "errorcode");
+    my $errorcode = $err[0] || "0";
+    my $ok="";
+    my $res;
+    chomp $errorcode;
+    if (@validstdout) {
+        # verify redirected stdout
+        my @actual = loadarray($STDOUT);
+
+        # what parts to cut off from stdout
+        my @stripfile = getpart("verify", "stripfile");
+
+        foreach my $strip (@stripfile) {
+            chomp $strip;
+            my @newgen;
+            for(@actual) {
+                eval $strip;
+                if($_) {
+                    push @newgen, $_;
+                }
+            }
+            # this is to get rid of array entries that vanished (zero
+            # length) because of replacements
+            @actual = @newgen;
+        }
+
+        # variable-replace in the stdout we have from the test case file
+        @validstdout = fixarray(@validstdout);
+
+        # get all attributes
+        my %hash = getpartattr("verify", "stdout");
+
+        # get the mode attribute
+        my $filemode=$hash{'mode'};
+        if($filemode && ($filemode eq "text") && $has_textaware) {
+            # text mode when running on windows: fix line endings
+            map s/\r\n/\n/g, @validstdout;
+            map s/\n/\r\n/g, @validstdout;
+        }
+
+        if($hash{'nonewline'}) {
+            # Yes, we must cut off the final newline from the final line
+            # of the protocol data
+            chomp($validstdout[$#validstdout]);
+        }
+
+        $res = compare($testnum, $testname, "stdout", \@actual, \@validstdout);
+        if($res) {
+            return 1;
+        }
+        $ok .= "s";
+    }
+    else {
+        $ok .= "-"; # stdout not checked
+    }
+
+    if(@protocol) {
+        # Verify the sent request
+        my @out = loadarray($SERVERIN);
+
+        # what to cut off from the live protocol sent by curl
+        my @strip = getpart("verify", "strip");
+
+        my @protstrip=@protocol;
+
+        # check if there's any attributes on the verify/protocol section
+        my %hash = getpartattr("verify", "protocol");
+
+        if($hash{'nonewline'}) {
+            # Yes, we must cut off the final newline from the final line
+            # of the protocol data
+            chomp($protstrip[$#protstrip]);
+        }
+
+        for(@strip) {
+            # strip off all lines that match the patterns from both arrays
+            chomp $_;
+            @out = striparray( $_, \@out);
+            @protstrip= striparray( $_, \@protstrip);
+        }
+
+        # what parts to cut off from the protocol
+        my @strippart = getpart("verify", "strippart");
+        my $strip;
+        for $strip (@strippart) {
+            chomp $strip;
+            for(@out) {
+                eval $strip;
+            }
+        }
+
+        $res = compare($testnum, $testname, "protocol", \@out, \@protstrip);
+        if($res) {
+            return 1;
+        }
+
+        $ok .= "p";
+
+    }
+    else {
+        $ok .= "-"; # protocol not checked
+    }
+
+    if(!$replyattr{'nocheck'} && (@reply || $replyattr{'sendzero'})) {
+        # verify the received data
+        my @out = loadarray($CURLOUT);
+        $res = compare($testnum, $testname, "data", \@out, \@reply);
+        if ($res) {
+            return 1;
+        }
+        $ok .= "d";
+    }
+    else {
+        $ok .= "-"; # data not checked
+    }
+
+    if(@upload) {
+        # verify uploaded data
+        my @out = loadarray("$LOGDIR/upload.$testnum");
+        $res = compare($testnum, $testname, "upload", \@out, \@upload);
+        if ($res) {
+            return 1;
+        }
+        $ok .= "u";
+    }
+    else {
+        $ok .= "-"; # upload not checked
+    }
+
+    if(@proxyprot) {
+        # Verify the sent proxy request
+        my @out = loadarray($PROXYIN);
+
+        # what to cut off from the live protocol sent by curl, we use the
+        # same rules as for <protocol>
+        my @strip = getpart("verify", "strip");
+
+        my @protstrip=@proxyprot;
+
+        # check if there's any attributes on the verify/protocol section
+        my %hash = getpartattr("verify", "proxy");
+
+        if($hash{'nonewline'}) {
+            # Yes, we must cut off the final newline from the final line
+            # of the protocol data
+            chomp($protstrip[$#protstrip]);
+        }
+
+        for(@strip) {
+            # strip off all lines that match the patterns from both arrays
+            chomp $_;
+            @out = striparray( $_, \@out);
+            @protstrip= striparray( $_, \@protstrip);
+        }
+
+        # what parts to cut off from the protocol
+        my @strippart = getpart("verify", "strippart");
+        my $strip;
+        for $strip (@strippart) {
+            chomp $strip;
+            for(@out) {
+                eval $strip;
+            }
+        }
+
+        $res = compare($testnum, $testname, "proxy", \@out, \@protstrip);
+        if($res) {
+            return 1;
+        }
+
+        $ok .= "P";
+
+    }
+    else {
+        $ok .= "-"; # protocol not checked
+    }
+
+    my $outputok;
+    for my $partsuffix (('', '1', '2', '3', '4')) {
+        my @outfile=getpart("verify", "file".$partsuffix);
+        if(@outfile || partexists("verify", "file".$partsuffix) ) {
+            # we're supposed to verify a dynamically generated file!
+            my %hash = getpartattr("verify", "file".$partsuffix);
+
+            my $filename=$hash{'name'};
+            if(!$filename) {
+                logmsg "ERROR: section verify=>file$partsuffix ".
+                       "has no name attribute\n";
+                stopservers($verbose);
+                # timestamp test result verification end
+                $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+                return -1;
+            }
+            my @generated=loadarray($filename);
+
+            # what parts to cut off from the file
+            my @stripfile = getpart("verify", "stripfile".$partsuffix);
+
+            my $filemode=$hash{'mode'};
+            if($filemode && ($filemode eq "text") && $has_textaware) {
+                # text mode when running on windows: fix line endings
+                map s/\r\n/\n/g, @outfile;
+                map s/\n/\r\n/g, @outfile;
+            }
+
+            my $strip;
+            for $strip (@stripfile) {
+                chomp $strip;
+                my @newgen;
+                for(@generated) {
+                    eval $strip;
+                    if($_) {
+                        push @newgen, $_;
+                    }
+                }
+                # this is to get rid of array entries that vanished (zero
+                # length) because of replacements
+                @generated = @newgen;
+            }
+
+            @outfile = fixarray(@outfile);
+
+            $res = compare($testnum, $testname, "output ($filename)",
+                           \@generated, \@outfile);
+            if($res) {
+                return 1;
+            }
+
+            $outputok = 1; # output checked
+        }
+    }
+    $ok .= ($outputok) ? "o" : "-"; # output checked or not
+
+    # accept multiple comma-separated error codes
+    my @splerr = split(/ *, */, $errorcode);
+    my $errok;
+    foreach my $e (@splerr) {
+        if($e == $cmdres) {
+            # a fine error code
+            $errok = 1;
+            last;
+        }
+    }
+
+    if($errok) {
+        $ok .= "e";
+    }
+    else {
+        if(!$short) {
+            logmsg sprintf("\n%s returned $cmdres, when expecting %s\n",
+                           (!$tool)?"curl":$tool, $errorcode);
+        }
+        logmsg " exit FAILED\n";
+        # timestamp test result verification end
+        $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+        return 1;
+    }
+
+    if($has_memory_tracking) {
+        if(! -f $memdump) {
+            logmsg "\n** ALERT! memory tracking with no output file?\n"
+                if(!$cmdtype eq "perl");
+        }
+        else {
+            my @memdata=`$memanalyze $memdump`;
+            my $leak=0;
+            for(@memdata) {
+                if($_ ne "") {
+                    # well it could be other memory problems as well, but
+                    # we call it leak for short here
+                    $leak=1;
+                }
+            }
+            if($leak) {
+                logmsg "\n** MEMORY FAILURE\n";
+                logmsg @memdata;
+                # timestamp test result verification end
+                $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+                return 1;
+            }
+            else {
+                $ok .= "m";
+            }
+        }
+    }
+    else {
+        $ok .= "-"; # memory not checked
+    }
+
+    if($valgrind) {
+        if($usevalgrind) {
+            unless(opendir(DIR, "$LOGDIR")) {
+                logmsg "ERROR: unable to read $LOGDIR\n";
+                # timestamp test result verification end
+                $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+                return 1;
+            }
+            my @files = readdir(DIR);
+            closedir(DIR);
+            my $vgfile;
+            foreach my $file (@files) {
+                if($file =~ /^valgrind$testnum(\..*|)$/) {
+                    $vgfile = $file;
+                    last;
+                }
+            }
+            if(!$vgfile) {
+                logmsg "ERROR: valgrind log file missing for test $testnum\n";
+                # timestamp test result verification end
+                $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+                return 1;
+            }
+            my @e = valgrindparse("$LOGDIR/$vgfile");
+            if(@e && $e[0]) {
+                if($automakestyle) {
+                    logmsg "FAIL: $testnum - $testname - valgrind\n";
+                }
+                else {
+                    logmsg " valgrind ERROR ";
+                    logmsg @e;
+                }
+                # timestamp test result verification end
+                $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+                return 1;
+            }
+            $ok .= "v";
+        }
+        else {
+            if(!$short && !$disablevalgrind) {
+                logmsg " valgrind SKIPPED\n";
+            }
+            $ok .= "-"; # skipped
+        }
+    }
+    else {
+        $ok .= "-"; # valgrind not checked
+    }
+    # add 'E' for event-based
+    $ok .= $evbased ? "E" : "-";
+
+    logmsg "$ok " if(!$short);
+
+    my $sofar= time()-$start;
+    my $esttotal = $sofar/$count * $total;
+    my $estleft = $esttotal - $sofar;
+    my $left=sprintf("remaining: %02d:%02d",
+                     $estleft/60,
+                     $estleft%60);
+
+    if(!$automakestyle) {
+        logmsg sprintf("OK (%-3d out of %-3d, %s)\n", $count, $total, $left);
+    }
+    else {
+        logmsg "PASS: $testnum - $testname\n";
+    }
+
+    # the test succeeded, remove all log files
+    if(!$keepoutfiles) {
+        cleardir($LOGDIR);
+    }
+
+    # timestamp test result verification end
+    $timevrfyend{$testnum} = Time::HiRes::time() if($timestats);
+
+    return 0;
+}
+
+#######################################################################
+# Stop all running test servers
+#
+sub stopservers {
+    my $verbose = $_[0];
+    #
+    # kill sockfilter processes for all pingpong servers
+    #
+    killallsockfilters($verbose);
+    #
+    # kill all server pids from %run hash clearing them
+    #
+    my $pidlist;
+    foreach my $server (keys %run) {
+        if($run{$server}) {
+            if($verbose) {
+                my $prev = 0;
+                my $pids = $run{$server};
+                foreach my $pid (split(' ', $pids)) {
+                    if($pid != $prev) {
+                        logmsg sprintf("* kill pid for %s => %d\n",
+                            $server, $pid);
+                        $prev = $pid;
+                    }
+                }
+            }
+            $pidlist .= "$run{$server} ";
+            $run{$server} = 0;
+        }
+        $runcert{$server} = 0 if($runcert{$server});
+    }
+    killpid($verbose, $pidlist);
+    #
+    # cleanup all server pid files
+    #
+    foreach my $server (keys %serverpidfile) {
+        my $pidfile = $serverpidfile{$server};
+        my $pid = processexists($pidfile);
+        if($pid > 0) {
+            logmsg "Warning: $server server unexpectedly alive\n";
+            killpid($verbose, $pid);
+        }
+        unlink($pidfile) if(-f $pidfile);
+    }
+}
+
+#######################################################################
+# startservers() starts all the named servers
+#
+# Returns: string with error reason or blank for success
+#
+sub startservers {
+    my @what = @_;
+    my ($pid, $pid2);
+    for(@what) {
+        my (@whatlist) = split(/\s+/,$_);
+        my $what = lc($whatlist[0]);
+        $what =~ s/[^a-z0-9\/-]//g;
+
+        my $certfile;
+        if($what =~ /^(ftp|http|imap|pop3|smtp)s((\d*)(-ipv6|-unix|))$/) {
+            $certfile = ($whatlist[1]) ? $whatlist[1] : 'stunnel.pem';
+        }
+
+        if(($what eq "pop3") ||
+           ($what eq "ftp") ||
+           ($what eq "imap") ||
+           ($what eq "smtp")) {
+            if($torture && $run{$what} &&
+               !responsive_pingpong_server($what, "", $verbose)) {
+                stopserver($what);
+            }
+            if(!$run{$what}) {
+                ($pid, $pid2) = runpingpongserver($what, "", $verbose);
+                if($pid <= 0) {
+                    return "failed starting ". uc($what) ." server";
+                }
+                printf ("* pid $what => %d %d\n", $pid, $pid2) if($verbose);
+                $run{$what}="$pid $pid2";
+            }
+        }
+        elsif($what eq "ftp2") {
+            if($torture && $run{'ftp2'} &&
+               !responsive_pingpong_server("ftp", "2", $verbose)) {
+                stopserver('ftp2');
+            }
+            if(!$run{'ftp2'}) {
+                ($pid, $pid2) = runpingpongserver("ftp", "2", $verbose);
+                if($pid <= 0) {
+                    return "failed starting FTP2 server";
+                }
+                printf ("* pid ftp2 => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'ftp2'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "ftp-ipv6") {
+            if($torture && $run{'ftp-ipv6'} &&
+               !responsive_pingpong_server("ftp", "", $verbose, "ipv6")) {
+                stopserver('ftp-ipv6');
+            }
+            if(!$run{'ftp-ipv6'}) {
+                ($pid, $pid2) = runpingpongserver("ftp", "", $verbose, "ipv6");
+                if($pid <= 0) {
+                    return "failed starting FTP-IPv6 server";
+                }
+                logmsg sprintf("* pid ftp-ipv6 => %d %d\n", $pid,
+                       $pid2) if($verbose);
+                $run{'ftp-ipv6'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "gopher") {
+            if($torture && $run{'gopher'} &&
+               !responsive_http_server("gopher", $verbose, 0, $GOPHERPORT)) {
+                stopserver('gopher');
+            }
+            if(!$run{'gopher'}) {
+                ($pid, $pid2) = runhttpserver("gopher", $verbose, 0,
+                                              $GOPHERPORT);
+                if($pid <= 0) {
+                    return "failed starting GOPHER server";
+                }
+                logmsg sprintf ("* pid gopher => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'gopher'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "gopher-ipv6") {
+            if($torture && $run{'gopher-ipv6'} &&
+               !responsive_http_server("gopher", $verbose, "ipv6",
+                                       $GOPHER6PORT)) {
+                stopserver('gopher-ipv6');
+            }
+            if(!$run{'gopher-ipv6'}) {
+                ($pid, $pid2) = runhttpserver("gopher", $verbose, "ipv6",
+                                              $GOPHER6PORT);
+                if($pid <= 0) {
+                    return "failed starting GOPHER-IPv6 server";
+                }
+                logmsg sprintf("* pid gopher-ipv6 => %d %d\n", $pid,
+                               $pid2) if($verbose);
+                $run{'gopher-ipv6'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "http/2") {
+            if(!$run{'http/2'}) {
+                ($pid, $pid2) = runhttp2server($verbose, $HTTP2PORT);
+                if($pid <= 0) {
+                    return "failed starting HTTP/2 server";
+                }
+                logmsg sprintf ("* pid http/2 => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'http/2'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "http") {
+            if($torture && $run{'http'} &&
+               !responsive_http_server("http", $verbose, 0, $HTTPPORT)) {
+                stopserver('http');
+            }
+            if(!$run{'http'}) {
+                ($pid, $pid2) = runhttpserver("http", $verbose, 0,
+                                              $HTTPPORT);
+                if($pid <= 0) {
+                    return "failed starting HTTP server";
+                }
+                logmsg sprintf ("* pid http => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'http'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "http-proxy") {
+            if($torture && $run{'http-proxy'} &&
+               !responsive_http_server("http", $verbose, "proxy",
+                                       $HTTPPROXYPORT)) {
+                stopserver('http-proxy');
+            }
+            if(!$run{'http-proxy'}) {
+                ($pid, $pid2) = runhttpserver("http", $verbose, "proxy",
+                                              $HTTPPROXYPORT);
+                if($pid <= 0) {
+                    return "failed starting HTTP-proxy server";
+                }
+                logmsg sprintf ("* pid http-proxy => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'http-proxy'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "http-ipv6") {
+            if($torture && $run{'http-ipv6'} &&
+               !responsive_http_server("http", $verbose, "ipv6", $HTTP6PORT)) {
+                stopserver('http-ipv6');
+            }
+            if(!$run{'http-ipv6'}) {
+                ($pid, $pid2) = runhttpserver("http", $verbose, "ipv6",
+                                              $HTTP6PORT);
+                if($pid <= 0) {
+                    return "failed starting HTTP-IPv6 server";
+                }
+                logmsg sprintf("* pid http-ipv6 => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'http-ipv6'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "http-pipe") {
+            if($torture && $run{'http-pipe'} &&
+               !responsive_http_server("http", $verbose, "pipe",
+                                       $HTTPPIPEPORT)) {
+                stopserver('http-pipe');
+            }
+            if(!$run{'http-pipe'}) {
+                ($pid, $pid2) = runhttpserver("http", $verbose, "pipe",
+                                              $HTTPPIPEPORT);
+                if($pid <= 0) {
+                    return "failed starting HTTP-pipe server";
+                }
+                logmsg sprintf ("* pid http-pipe => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'http-pipe'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "rtsp") {
+            if($torture && $run{'rtsp'} &&
+               !responsive_rtsp_server($verbose)) {
+                stopserver('rtsp');
+            }
+            if(!$run{'rtsp'}) {
+                ($pid, $pid2) = runrtspserver($verbose);
+                if($pid <= 0) {
+                    return "failed starting RTSP server";
+                }
+                printf ("* pid rtsp => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'rtsp'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "rtsp-ipv6") {
+            if($torture && $run{'rtsp-ipv6'} &&
+               !responsive_rtsp_server($verbose, "ipv6")) {
+                stopserver('rtsp-ipv6');
+            }
+            if(!$run{'rtsp-ipv6'}) {
+                ($pid, $pid2) = runrtspserver($verbose, "ipv6");
+                if($pid <= 0) {
+                    return "failed starting RTSP-IPv6 server";
+                }
+                logmsg sprintf("* pid rtsp-ipv6 => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'rtsp-ipv6'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "ftps") {
+            if(!$stunnel) {
+                # we can't run ftps tests without stunnel
+                return "no stunnel";
+            }
+            if(!$has_ssl) {
+                # we can't run ftps tests if libcurl is SSL-less
+                return "curl lacks SSL support";
+            }
+            if($runcert{'ftps'} && ($runcert{'ftps'} ne $certfile)) {
+                # stop server when running and using a different cert
+                stopserver('ftps');
+            }
+            if($torture && $run{'ftp'} &&
+               !responsive_pingpong_server("ftp", "", $verbose)) {
+                stopserver('ftp');
+            }
+            if(!$run{'ftp'}) {
+                ($pid, $pid2) = runpingpongserver("ftp", "", $verbose);
+                if($pid <= 0) {
+                    return "failed starting FTP server";
+                }
+                printf ("* pid ftp => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'ftp'}="$pid $pid2";
+            }
+            if(!$run{'ftps'}) {
+                ($pid, $pid2) = runftpsserver($verbose, "", $certfile);
+                if($pid <= 0) {
+                    return "failed starting FTPS server (stunnel)";
+                }
+                logmsg sprintf("* pid ftps => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'ftps'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "file") {
+            # we support it but have no server!
+        }
+        elsif($what eq "https") {
+            if(!$stunnel) {
+                # we can't run https tests without stunnel
+                return "no stunnel";
+            }
+            if(!$has_ssl) {
+                # we can't run https tests if libcurl is SSL-less
+                return "curl lacks SSL support";
+            }
+            if($runcert{'https'} && ($runcert{'https'} ne $certfile)) {
+                # stop server when running and using a different cert
+                stopserver('https');
+            }
+            if($torture && $run{'http'} &&
+               !responsive_http_server("http", $verbose, 0, $HTTPPORT)) {
+                stopserver('http');
+            }
+            if(!$run{'http'}) {
+                ($pid, $pid2) = runhttpserver("http", $verbose, 0,
+                                              $HTTPPORT);
+                if($pid <= 0) {
+                    return "failed starting HTTP server";
+                }
+                printf ("* pid http => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'http'}="$pid $pid2";
+            }
+            if(!$run{'https'}) {
+                ($pid, $pid2) = runhttpsserver($verbose, "", $certfile);
+                if($pid <= 0) {
+                    return "failed starting HTTPS server (stunnel)";
+                }
+                logmsg sprintf("* pid https => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'https'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "httptls") {
+            if(!$httptlssrv) {
+                # for now, we can't run http TLS-EXT tests without gnutls-serv
+                return "no gnutls-serv";
+            }
+            if($torture && $run{'httptls'} &&
+               !responsive_httptls_server($verbose, "IPv4")) {
+                stopserver('httptls');
+            }
+            if(!$run{'httptls'}) {
+                ($pid, $pid2) = runhttptlsserver($verbose, "IPv4");
+                if($pid <= 0) {
+                    return "failed starting HTTPTLS server (gnutls-serv)";
+                }
+                logmsg sprintf("* pid httptls => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'httptls'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "httptls-ipv6") {
+            if(!$httptlssrv) {
+                # for now, we can't run http TLS-EXT tests without gnutls-serv
+                return "no gnutls-serv";
+            }
+            if($torture && $run{'httptls-ipv6'} &&
+               !responsive_httptls_server($verbose, "ipv6")) {
+                stopserver('httptls-ipv6');
+            }
+            if(!$run{'httptls-ipv6'}) {
+                ($pid, $pid2) = runhttptlsserver($verbose, "ipv6");
+                if($pid <= 0) {
+                    return "failed starting HTTPTLS-IPv6 server (gnutls-serv)";
+                }
+                logmsg sprintf("* pid httptls-ipv6 => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'httptls-ipv6'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "tftp") {
+            if($torture && $run{'tftp'} &&
+               !responsive_tftp_server("", $verbose)) {
+                stopserver('tftp');
+            }
+            if(!$run{'tftp'}) {
+                ($pid, $pid2) = runtftpserver("", $verbose);
+                if($pid <= 0) {
+                    return "failed starting TFTP server";
+                }
+                printf ("* pid tftp => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'tftp'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "tftp-ipv6") {
+            if($torture && $run{'tftp-ipv6'} &&
+               !responsive_tftp_server("", $verbose, "ipv6")) {
+                stopserver('tftp-ipv6');
+            }
+            if(!$run{'tftp-ipv6'}) {
+                ($pid, $pid2) = runtftpserver("", $verbose, "ipv6");
+                if($pid <= 0) {
+                    return "failed starting TFTP-IPv6 server";
+                }
+                printf("* pid tftp-ipv6 => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'tftp-ipv6'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "sftp" || $what eq "scp" || $what eq "socks4" || $what eq "socks5" ) {
+            if(!$run{'ssh'}) {
+                ($pid, $pid2) = runsshserver("", $verbose);
+                if($pid <= 0) {
+                    return "failed starting SSH server";
+                }
+                printf ("* pid ssh => %d %d\n", $pid, $pid2) if($verbose);
+                $run{'ssh'}="$pid $pid2";
+            }
+            if($what eq "socks4" || $what eq "socks5") {
+                if(!$run{'socks'}) {
+                    ($pid, $pid2) = runsocksserver("", $verbose);
+                    if($pid <= 0) {
+                        return "failed starting socks server";
+                    }
+                    printf ("* pid socks => %d %d\n", $pid, $pid2) if($verbose);
+                    $run{'socks'}="$pid $pid2";
+                }
+            }
+            if($what eq "socks5") {
+                if(!$sshdid) {
+                    # Not an OpenSSH or SunSSH ssh daemon
+                    logmsg "Not OpenSSH or SunSSH; socks5 tests need at least OpenSSH 3.7\n";
+                    return "failed starting socks5 server";
+                }
+                elsif(($sshdid =~ /OpenSSH/) && ($sshdvernum < 370)) {
+                    # Need OpenSSH 3.7 for socks5 - http://www.openssh.com/txt/release-3.7
+                    logmsg "$sshdverstr insufficient; socks5 tests need at least OpenSSH 3.7\n";
+                    return "failed starting socks5 server";
+                }
+                elsif(($sshdid =~ /SunSSH/)  && ($sshdvernum < 100)) {
+                    # Need SunSSH 1.0 for socks5
+                    logmsg "$sshdverstr insufficient; socks5 tests need at least SunSSH 1.0\n";
+                    return "failed starting socks5 server";
+                }
+            }
+        }
+        elsif($what eq "http-unix") {
+            if($torture && $run{'http-unix'} &&
+               !responsive_http_server("http", $verbose, "unix", $HTTPUNIXPATH)) {
+                stopserver('http-unix');
+            }
+            if(!$run{'http-unix'}) {
+                ($pid, $pid2) = runhttpserver("http", $verbose, "unix",
+                                              $HTTPUNIXPATH);
+                if($pid <= 0) {
+                    return "failed starting HTTP-unix server";
+                }
+                logmsg sprintf("* pid http-unix => %d %d\n", $pid, $pid2)
+                    if($verbose);
+                $run{'http-unix'}="$pid $pid2";
+            }
+        }
+        elsif($what eq "none") {
+            logmsg "* starts no server\n" if ($verbose);
+        }
+        else {
+            warn "we don't support a server for $what";
+            return "no server for $what";
+        }
+    }
+    return 0;
+}
+
+##############################################################################
+# This function makes sure the right set of server is running for the
+# specified test case. This is a useful design when we run single tests as not
+# all servers need to run then!
+#
+# Returns: a string, blank if everything is fine or a reason why it failed
+#
+sub serverfortest {
+    my ($testnum)=@_;
+
+    my @what = getpart("client", "server");
+
+    if(!$what[0]) {
+        warn "Test case $testnum has no server(s) specified";
+        return "no server specified";
+    }
+
+    for(my $i = scalar(@what) - 1; $i >= 0; $i--) {
+        my $srvrline = $what[$i];
+        chomp $srvrline if($srvrline);
+        if($srvrline =~ /^(\S+)((\s*)(.*))/) {
+            my $server = "${1}";
+            my $lnrest = "${2}";
+            my $tlsext;
+            if($server =~ /^(httptls)(\+)(ext|srp)(\d*)(-ipv6|)$/) {
+                $server = "${1}${4}${5}";
+                $tlsext = uc("TLS-${3}");
+            }
+            if(! grep /^\Q$server\E$/, @protocols) {
+                if(substr($server,0,5) ne "socks") {
+                    if($tlsext) {
+                        return "curl lacks $tlsext support";
+                    }
+                    else {
+                        return "curl lacks $server server support";
+                    }
+                }
+            }
+            $what[$i] = "$server$lnrest" if($tlsext);
+        }
+    }
+
+    return &startservers(@what);
+}
+
+#######################################################################
+# runtimestats displays test-suite run time statistics
+#
+sub runtimestats {
+    my $lasttest = $_[0];
+
+    return if(not $timestats);
+
+    logmsg "\nTest suite total running time breakdown per task...\n\n";
+
+    my @timesrvr;
+    my @timeprep;
+    my @timetool;
+    my @timelock;
+    my @timevrfy;
+    my @timetest;
+    my $timesrvrtot = 0.0;
+    my $timepreptot = 0.0;
+    my $timetooltot = 0.0;
+    my $timelocktot = 0.0;
+    my $timevrfytot = 0.0;
+    my $timetesttot = 0.0;
+    my $counter;
+
+    for my $testnum (1 .. $lasttest) {
+        if($timesrvrini{$testnum}) {
+            $timesrvrtot += $timesrvrend{$testnum} - $timesrvrini{$testnum};
+            $timepreptot +=
+                (($timetoolini{$testnum} - $timeprepini{$testnum}) -
+                 ($timesrvrend{$testnum} - $timesrvrini{$testnum}));
+            $timetooltot += $timetoolend{$testnum} - $timetoolini{$testnum};
+            $timelocktot += $timesrvrlog{$testnum} - $timetoolend{$testnum};
+            $timevrfytot += $timevrfyend{$testnum} - $timesrvrlog{$testnum};
+            $timetesttot += $timevrfyend{$testnum} - $timeprepini{$testnum};
+            push @timesrvr, sprintf("%06.3f  %04d",
+                $timesrvrend{$testnum} - $timesrvrini{$testnum}, $testnum);
+            push @timeprep, sprintf("%06.3f  %04d",
+                ($timetoolini{$testnum} - $timeprepini{$testnum}) -
+                ($timesrvrend{$testnum} - $timesrvrini{$testnum}), $testnum);
+            push @timetool, sprintf("%06.3f  %04d",
+                $timetoolend{$testnum} - $timetoolini{$testnum}, $testnum);
+            push @timelock, sprintf("%06.3f  %04d",
+                $timesrvrlog{$testnum} - $timetoolend{$testnum}, $testnum);
+            push @timevrfy, sprintf("%06.3f  %04d",
+                $timevrfyend{$testnum} - $timesrvrlog{$testnum}, $testnum);
+            push @timetest, sprintf("%06.3f  %04d",
+                $timevrfyend{$testnum} - $timeprepini{$testnum}, $testnum);
+        }
+    }
+
+    {
+        no warnings 'numeric';
+        @timesrvr = sort { $b <=> $a } @timesrvr;
+        @timeprep = sort { $b <=> $a } @timeprep;
+        @timetool = sort { $b <=> $a } @timetool;
+        @timelock = sort { $b <=> $a } @timelock;
+        @timevrfy = sort { $b <=> $a } @timevrfy;
+        @timetest = sort { $b <=> $a } @timetest;
+    }
+
+    logmsg "Spent ". sprintf("%08.3f ", $timesrvrtot) .
+           "seconds starting and verifying test harness servers.\n";
+    logmsg "Spent ". sprintf("%08.3f ", $timepreptot) .
+           "seconds reading definitions and doing test preparations.\n";
+    logmsg "Spent ". sprintf("%08.3f ", $timetooltot) .
+           "seconds actually running test tools.\n";
+    logmsg "Spent ". sprintf("%08.3f ", $timelocktot) .
+           "seconds awaiting server logs lock removal.\n";
+    logmsg "Spent ". sprintf("%08.3f ", $timevrfytot) .
+           "seconds verifying test results.\n";
+    logmsg "Spent ". sprintf("%08.3f ", $timetesttot) .
+           "seconds doing all of the above.\n";
+
+    $counter = 25;
+    logmsg "\nTest server starting and verification time per test ".
+        sprintf("(%s)...\n\n", (not $fullstats)?"top $counter":"full");
+    logmsg "-time-  test\n";
+    logmsg "------  ----\n";
+    foreach my $txt (@timesrvr) {
+        last if((not $fullstats) && (not $counter--));
+        logmsg "$txt\n";
+    }
+
+    $counter = 10;
+    logmsg "\nTest definition reading and preparation time per test ".
+        sprintf("(%s)...\n\n", (not $fullstats)?"top $counter":"full");
+    logmsg "-time-  test\n";
+    logmsg "------  ----\n";
+    foreach my $txt (@timeprep) {
+        last if((not $fullstats) && (not $counter--));
+        logmsg "$txt\n";
+    }
+
+    $counter = 25;
+    logmsg "\nTest tool execution time per test ".
+        sprintf("(%s)...\n\n", (not $fullstats)?"top $counter":"full");
+    logmsg "-time-  test\n";
+    logmsg "------  ----\n";
+    foreach my $txt (@timetool) {
+        last if((not $fullstats) && (not $counter--));
+        logmsg "$txt\n";
+    }
+
+    $counter = 15;
+    logmsg "\nTest server logs lock removal time per test ".
+        sprintf("(%s)...\n\n", (not $fullstats)?"top $counter":"full");
+    logmsg "-time-  test\n";
+    logmsg "------  ----\n";
+    foreach my $txt (@timelock) {
+        last if((not $fullstats) && (not $counter--));
+        logmsg "$txt\n";
+    }
+
+    $counter = 10;
+    logmsg "\nTest results verification time per test ".
+        sprintf("(%s)...\n\n", (not $fullstats)?"top $counter":"full");
+    logmsg "-time-  test\n";
+    logmsg "------  ----\n";
+    foreach my $txt (@timevrfy) {
+        last if((not $fullstats) && (not $counter--));
+        logmsg "$txt\n";
+    }
+
+    $counter = 50;
+    logmsg "\nTotal time per test ".
+        sprintf("(%s)...\n\n", (not $fullstats)?"top $counter":"full");
+    logmsg "-time-  test\n";
+    logmsg "------  ----\n";
+    foreach my $txt (@timetest) {
+        last if((not $fullstats) && (not $counter--));
+        logmsg "$txt\n";
+    }
+
+    logmsg "\n";
+}
+
+#######################################################################
+# Check options to this test program
+#
+
+my $number=0;
+my $fromnum=-1;
+my @testthis;
+while(@ARGV) {
+    if ($ARGV[0] eq "-v") {
+        # verbose output
+        $verbose=1;
+    }
+    elsif($ARGV[0] =~ /^-b(.*)/) {
+        my $portno=$1;
+        if($portno =~ s/(\d+)$//) {
+            $base = int $1;
+        }
+    }
+    elsif ($ARGV[0] eq "-c") {
+        # use this path to curl instead of default
+        $DBGCURL=$CURL="\"$ARGV[1]\"";
+        shift @ARGV;
+    }
+    elsif ($ARGV[0] eq "-vc") {
+        # use this path to a curl used to verify servers
+
+        # Particularly useful when you introduce a crashing bug somewhere in
+        # the development version as then it won't be able to run any tests
+        # since it can't verify the servers!
+
+        $VCURL="\"$ARGV[1]\"";
+        shift @ARGV;
+    }
+    elsif ($ARGV[0] eq "-d") {
+        # have the servers display protocol output
+        $debugprotocol=1;
+    }
+    elsif($ARGV[0] eq "-e") {
+        # run the tests cases event based if possible
+        $run_event_based=1;
+    }
+    elsif ($ARGV[0] eq "-g") {
+        # run this test with gdb
+        $gdbthis=1;
+    }
+    elsif ($ARGV[0] eq "-gw") {
+        # run this test with windowed gdb
+        $gdbthis=1;
+        $gdbxwin=1;
+    }
+    elsif($ARGV[0] eq "-s") {
+        # short output
+        $short=1;
+    }
+    elsif($ARGV[0] eq "-am") {
+        # automake-style output
+        $short=1;
+        $automakestyle=1;
+    }
+    elsif($ARGV[0] eq "-n") {
+        # no valgrind
+        undef $valgrind;
+    }
+    elsif ($ARGV[0] eq "-R") {
+        # execute in scrambled order
+        $scrambleorder=1;
+    }
+    elsif($ARGV[0] =~ /^-t(.*)/) {
+        # torture
+        $torture=1;
+        my $xtra = $1;
+
+        if($xtra =~ s/(\d+)$//) {
+            $tortalloc = $1;
+        }
+        # we undef valgrind to make this fly in comparison
+        undef $valgrind;
+    }
+    elsif($ARGV[0] eq "-a") {
+        # continue anyway, even if a test fail
+        $anyway=1;
+    }
+    elsif($ARGV[0] eq "-p") {
+        $postmortem=1;
+    }
+    elsif($ARGV[0] eq "-l") {
+        # lists the test case names only
+        $listonly=1;
+    }
+    elsif($ARGV[0] eq "-k") {
+        # keep stdout and stderr files after tests
+        $keepoutfiles=1;
+    }
+    elsif($ARGV[0] eq "-r") {
+        # run time statistics needs Time::HiRes
+        if($Time::HiRes::VERSION) {
+            keys(%timeprepini) = 1000;
+            keys(%timesrvrini) = 1000;
+            keys(%timesrvrend) = 1000;
+            keys(%timetoolini) = 1000;
+            keys(%timetoolend) = 1000;
+            keys(%timesrvrlog) = 1000;
+            keys(%timevrfyend) = 1000;
+            $timestats=1;
+            $fullstats=0;
+        }
+    }
+    elsif($ARGV[0] eq "-rf") {
+        # run time statistics needs Time::HiRes
+        if($Time::HiRes::VERSION) {
+            keys(%timeprepini) = 1000;
+            keys(%timesrvrini) = 1000;
+            keys(%timesrvrend) = 1000;
+            keys(%timetoolini) = 1000;
+            keys(%timetoolend) = 1000;
+            keys(%timesrvrlog) = 1000;
+            keys(%timevrfyend) = 1000;
+            $timestats=1;
+            $fullstats=1;
+        }
+    }
+    elsif(($ARGV[0] eq "-h") || ($ARGV[0] eq "--help")) {
+        # show help text
+        print <<EOHELP
+Usage: runtests.pl [options] [test selection(s)]
+  -a       continue even if a test fails
+  -bN      use base port number N for test servers (default $base)
+  -c path  use this curl executable
+  -d       display server debug info
+  -e       event-based execution
+  -g       run the test case with gdb
+  -gw      run the test case with gdb as a windowed application
+  -h       this help text
+  -k       keep stdout and stderr files present after tests
+  -l       list all test case names/descriptions
+  -n       no valgrind
+  -p       print log file contents when a test fails
+  -R       scrambled order
+  -r       run time statistics
+  -rf      full run time statistics
+  -s       short output
+  -am      automake style output PASS/FAIL: [number] [name]
+  -t[N]    torture (simulate memory alloc failures); N means fail Nth alloc
+  -v       verbose output
+  -vc path use this curl only to verify the existing servers
+  [num]    like "5 6 9" or " 5 to 22 " to run those tests only
+  [!num]   like "!5 !6 !9" to disable those tests
+  [keyword] like "IPv6" to select only tests containing the key word
+  [!keyword] like "!cookies" to disable any tests containing the key word
+EOHELP
+    ;
+        exit;
+    }
+    elsif($ARGV[0] =~ /^(\d+)/) {
+        $number = $1;
+        if($fromnum >= 0) {
+            for($fromnum .. $number) {
+                push @testthis, $_;
+            }
+            $fromnum = -1;
+        }
+        else {
+            push @testthis, $1;
+        }
+    }
+    elsif($ARGV[0] =~ /^to$/i) {
+        $fromnum = $number+1;
+    }
+    elsif($ARGV[0] =~ /^!(\d+)/) {
+        $fromnum = -1;
+        $disabled{$1}=$1;
+    }
+    elsif($ARGV[0] =~ /^!(.+)/) {
+        $disabled_keywords{$1}=$1;
+    }
+    elsif($ARGV[0] =~ /^([-[{a-zA-Z].*)/) {
+        $enabled_keywords{$1}=$1;
+    }
+    else {
+        print "Unknown option: $ARGV[0]\n";
+        exit;
+    }
+    shift @ARGV;
+}
+
+if(@testthis && ($testthis[0] ne "")) {
+    $TESTCASES=join(" ", @testthis);
+}
+
+if($valgrind) {
+    # we have found valgrind on the host, use it
+
+    # verify that we can invoke it fine
+    my $code = runclient("valgrind >/dev/null 2>&1");
+
+    if(($code>>8) != 1) {
+        #logmsg "Valgrind failure, disable it\n";
+        undef $valgrind;
+    } else {
+
+        # since valgrind 2.1.x, '--tool' option is mandatory
+        # use it, if it is supported by the version installed on the system
+        runclient("valgrind --help 2>&1 | grep -- --tool > /dev/null 2>&1");
+        if (($? >> 8)==0) {
+            $valgrind_tool="--tool=memcheck";
+        }
+        open(C, "<$CURL");
+        my $l = <C>;
+        if($l =~ /^\#\!/) {
+            # A shell script. This is typically when built with libtool,
+            $valgrind="../libtool --mode=execute $valgrind";
+        }
+        close(C);
+
+        # valgrind 3 renamed the --logfile option to --log-file!!!
+        my $ver=join(' ', runclientoutput("valgrind --version"));
+        # cut off all but digits and dots
+        $ver =~ s/[^0-9.]//g;
+
+        if($ver =~ /^(\d+)/) {
+            $ver = $1;
+            if($ver >= 3) {
+                $valgrind_logfile="--log-file";
+            }
+        }
+    }
+}
+
+if ($gdbthis) {
+    # open the executable curl and read the first 4 bytes of it
+    open(CHECK, "<$CURL");
+    my $c;
+    sysread CHECK, $c, 4;
+    close(CHECK);
+    if($c eq "#! /") {
+        # A shell script. This is typically when built with libtool,
+        $libtool = 1;
+        $gdb = "../libtool --mode=execute gdb";
+    }
+}
+
+$HTTPPORT        = $base++; # HTTP server port
+$HTTPSPORT       = $base++; # HTTPS (stunnel) server port
+$FTPPORT         = $base++; # FTP server port
+$FTPSPORT        = $base++; # FTPS (stunnel) server port
+$HTTP6PORT       = $base++; # HTTP IPv6 server port
+$FTP2PORT        = $base++; # FTP server 2 port
+$FTP6PORT        = $base++; # FTP IPv6 port
+$TFTPPORT        = $base++; # TFTP (UDP) port
+$TFTP6PORT       = $base++; # TFTP IPv6 (UDP) port
+$SSHPORT         = $base++; # SSH (SCP/SFTP) port
+$SOCKSPORT       = $base++; # SOCKS port
+$POP3PORT        = $base++; # POP3 server port
+$POP36PORT       = $base++; # POP3 IPv6 server port
+$IMAPPORT        = $base++; # IMAP server port
+$IMAP6PORT       = $base++; # IMAP IPv6 server port
+$SMTPPORT        = $base++; # SMTP server port
+$SMTP6PORT       = $base++; # SMTP IPv6 server port
+$RTSPPORT        = $base++; # RTSP server port
+$RTSP6PORT       = $base++; # RTSP IPv6 server port
+$GOPHERPORT      = $base++; # Gopher IPv4 server port
+$GOPHER6PORT     = $base++; # Gopher IPv6 server port
+$HTTPTLSPORT     = $base++; # HTTP TLS (non-stunnel) server port
+$HTTPTLS6PORT    = $base++; # HTTP TLS (non-stunnel) IPv6 server port
+$HTTPPROXYPORT   = $base++; # HTTP proxy port, when using CONNECT
+$HTTPPIPEPORT    = $base++; # HTTP pipelining port
+$HTTP2PORT       = $base++; # HTTP/2 port
+$HTTPUNIXPATH    = 'http.sock'; # HTTP server Unix domain socket path
+
+#######################################################################
+# clear and create logging directory:
+#
+
+cleardir($LOGDIR);
+mkdir($LOGDIR, 0777);
+
+#######################################################################
+# initialize some variables
+#
+
+get_disttests();
+init_serverpidfile_hash();
+
+#######################################################################
+# Output curl version and host info being tested
+#
+
+if(!$listonly) {
+    checksystem();
+}
+
+#######################################################################
+# Fetch all disabled tests, if there are any
+#
+
+sub disabledtests {
+    my ($file) = @_;
+
+    if(open(D, "<$file")) {
+        while(<D>) {
+            if(/^ *\#/) {
+                # allow comments
+                next;
+            }
+            if($_ =~ /(\d+)/) {
+                $disabled{$1}=$1; # disable this test number
+            }
+        }
+        close(D);
+    }
+}
+
+# globally disabled tests
+disabledtests("$TESTDIR/DISABLED");
+
+# locally disabled tests, ignored by git etc
+disabledtests("$TESTDIR/DISABLED.local");
+
+#######################################################################
+# If 'all' tests are requested, find out all test numbers
+#
+
+if ( $TESTCASES eq "all") {
+    # Get all commands and find out their test numbers
+    opendir(DIR, $TESTDIR) || die "can't opendir $TESTDIR: $!";
+    my @cmds = grep { /^test([0-9]+)$/ && -f "$TESTDIR/$_" } readdir(DIR);
+    closedir(DIR);
+
+    $TESTCASES=""; # start with no test cases
+
+    # cut off everything but the digits
+    for(@cmds) {
+        $_ =~ s/[a-z\/\.]*//g;
+    }
+    # sort the numbers from low to high
+    foreach my $n (sort { $a <=> $b } @cmds) {
+        if($disabled{$n}) {
+            # skip disabled test cases
+            my $why = "configured as DISABLED";
+            $skipped++;
+            $skipped{$why}++;
+            $teststat[$n]=$why; # store reason for this test case
+            next;
+        }
+        $TESTCASES .= " $n";
+    }
+}
+else {
+    my $verified="";
+    map {
+        if (-e "$TESTDIR/test$_") {
+            $verified.="$_ ";
+        }
+    } split(" ", $TESTCASES);
+    if($verified eq "") {
+        print "No existing test cases were specified\n";
+        exit;
+    }
+    $TESTCASES = $verified;
+}
+
+if($scrambleorder) {
+    # scramble the order of the test cases
+    my @rand;
+    while($TESTCASES) {
+        my @all = split(/ +/, $TESTCASES);
+        if(!$all[0]) {
+            # if the first is blank, shift away it
+            shift @all;
+        }
+        my $r = rand @all;
+        push @rand, $all[$r];
+        $all[$r]="";
+        $TESTCASES = join(" ", @all);
+    }
+    $TESTCASES = join(" ", @rand);
+}
+
+#######################################################################
+# Start the command line log
+#
+open(CMDLOG, ">$CURLLOG") ||
+    logmsg "can't log command lines to $CURLLOG\n";
+
+#######################################################################
+
+# Display the contents of the given file.  Line endings are canonicalized
+# and excessively long files are elided
+sub displaylogcontent {
+    my ($file)=@_;
+    if(open(SINGLE, "<$file")) {
+        my $linecount = 0;
+        my $truncate;
+        my @tail;
+        while(my $string = <SINGLE>) {
+            $string =~ s/\r\n/\n/g;
+            $string =~ s/[\r\f\032]/\n/g;
+            $string .= "\n" unless ($string =~ /\n$/);
+            $string =~ tr/\n//;
+            for my $line (split("\n", $string)) {
+                $line =~ s/\s*\!$//;
+                if ($truncate) {
+                    push @tail, " $line\n";
+                } else {
+                    logmsg " $line\n";
+                }
+                $linecount++;
+                $truncate = $linecount > 1000;
+            }
+        }
+        if(@tail) {
+            my $tailshow = 200;
+            my $tailskip = 0;
+            my $tailtotal = scalar @tail;
+            if($tailtotal > $tailshow) {
+                $tailskip = $tailtotal - $tailshow;
+                logmsg "=== File too long: $tailskip lines omitted here\n";
+            }
+            for($tailskip .. $tailtotal-1) {
+                logmsg "$tail[$_]";
+            }
+        }
+        close(SINGLE);
+    }
+}
+
+sub displaylogs {
+    my ($testnum)=@_;
+    opendir(DIR, "$LOGDIR") ||
+        die "can't open dir: $!";
+    my @logs = readdir(DIR);
+    closedir(DIR);
+
+    logmsg "== Contents of files in the $LOGDIR/ dir after test $testnum\n";
+    foreach my $log (sort @logs) {
+        if($log =~ /\.(\.|)$/) {
+            next; # skip "." and ".."
+        }
+        if($log =~ /^\.nfs/) {
+            next; # skip ".nfs"
+        }
+        if(($log eq "memdump") || ($log eq "core")) {
+            next; # skip "memdump" and  "core"
+        }
+        if((-d "$LOGDIR/$log") || (! -s "$LOGDIR/$log")) {
+            next; # skip directory and empty files
+        }
+        if(($log =~ /^stdout\d+/) && ($log !~ /^stdout$testnum/)) {
+            next; # skip stdoutNnn of other tests
+        }
+        if(($log =~ /^stderr\d+/) && ($log !~ /^stderr$testnum/)) {
+            next; # skip stderrNnn of other tests
+        }
+        if(($log =~ /^upload\d+/) && ($log !~ /^upload$testnum/)) {
+            next; # skip uploadNnn of other tests
+        }
+        if(($log =~ /^curl\d+\.out/) && ($log !~ /^curl$testnum\.out/)) {
+            next; # skip curlNnn.out of other tests
+        }
+        if(($log =~ /^test\d+\.txt/) && ($log !~ /^test$testnum\.txt/)) {
+            next; # skip testNnn.txt of other tests
+        }
+        if(($log =~ /^file\d+\.txt/) && ($log !~ /^file$testnum\.txt/)) {
+            next; # skip fileNnn.txt of other tests
+        }
+        if(($log =~ /^netrc\d+/) && ($log !~ /^netrc$testnum/)) {
+            next; # skip netrcNnn of other tests
+        }
+        if(($log =~ /^trace\d+/) && ($log !~ /^trace$testnum/)) {
+            next; # skip traceNnn of other tests
+        }
+        if(($log =~ /^valgrind\d+/) && ($log !~ /^valgrind$testnum(\..*|)$/)) {
+            next; # skip valgrindNnn of other tests
+        }
+        logmsg "=== Start of file $log\n";
+        displaylogcontent("$LOGDIR/$log");
+        logmsg "=== End of file $log\n";
+    }
+}
+
+#######################################################################
+# The main test-loop
+#
+
+my $failed;
+my $testnum;
+my $ok=0;
+my $total=0;
+my $lasttest=0;
+my @at = split(" ", $TESTCASES);
+my $count=0;
+
+$start = time();
+
+foreach $testnum (@at) {
+
+    $lasttest = $testnum if($testnum > $lasttest);
+    $count++;
+
+    my $error = singletest($run_event_based, $testnum, $count, scalar(@at));
+    if($error < 0) {
+        # not a test we can run
+        next;
+    }
+
+    $total++; # number of tests we've run
+
+    if($error>0) {
+        $failed.= "$testnum ";
+        if($postmortem) {
+            # display all files in log/ in a nice way
+            displaylogs($testnum);
+        }
+        if(!$anyway) {
+            # a test failed, abort
+            logmsg "\n - abort tests\n";
+            last;
+        }
+    }
+    elsif(!$error) {
+        $ok++; # successful test counter
+    }
+
+    # loop for next test
+}
+
+my $sofar = time() - $start;
+
+#######################################################################
+# Close command log
+#
+close(CMDLOG);
+
+# Tests done, stop the servers
+stopservers($verbose);
+
+my $all = $total + $skipped;
+
+runtimestats($lasttest);
+
+if($total) {
+    logmsg sprintf("TESTDONE: $ok tests out of $total reported OK: %d%%\n",
+                   $ok/$total*100);
+
+    if($ok != $total) {
+        logmsg "TESTFAIL: These test cases failed: $failed\n";
+    }
+}
+else {
+    logmsg "TESTFAIL: No tests were performed\n";
+}
+
+if($all) {
+    logmsg "TESTDONE: $all tests were considered during ".
+        sprintf("%.0f", $sofar) ." seconds.\n";
+}
+
+if($skipped && !$short) {
+    my $s=0;
+    logmsg "TESTINFO: $skipped tests were skipped due to these restraints:\n";
+
+    for(keys %skipped) {
+        my $r = $_;
+        printf "TESTINFO: \"%s\" %d times (", $r, $skipped{$_};
+
+        # now show all test case numbers that had this reason for being
+        # skipped
+        my $c=0;
+        my $max = 9;
+        for(0 .. scalar @teststat) {
+            my $t = $_;
+            if($teststat[$_] && ($teststat[$_] eq $r)) {
+                if($c < $max) {
+                    logmsg ", " if($c);
+                    logmsg $_;
+                }
+                $c++;
+            }
+        }
+        if($c > $max) {
+            logmsg " and ".($c-$max)." more";
+        }
+        logmsg ")\n";
+    }
+}
+
+if($total && ($ok != $total)) {
+    exit 1;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/secureserver.pl b/ap/lib/libcurl/curl-7.54.1/tests/secureserver.pl
new file mode 100755
index 0000000..c897ee5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/secureserver.pl
@@ -0,0 +1,356 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+# This is the HTTPS, FTPS, POP3S, IMAPS, SMTPS, server used for curl test
+# harness. Actually just a layer that runs stunnel properly using the
+# non-secure test harness servers.
+
+BEGIN {
+    push(@INC, $ENV{'srcdir'}) if(defined $ENV{'srcdir'});
+    push(@INC, ".");
+}
+
+use strict;
+use warnings;
+use Cwd;
+use Cwd 'abs_path';
+
+use serverhelp qw(
+    server_pidfilename
+    server_logfilename
+    );
+
+use pathhelp;
+
+my $stunnel = "stunnel";
+
+my $verbose=0; # set to 1 for debugging
+
+my $accept_port = 8991; # just our default, weird enough
+my $target_port = 8999; # default test http-server port
+
+my $stuncert;
+
+my $ver_major;
+my $ver_minor;
+my $fips_support;
+my $stunnel_version;
+my $tstunnel_windows;
+my $socketopt;
+my $cmd;
+
+my $pidfile;          # stunnel pid file
+my $logfile;          # stunnel log file
+my $loglevel = 5;     # stunnel log level
+my $ipvnum = 4;       # default IP version of stunneled server
+my $idnum = 1;        # default stunneled server instance number
+my $proto = 'https';  # default secure server protocol
+my $conffile;         # stunnel configuration file
+my $capath;           # certificate chain PEM folder
+my $certfile;         # certificate chain PEM file
+
+#***************************************************************************
+# stunnel requires full path specification for several files.
+#
+my $path   = getcwd();
+my $srcdir = $path;
+my $logdir = $path .'/log';
+
+#***************************************************************************
+# Signal handler to remove our stunnel 4.00 and newer configuration file.
+#
+sub exit_signal_handler {
+    my $signame = shift;
+    local $!; # preserve errno
+    local $?; # preserve exit status
+    unlink($conffile) if($conffile && (-f $conffile));
+    exit;
+}
+
+#***************************************************************************
+# Process command line options
+#
+while(@ARGV) {
+    if($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    elsif($ARGV[0] eq '--proto') {
+        if($ARGV[1]) {
+            $proto = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--accept') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^(\d+)$/) {
+                $accept_port = $1;
+                shift @ARGV;
+            }
+        }
+    }
+    elsif($ARGV[0] eq '--connect') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^(\d+)$/) {
+                $target_port = $1;
+                shift @ARGV;
+            }
+        }
+    }
+    elsif($ARGV[0] eq '--stunnel') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^([\w\/]+)$/) {
+                $stunnel = $ARGV[1];
+            }
+            else {
+                $stunnel = "\"". $ARGV[1] ."\"";
+            }
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--srcdir') {
+        if($ARGV[1]) {
+            $srcdir = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--certfile') {
+        if($ARGV[1]) {
+            $stuncert = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--id') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^(\d+)$/) {
+                $idnum = $1 if($1 > 0);
+                shift @ARGV;
+            }
+        }
+    }
+    elsif($ARGV[0] eq '--ipv4') {
+        $ipvnum = 4;
+    }
+    elsif($ARGV[0] eq '--ipv6') {
+        $ipvnum = 6;
+    }
+    elsif($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = "$path/". $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--logfile') {
+        if($ARGV[1]) {
+            $logfile = "$path/". $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    else {
+        print STDERR "\nWarning: secureserver.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+#***************************************************************************
+# Initialize command line option dependent variables
+#
+if(!$pidfile) {
+    $pidfile = "$path/". server_pidfilename($proto, $ipvnum, $idnum);
+}
+if(!$logfile) {
+    $logfile = server_logfilename($logdir, $proto, $ipvnum, $idnum);
+}
+
+$conffile = "$path/${proto}_stunnel.conf";
+
+$capath = abs_path($path);
+$certfile = "$srcdir/". ($stuncert?"certs/$stuncert":"stunnel.pem");
+$certfile = abs_path($certfile);
+
+my $ssltext = uc($proto) ." SSL/TLS:";
+
+#***************************************************************************
+# Find out version info for the given stunnel binary
+#
+foreach my $veropt (('-version', '-V')) {
+    foreach my $verstr (qx($stunnel $veropt 2>&1)) {
+        if($verstr =~ /^stunnel (\d+)\.(\d+) on /) {
+            $ver_major = $1;
+            $ver_minor = $2;
+        }
+        elsif($verstr =~ /^sslVersion.*fips *= *yes/) {
+            # the fips option causes an error if stunnel doesn't support it
+            $fips_support = 1;
+            last
+        }
+    }
+    last if($ver_major);
+}
+if((!$ver_major) || (!$ver_minor)) {
+    if(-x "$stunnel" && ! -d "$stunnel") {
+        print "$ssltext Unknown stunnel version\n";
+    }
+    else {
+        print "$ssltext No stunnel\n";
+    }
+    exit 1;
+}
+$stunnel_version = (100*$ver_major) + $ver_minor;
+
+#***************************************************************************
+# Verify minimum stunnel required version
+#
+if($stunnel_version < 310) {
+    print "$ssltext Unsupported stunnel version $ver_major.$ver_minor\n";
+    exit 1;
+}
+
+#***************************************************************************
+# Find out if we are running on Windows using the tstunnel binary
+#
+if($stunnel =~ /tstunnel(\.exe)?"?$/) {
+    $tstunnel_windows = 1;
+
+    # convert Cygwin/MinGW paths to Win32 format
+    $capath = pathhelp::sys_native_abs_path($capath);
+    $certfile = pathhelp::sys_native_abs_path($certfile);
+}
+
+#***************************************************************************
+# Build command to execute for stunnel 3.X versions
+#
+if($stunnel_version < 400) {
+    if($stunnel_version >= 319) {
+        $socketopt = "-O a:SO_REUSEADDR=1";
+    }
+    $cmd  = "$stunnel -p $certfile -P $pidfile ";
+    $cmd .= "-d $accept_port -r $target_port -f -D $loglevel ";
+    $cmd .= ($socketopt) ? "$socketopt " : "";
+    $cmd .= ">$logfile 2>&1";
+    if($verbose) {
+        print uc($proto) ." server (stunnel $ver_major.$ver_minor)\n";
+        print "cmd: $cmd\n";
+        print "pem cert file: $certfile\n";
+        print "pid file: $pidfile\n";
+        print "log file: $logfile\n";
+        print "log level: $loglevel\n";
+        print "listen on port: $accept_port\n";
+        print "connect to port: $target_port\n";
+    }
+}
+
+#***************************************************************************
+# Build command to execute for stunnel 4.00 and newer
+#
+if($stunnel_version >= 400) {
+    $socketopt = "a:SO_REUSEADDR=1";
+    $cmd  = "$stunnel $conffile ";
+    $cmd .= ">$logfile 2>&1";
+    # setup signal handler
+    $SIG{INT} = \&exit_signal_handler;
+    $SIG{TERM} = \&exit_signal_handler;
+    # stunnel configuration file
+    if(open(STUNCONF, ">$conffile")) {
+        print STUNCONF "CApath = $capath\n";
+        print STUNCONF "cert = $certfile\n";
+        print STUNCONF "debug = $loglevel\n";
+        print STUNCONF "socket = $socketopt\n";
+        if($fips_support) {
+            # disable fips in case OpenSSL doesn't support it
+            print STUNCONF "fips = no\n";
+        }
+        if(!$tstunnel_windows) {
+            # do not use Linux-specific options on Windows
+            print STUNCONF "output = $logfile\n";
+            print STUNCONF "pid = $pidfile\n";
+            print STUNCONF "foreground = yes\n";
+        }
+        print STUNCONF "\n";
+        print STUNCONF "[curltest]\n";
+        print STUNCONF "accept = $accept_port\n";
+        print STUNCONF "connect = $target_port\n";
+        if(!close(STUNCONF)) {
+            print "$ssltext Error closing file $conffile\n";
+            exit 1;
+        }
+    }
+    else {
+        print "$ssltext Error writing file $conffile\n";
+        exit 1;
+    }
+    if($verbose) {
+        print uc($proto) ." server (stunnel $ver_major.$ver_minor)\n";
+        print "cmd: $cmd\n";
+        print "CApath = $capath\n";
+        print "cert = $certfile\n";
+        print "debug = $loglevel\n";
+        print "socket = $socketopt\n";
+        if($fips_support) {
+            print "fips = no\n";
+        }
+        if(!$tstunnel_windows) {
+            print "pid = $pidfile\n";
+            print "output = $logfile\n";
+            print "foreground = yes\n";
+        }
+        print "\n";
+        print "[curltest]\n";
+        print "accept = $accept_port\n";
+        print "connect = $target_port\n";
+    }
+}
+
+#***************************************************************************
+# Set file permissions on certificate pem file.
+#
+chmod(0600, $certfile) if(-f $certfile);
+
+#***************************************************************************
+# Run tstunnel on Windows.
+#
+if($tstunnel_windows) {
+    # Fake pidfile for tstunnel on Windows.
+    if(open(OUT, ">$pidfile")) {
+        print OUT $$ . "\n";
+        close(OUT);
+    }
+
+    # Put an "exec" in front of the command so that the child process
+    # keeps this child's process ID.
+    exec("exec $cmd") || die "Can't exec() $cmd: $!";
+
+    # exec() should never return back here to this process. We protect
+    # ourselves by calling die() just in case something goes really bad.
+    die "error: exec() has returned";
+}
+
+#***************************************************************************
+# Run stunnel.
+#
+my $rc = system($cmd);
+
+$rc >>= 8;
+
+unlink($conffile) if($conffile && -f $conffile);
+
+exit $rc;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/CMakeLists.txt b/ap/lib/libcurl/curl-7.54.1/tests/server/CMakeLists.txt
new file mode 100644
index 0000000..00f5242
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/CMakeLists.txt
@@ -0,0 +1,62 @@
+set(TARGET_LABEL_PREFIX "Test server ")
+
+function(SETUP_EXECUTABLE TEST_NAME)    # ARGN are the files in the test
+  add_executable( ${TEST_NAME} ${ARGN} )
+  string(TOUPPER ${TEST_NAME} UPPER_TEST_NAME)
+
+  include_directories(
+    ${CURL_SOURCE_DIR}/lib      # To be able to reach "curl_setup_once.h"
+    ${CURL_BINARY_DIR}/lib      # To be able to reach "curl_config.h"
+    ${CURL_BINARY_DIR}/include  # To be able to reach "curl/curlbuild.h"
+    )
+  if(USE_ARES)
+    include_directories(${CARES_INCLUDE_DIR})
+  endif()
+
+  target_link_libraries(${TEST_NAME} ${CURL_LIBS})
+
+  # Test servers simply are standalone programs that do not use libcurl
+  # library.  For convinience and to ease portability of these servers,
+  # some source code files from the libcurl subdirectory are also used
+  # to build the servers.  In order to achieve proper linkage of these
+  # files on Win32 targets it is necessary to build the test servers
+  # with CURL_STATICLIB defined, independently of how libcurl is built.
+  if(NOT CURL_STATICLIB)
+    set_target_properties(${TEST_NAME} PROPERTIES
+      COMPILE_DEFINITIONS CURL_STATICLIB)       # ${UPPER_TEST_NAME}
+  endif()
+  set_target_properties(${TEST_NAME} PROPERTIES
+    PROJECT_LABEL "${TARGET_LABEL_PREFIX}${TEST_NAME}")
+
+  # Add the postfix to the executable since it is not added
+  # automatically as for modules and shared libraries
+  set_target_properties(${TEST_NAME} PROPERTIES
+    DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
+
+endfunction()
+
+
+transform_makefile_inc("Makefile.inc"
+  "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
+include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
+
+foreach(EXECUTABLE_NAME ${noinst_PROGRAMS})
+  setup_executable(${EXECUTABLE_NAME} ${${EXECUTABLE_NAME}_SOURCES})
+endforeach()
+
+
+# SET(useful
+# getpart.c getpart.h
+# ${CURL_SOURCE_DIR}/lib/strequal.c
+# ${CURL_SOURCE_DIR}/lib/base64.c
+# ${CURL_SOURCE_DIR}/lib/mprintf.c
+# ${CURL_SOURCE_DIR}/lib/memdebug.c
+# ${CURL_SOURCE_DIR}/lib/timeval.c
+# )
+
+# SETUP_EXECUTABLE(sws sws.c util.c util.h ${useful})
+# SETUP_EXECUTABLE(resolve resolve.c util.c util.h ${useful})
+# SETUP_EXECUTABLE(sockfilt sockfilt.c util.c util.h ${useful} ${CURL_SOURCE_DIR}/lib/inet_pton.c)
+# SETUP_EXECUTABLE(getpart testpart.c ${useful})
+# SETUP_EXECUTABLE(tftpd tftpd.c util.c util.h ${useful} tftp.h)
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.am
new file mode 100644
index 0000000..6204038
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.am
@@ -0,0 +1,71 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign nostdinc
+
+# Specify our include paths here, and do it relative to $(top_srcdir) and
+# $(top_builddir), to ensure that these paths which belong to the library
+# being currently built and tested are searched before the library which
+# might possibly already be installed in the system.
+#
+# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
+# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h
+# $(top_srcdir)/include is for libcurl's external include files
+# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
+# $(top_srcdir)/ares is for in-tree c-ares's external include files
+
+if USE_EMBEDDED_ARES
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_srcdir)/lib            \
+              -I$(top_builddir)/ares         \
+              -I$(top_srcdir)/ares
+else
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_srcdir)/lib
+endif
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+
+if DOING_NATIVE_WINDOWS
+AM_CPPFLAGS += -DCURL_STATICLIB
+endif
+
+# Makefile.inc provides neat definitions
+include Makefile.inc
+
+EXTRA_DIST = base64.pl Makefile.inc CMakeLists.txt
+
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
+
+if CURLDEBUG
+# for debug builds, we scan the sources on all regular make invokes
+all-local: checksrc
+endif
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.in
new file mode 100644
index 0000000..e500a3e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.in
@@ -0,0 +1,2129 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@DOING_NATIVE_WINDOWS_TRUE@am__append_1 = -DCURL_STATICLIB
+noinst_PROGRAMS = getpart$(EXEEXT) resolve$(EXEEXT) rtspd$(EXEEXT) \
+	sockfilt$(EXEEXT) sws$(EXEEXT) tftpd$(EXEEXT) \
+	fake_ntlm$(EXEEXT)
+subdir = tests/server
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+am__dirstamp = $(am__leading_dot)dirstamp
+am__objects_1 = ../../lib/fake_ntlm-mprintf.$(OBJEXT) \
+	../../lib/fake_ntlm-nonblock.$(OBJEXT) \
+	../../lib/fake_ntlm-strtoofft.$(OBJEXT) \
+	../../lib/fake_ntlm-timeval.$(OBJEXT) \
+	../../lib/fake_ntlm-warnless.$(OBJEXT)
+am__objects_2 =
+am__objects_3 = fake_ntlm-getpart.$(OBJEXT) \
+	../../lib/fake_ntlm-base64.$(OBJEXT) \
+	../../lib/fake_ntlm-memdebug.$(OBJEXT)
+am__objects_4 = fake_ntlm-util.$(OBJEXT)
+am_fake_ntlm_OBJECTS = $(am__objects_1) $(am__objects_2) \
+	$(am__objects_3) $(am__objects_4) \
+	fake_ntlm-fake_ntlm.$(OBJEXT)
+fake_ntlm_OBJECTS = $(am_fake_ntlm_OBJECTS)
+fake_ntlm_DEPENDENCIES =
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+fake_ntlm_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(fake_ntlm_CFLAGS) \
+	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_5 = ../../lib/getpart-mprintf.$(OBJEXT) \
+	../../lib/getpart-nonblock.$(OBJEXT) \
+	../../lib/getpart-strtoofft.$(OBJEXT) \
+	../../lib/getpart-timeval.$(OBJEXT) \
+	../../lib/getpart-warnless.$(OBJEXT)
+am__objects_6 = getpart-getpart.$(OBJEXT) \
+	../../lib/getpart-base64.$(OBJEXT) \
+	../../lib/getpart-memdebug.$(OBJEXT)
+am_getpart_OBJECTS = $(am__objects_5) $(am__objects_2) \
+	$(am__objects_6) getpart-testpart.$(OBJEXT)
+getpart_OBJECTS = $(am_getpart_OBJECTS)
+getpart_DEPENDENCIES =
+getpart_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(getpart_CFLAGS) \
+	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_7 = ../../lib/resolve-mprintf.$(OBJEXT) \
+	../../lib/resolve-nonblock.$(OBJEXT) \
+	../../lib/resolve-strtoofft.$(OBJEXT) \
+	../../lib/resolve-timeval.$(OBJEXT) \
+	../../lib/resolve-warnless.$(OBJEXT)
+am__objects_8 = resolve-getpart.$(OBJEXT) \
+	../../lib/resolve-base64.$(OBJEXT) \
+	../../lib/resolve-memdebug.$(OBJEXT)
+am__objects_9 = resolve-util.$(OBJEXT)
+am_resolve_OBJECTS = $(am__objects_7) $(am__objects_2) \
+	$(am__objects_8) $(am__objects_9) resolve-resolve.$(OBJEXT)
+resolve_OBJECTS = $(am_resolve_OBJECTS)
+resolve_DEPENDENCIES =
+resolve_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(resolve_CFLAGS) \
+	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_10 = ../../lib/rtspd-mprintf.$(OBJEXT) \
+	../../lib/rtspd-nonblock.$(OBJEXT) \
+	../../lib/rtspd-strtoofft.$(OBJEXT) \
+	../../lib/rtspd-timeval.$(OBJEXT) \
+	../../lib/rtspd-warnless.$(OBJEXT)
+am__objects_11 = rtspd-getpart.$(OBJEXT) \
+	../../lib/rtspd-base64.$(OBJEXT) \
+	../../lib/rtspd-memdebug.$(OBJEXT)
+am__objects_12 = rtspd-util.$(OBJEXT)
+am_rtspd_OBJECTS = $(am__objects_10) $(am__objects_2) \
+	$(am__objects_11) $(am__objects_12) rtspd-rtspd.$(OBJEXT)
+rtspd_OBJECTS = $(am_rtspd_OBJECTS)
+rtspd_DEPENDENCIES =
+rtspd_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(rtspd_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_13 = ../../lib/sockfilt-mprintf.$(OBJEXT) \
+	../../lib/sockfilt-nonblock.$(OBJEXT) \
+	../../lib/sockfilt-strtoofft.$(OBJEXT) \
+	../../lib/sockfilt-timeval.$(OBJEXT) \
+	../../lib/sockfilt-warnless.$(OBJEXT)
+am__objects_14 = sockfilt-getpart.$(OBJEXT) \
+	../../lib/sockfilt-base64.$(OBJEXT) \
+	../../lib/sockfilt-memdebug.$(OBJEXT)
+am__objects_15 = sockfilt-util.$(OBJEXT)
+am_sockfilt_OBJECTS = $(am__objects_13) $(am__objects_2) \
+	$(am__objects_14) $(am__objects_15) \
+	sockfilt-sockfilt.$(OBJEXT) \
+	../../lib/sockfilt-inet_pton.$(OBJEXT)
+sockfilt_OBJECTS = $(am_sockfilt_OBJECTS)
+sockfilt_DEPENDENCIES =
+sockfilt_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(sockfilt_CFLAGS) \
+	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_16 = ../../lib/sws-mprintf.$(OBJEXT) \
+	../../lib/sws-nonblock.$(OBJEXT) \
+	../../lib/sws-strtoofft.$(OBJEXT) \
+	../../lib/sws-timeval.$(OBJEXT) \
+	../../lib/sws-warnless.$(OBJEXT)
+am__objects_17 = sws-getpart.$(OBJEXT) ../../lib/sws-base64.$(OBJEXT) \
+	../../lib/sws-memdebug.$(OBJEXT)
+am__objects_18 = sws-util.$(OBJEXT)
+am_sws_OBJECTS = $(am__objects_16) $(am__objects_2) $(am__objects_17) \
+	$(am__objects_18) sws-sws.$(OBJEXT) \
+	../../lib/sws-inet_pton.$(OBJEXT)
+sws_OBJECTS = $(am_sws_OBJECTS)
+sws_DEPENDENCIES =
+sws_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(sws_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_19 = ../../lib/tftpd-mprintf.$(OBJEXT) \
+	../../lib/tftpd-nonblock.$(OBJEXT) \
+	../../lib/tftpd-strtoofft.$(OBJEXT) \
+	../../lib/tftpd-timeval.$(OBJEXT) \
+	../../lib/tftpd-warnless.$(OBJEXT)
+am__objects_20 = tftpd-getpart.$(OBJEXT) \
+	../../lib/tftpd-base64.$(OBJEXT) \
+	../../lib/tftpd-memdebug.$(OBJEXT)
+am__objects_21 = tftpd-util.$(OBJEXT)
+am_tftpd_OBJECTS = $(am__objects_19) $(am__objects_2) \
+	$(am__objects_20) $(am__objects_21) tftpd-tftpd.$(OBJEXT)
+tftpd_OBJECTS = $(am_tftpd_OBJECTS)
+tftpd_DEPENDENCIES =
+tftpd_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(tftpd_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+DEFAULT_INCLUDES = 
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo "  CC      " $@;
+am__v_CC_1 = 
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo "  CCLD    " $@;
+am__v_CCLD_1 = 
+SOURCES = $(fake_ntlm_SOURCES) $(getpart_SOURCES) $(resolve_SOURCES) \
+	$(rtspd_SOURCES) $(sockfilt_SOURCES) $(sws_SOURCES) \
+	$(tftpd_SOURCES)
+DIST_SOURCES = $(fake_ntlm_SOURCES) $(getpart_SOURCES) \
+	$(resolve_SOURCES) $(rtspd_SOURCES) $(sockfilt_SOURCES) \
+	$(sws_SOURCES) $(tftpd_SOURCES)
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
+	$(top_srcdir)/depcomp
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign nostdinc
+@USE_EMBEDDED_ARES_FALSE@AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_builddir)/include \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/include \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_builddir)/lib \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/lib $(am__append_1)
+
+# Specify our include paths here, and do it relative to $(top_srcdir) and
+# $(top_builddir), to ensure that these paths which belong to the library
+# being currently built and tested are searched before the library which
+# might possibly already be installed in the system.
+#
+# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
+# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h
+# $(top_srcdir)/include is for libcurl's external include files
+# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
+# $(top_srcdir)/ares is for in-tree c-ares's external include files
+@USE_EMBEDDED_ARES_TRUE@AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/include \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/include \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/lib \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/lib \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/ares \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/ares $(am__append_1)
+CURLX_SRCS = \
+ ../../lib/mprintf.c \
+ ../../lib/nonblock.c \
+ ../../lib/strtoofft.c \
+ ../../lib/timeval.c \
+ ../../lib/warnless.c
+
+CURLX_HDRS = \
+ ../../lib/curlx.h \
+ ../../lib/nonblock.h \
+ ../../lib/strtoofft.h \
+ ../../lib/timeval.h \
+ ../../lib/warnless.h
+
+USEFUL = \
+ getpart.c \
+ getpart.h \
+ server_setup.h \
+ ../../lib/base64.c \
+ ../../lib/curl_base64.h \
+ ../../lib/memdebug.c \
+ ../../lib/memdebug.h
+
+UTIL = \
+ util.c \
+ util.h
+
+getpart_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) \
+ testpart.c
+
+getpart_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+getpart_CFLAGS = $(AM_CFLAGS)
+resolve_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ resolve.c
+
+resolve_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+resolve_CFLAGS = $(AM_CFLAGS)
+rtspd_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ rtspd.c
+
+rtspd_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+rtspd_CFLAGS = $(AM_CFLAGS)
+sockfilt_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ sockfilt.c \
+ ../../lib/inet_pton.c
+
+sockfilt_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+sockfilt_CFLAGS = $(AM_CFLAGS)
+sws_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ sws.c \
+ ../../lib/inet_pton.c
+
+sws_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+sws_CFLAGS = $(AM_CFLAGS)
+tftpd_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ tftpd.c \
+ tftp.h
+
+tftpd_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+tftpd_CFLAGS = $(AM_CFLAGS)
+fake_ntlm_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ fake_ntlm.c
+
+fake_ntlm_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+fake_ntlm_CFLAGS = $(AM_CFLAGS)
+
+# Makefile.inc provides neat definitions
+EXTRA_DIST = base64.pl Makefile.inc CMakeLists.txt
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/server/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/server/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+$(srcdir)/Makefile.inc $(am__empty):
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+	echo " rm -f" $$list; \
+	rm -f $$list || exit $$?; \
+	test -n "$(EXEEXT)" || exit 0; \
+	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+	echo " rm -f" $$list; \
+	rm -f $$list
+../../lib/$(am__dirstamp):
+	@$(MKDIR_P) ../../lib
+	@: > ../../lib/$(am__dirstamp)
+../../lib/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ../../lib/$(DEPDIR)
+	@: > ../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/fake_ntlm-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+fake_ntlm$(EXEEXT): $(fake_ntlm_OBJECTS) $(fake_ntlm_DEPENDENCIES) $(EXTRA_fake_ntlm_DEPENDENCIES) 
+	@rm -f fake_ntlm$(EXEEXT)
+	$(AM_V_CCLD)$(fake_ntlm_LINK) $(fake_ntlm_OBJECTS) $(fake_ntlm_LDADD) $(LIBS)
+../../lib/getpart-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/getpart-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/getpart-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/getpart-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/getpart-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/getpart-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/getpart-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+getpart$(EXEEXT): $(getpart_OBJECTS) $(getpart_DEPENDENCIES) $(EXTRA_getpart_DEPENDENCIES) 
+	@rm -f getpart$(EXEEXT)
+	$(AM_V_CCLD)$(getpart_LINK) $(getpart_OBJECTS) $(getpart_LDADD) $(LIBS)
+../../lib/resolve-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/resolve-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/resolve-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/resolve-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/resolve-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/resolve-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/resolve-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+resolve$(EXEEXT): $(resolve_OBJECTS) $(resolve_DEPENDENCIES) $(EXTRA_resolve_DEPENDENCIES) 
+	@rm -f resolve$(EXEEXT)
+	$(AM_V_CCLD)$(resolve_LINK) $(resolve_OBJECTS) $(resolve_LDADD) $(LIBS)
+../../lib/rtspd-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/rtspd-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/rtspd-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/rtspd-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/rtspd-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/rtspd-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/rtspd-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+rtspd$(EXEEXT): $(rtspd_OBJECTS) $(rtspd_DEPENDENCIES) $(EXTRA_rtspd_DEPENDENCIES) 
+	@rm -f rtspd$(EXEEXT)
+	$(AM_V_CCLD)$(rtspd_LINK) $(rtspd_OBJECTS) $(rtspd_LDADD) $(LIBS)
+../../lib/sockfilt-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sockfilt-inet_pton.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+sockfilt$(EXEEXT): $(sockfilt_OBJECTS) $(sockfilt_DEPENDENCIES) $(EXTRA_sockfilt_DEPENDENCIES) 
+	@rm -f sockfilt$(EXEEXT)
+	$(AM_V_CCLD)$(sockfilt_LINK) $(sockfilt_OBJECTS) $(sockfilt_LDADD) $(LIBS)
+../../lib/sws-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/sws-inet_pton.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+sws$(EXEEXT): $(sws_OBJECTS) $(sws_DEPENDENCIES) $(EXTRA_sws_DEPENDENCIES) 
+	@rm -f sws$(EXEEXT)
+	$(AM_V_CCLD)$(sws_LINK) $(sws_OBJECTS) $(sws_LDADD) $(LIBS)
+../../lib/tftpd-mprintf.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/tftpd-nonblock.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/tftpd-strtoofft.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/tftpd-timeval.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/tftpd-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/tftpd-base64.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+../../lib/tftpd-memdebug.$(OBJEXT): ../../lib/$(am__dirstamp) \
+	../../lib/$(DEPDIR)/$(am__dirstamp)
+
+tftpd$(EXEEXT): $(tftpd_OBJECTS) $(tftpd_DEPENDENCIES) $(EXTRA_tftpd_DEPENDENCIES) 
+	@rm -f tftpd$(EXEEXT)
+	$(AM_V_CCLD)$(tftpd_LINK) $(tftpd_OBJECTS) $(tftpd_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+	-rm -f ../../lib/*.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/fake_ntlm-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/getpart-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/resolve-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/rtspd-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-inet_pton.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sockfilt-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-inet_pton.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/sws-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-base64.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-memdebug.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-mprintf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-timeval.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/tftpd-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fake_ntlm-fake_ntlm.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fake_ntlm-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fake_ntlm-util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getpart-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getpart-testpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resolve-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resolve-resolve.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resolve-util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rtspd-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rtspd-rtspd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rtspd-util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sockfilt-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sockfilt-sockfilt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sockfilt-util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sws-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sws-sws.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sws-util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tftpd-getpart.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tftpd-tftpd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tftpd-util.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+
+.c.obj:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+
+../../lib/fake_ntlm-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-mprintf.Tpo -c -o ../../lib/fake_ntlm-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-mprintf.Tpo ../../lib/$(DEPDIR)/fake_ntlm-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/fake_ntlm-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/fake_ntlm-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-mprintf.Tpo -c -o ../../lib/fake_ntlm-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-mprintf.Tpo ../../lib/$(DEPDIR)/fake_ntlm-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/fake_ntlm-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/fake_ntlm-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-nonblock.Tpo -c -o ../../lib/fake_ntlm-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-nonblock.Tpo ../../lib/$(DEPDIR)/fake_ntlm-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/fake_ntlm-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/fake_ntlm-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-nonblock.Tpo -c -o ../../lib/fake_ntlm-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-nonblock.Tpo ../../lib/$(DEPDIR)/fake_ntlm-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/fake_ntlm-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/fake_ntlm-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Tpo -c -o ../../lib/fake_ntlm-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Tpo ../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/fake_ntlm-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/fake_ntlm-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Tpo -c -o ../../lib/fake_ntlm-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Tpo ../../lib/$(DEPDIR)/fake_ntlm-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/fake_ntlm-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/fake_ntlm-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-timeval.Tpo -c -o ../../lib/fake_ntlm-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-timeval.Tpo ../../lib/$(DEPDIR)/fake_ntlm-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/fake_ntlm-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/fake_ntlm-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-timeval.Tpo -c -o ../../lib/fake_ntlm-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-timeval.Tpo ../../lib/$(DEPDIR)/fake_ntlm-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/fake_ntlm-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/fake_ntlm-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-warnless.Tpo -c -o ../../lib/fake_ntlm-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-warnless.Tpo ../../lib/$(DEPDIR)/fake_ntlm-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/fake_ntlm-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/fake_ntlm-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-warnless.Tpo -c -o ../../lib/fake_ntlm-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-warnless.Tpo ../../lib/$(DEPDIR)/fake_ntlm-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/fake_ntlm-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+fake_ntlm-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT fake_ntlm-getpart.o -MD -MP -MF $(DEPDIR)/fake_ntlm-getpart.Tpo -c -o fake_ntlm-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fake_ntlm-getpart.Tpo $(DEPDIR)/fake_ntlm-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='fake_ntlm-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o fake_ntlm-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+fake_ntlm-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT fake_ntlm-getpart.obj -MD -MP -MF $(DEPDIR)/fake_ntlm-getpart.Tpo -c -o fake_ntlm-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fake_ntlm-getpart.Tpo $(DEPDIR)/fake_ntlm-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='fake_ntlm-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o fake_ntlm-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/fake_ntlm-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-base64.Tpo -c -o ../../lib/fake_ntlm-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-base64.Tpo ../../lib/$(DEPDIR)/fake_ntlm-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/fake_ntlm-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/fake_ntlm-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-base64.Tpo -c -o ../../lib/fake_ntlm-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-base64.Tpo ../../lib/$(DEPDIR)/fake_ntlm-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/fake_ntlm-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/fake_ntlm-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-memdebug.Tpo -c -o ../../lib/fake_ntlm-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-memdebug.Tpo ../../lib/$(DEPDIR)/fake_ntlm-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/fake_ntlm-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/fake_ntlm-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT ../../lib/fake_ntlm-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/fake_ntlm-memdebug.Tpo -c -o ../../lib/fake_ntlm-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/fake_ntlm-memdebug.Tpo ../../lib/$(DEPDIR)/fake_ntlm-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/fake_ntlm-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o ../../lib/fake_ntlm-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+fake_ntlm-util.o: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT fake_ntlm-util.o -MD -MP -MF $(DEPDIR)/fake_ntlm-util.Tpo -c -o fake_ntlm-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fake_ntlm-util.Tpo $(DEPDIR)/fake_ntlm-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='fake_ntlm-util.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o fake_ntlm-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+
+fake_ntlm-util.obj: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT fake_ntlm-util.obj -MD -MP -MF $(DEPDIR)/fake_ntlm-util.Tpo -c -o fake_ntlm-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fake_ntlm-util.Tpo $(DEPDIR)/fake_ntlm-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='fake_ntlm-util.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o fake_ntlm-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+
+fake_ntlm-fake_ntlm.o: fake_ntlm.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT fake_ntlm-fake_ntlm.o -MD -MP -MF $(DEPDIR)/fake_ntlm-fake_ntlm.Tpo -c -o fake_ntlm-fake_ntlm.o `test -f 'fake_ntlm.c' || echo '$(srcdir)/'`fake_ntlm.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fake_ntlm-fake_ntlm.Tpo $(DEPDIR)/fake_ntlm-fake_ntlm.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='fake_ntlm.c' object='fake_ntlm-fake_ntlm.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o fake_ntlm-fake_ntlm.o `test -f 'fake_ntlm.c' || echo '$(srcdir)/'`fake_ntlm.c
+
+fake_ntlm-fake_ntlm.obj: fake_ntlm.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -MT fake_ntlm-fake_ntlm.obj -MD -MP -MF $(DEPDIR)/fake_ntlm-fake_ntlm.Tpo -c -o fake_ntlm-fake_ntlm.obj `if test -f 'fake_ntlm.c'; then $(CYGPATH_W) 'fake_ntlm.c'; else $(CYGPATH_W) '$(srcdir)/fake_ntlm.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fake_ntlm-fake_ntlm.Tpo $(DEPDIR)/fake_ntlm-fake_ntlm.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='fake_ntlm.c' object='fake_ntlm-fake_ntlm.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fake_ntlm_CFLAGS) $(CFLAGS) -c -o fake_ntlm-fake_ntlm.obj `if test -f 'fake_ntlm.c'; then $(CYGPATH_W) 'fake_ntlm.c'; else $(CYGPATH_W) '$(srcdir)/fake_ntlm.c'; fi`
+
+../../lib/getpart-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-mprintf.Tpo -c -o ../../lib/getpart-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-mprintf.Tpo ../../lib/$(DEPDIR)/getpart-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/getpart-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/getpart-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-mprintf.Tpo -c -o ../../lib/getpart-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-mprintf.Tpo ../../lib/$(DEPDIR)/getpart-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/getpart-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/getpart-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-nonblock.Tpo -c -o ../../lib/getpart-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-nonblock.Tpo ../../lib/$(DEPDIR)/getpart-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/getpart-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/getpart-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-nonblock.Tpo -c -o ../../lib/getpart-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-nonblock.Tpo ../../lib/$(DEPDIR)/getpart-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/getpart-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/getpart-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-strtoofft.Tpo -c -o ../../lib/getpart-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-strtoofft.Tpo ../../lib/$(DEPDIR)/getpart-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/getpart-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/getpart-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-strtoofft.Tpo -c -o ../../lib/getpart-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-strtoofft.Tpo ../../lib/$(DEPDIR)/getpart-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/getpart-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/getpart-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-timeval.Tpo -c -o ../../lib/getpart-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-timeval.Tpo ../../lib/$(DEPDIR)/getpart-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/getpart-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/getpart-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-timeval.Tpo -c -o ../../lib/getpart-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-timeval.Tpo ../../lib/$(DEPDIR)/getpart-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/getpart-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/getpart-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-warnless.Tpo -c -o ../../lib/getpart-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-warnless.Tpo ../../lib/$(DEPDIR)/getpart-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/getpart-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/getpart-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-warnless.Tpo -c -o ../../lib/getpart-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-warnless.Tpo ../../lib/$(DEPDIR)/getpart-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/getpart-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+getpart-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT getpart-getpart.o -MD -MP -MF $(DEPDIR)/getpart-getpart.Tpo -c -o getpart-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/getpart-getpart.Tpo $(DEPDIR)/getpart-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='getpart-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o getpart-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+getpart-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT getpart-getpart.obj -MD -MP -MF $(DEPDIR)/getpart-getpart.Tpo -c -o getpart-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/getpart-getpart.Tpo $(DEPDIR)/getpart-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='getpart-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o getpart-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/getpart-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-base64.Tpo -c -o ../../lib/getpart-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-base64.Tpo ../../lib/$(DEPDIR)/getpart-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/getpart-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/getpart-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-base64.Tpo -c -o ../../lib/getpart-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-base64.Tpo ../../lib/$(DEPDIR)/getpart-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/getpart-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/getpart-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/getpart-memdebug.Tpo -c -o ../../lib/getpart-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-memdebug.Tpo ../../lib/$(DEPDIR)/getpart-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/getpart-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/getpart-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT ../../lib/getpart-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/getpart-memdebug.Tpo -c -o ../../lib/getpart-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/getpart-memdebug.Tpo ../../lib/$(DEPDIR)/getpart-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/getpart-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o ../../lib/getpart-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+getpart-testpart.o: testpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT getpart-testpart.o -MD -MP -MF $(DEPDIR)/getpart-testpart.Tpo -c -o getpart-testpart.o `test -f 'testpart.c' || echo '$(srcdir)/'`testpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/getpart-testpart.Tpo $(DEPDIR)/getpart-testpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testpart.c' object='getpart-testpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o getpart-testpart.o `test -f 'testpart.c' || echo '$(srcdir)/'`testpart.c
+
+getpart-testpart.obj: testpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -MT getpart-testpart.obj -MD -MP -MF $(DEPDIR)/getpart-testpart.Tpo -c -o getpart-testpart.obj `if test -f 'testpart.c'; then $(CYGPATH_W) 'testpart.c'; else $(CYGPATH_W) '$(srcdir)/testpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/getpart-testpart.Tpo $(DEPDIR)/getpart-testpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='testpart.c' object='getpart-testpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(getpart_CFLAGS) $(CFLAGS) -c -o getpart-testpart.obj `if test -f 'testpart.c'; then $(CYGPATH_W) 'testpart.c'; else $(CYGPATH_W) '$(srcdir)/testpart.c'; fi`
+
+../../lib/resolve-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-mprintf.Tpo -c -o ../../lib/resolve-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-mprintf.Tpo ../../lib/$(DEPDIR)/resolve-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/resolve-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/resolve-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-mprintf.Tpo -c -o ../../lib/resolve-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-mprintf.Tpo ../../lib/$(DEPDIR)/resolve-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/resolve-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/resolve-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-nonblock.Tpo -c -o ../../lib/resolve-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-nonblock.Tpo ../../lib/$(DEPDIR)/resolve-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/resolve-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/resolve-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-nonblock.Tpo -c -o ../../lib/resolve-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-nonblock.Tpo ../../lib/$(DEPDIR)/resolve-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/resolve-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/resolve-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-strtoofft.Tpo -c -o ../../lib/resolve-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-strtoofft.Tpo ../../lib/$(DEPDIR)/resolve-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/resolve-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/resolve-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-strtoofft.Tpo -c -o ../../lib/resolve-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-strtoofft.Tpo ../../lib/$(DEPDIR)/resolve-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/resolve-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/resolve-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-timeval.Tpo -c -o ../../lib/resolve-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-timeval.Tpo ../../lib/$(DEPDIR)/resolve-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/resolve-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/resolve-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-timeval.Tpo -c -o ../../lib/resolve-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-timeval.Tpo ../../lib/$(DEPDIR)/resolve-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/resolve-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/resolve-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-warnless.Tpo -c -o ../../lib/resolve-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-warnless.Tpo ../../lib/$(DEPDIR)/resolve-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/resolve-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/resolve-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-warnless.Tpo -c -o ../../lib/resolve-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-warnless.Tpo ../../lib/$(DEPDIR)/resolve-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/resolve-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+resolve-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT resolve-getpart.o -MD -MP -MF $(DEPDIR)/resolve-getpart.Tpo -c -o resolve-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolve-getpart.Tpo $(DEPDIR)/resolve-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='resolve-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o resolve-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+resolve-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT resolve-getpart.obj -MD -MP -MF $(DEPDIR)/resolve-getpart.Tpo -c -o resolve-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolve-getpart.Tpo $(DEPDIR)/resolve-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='resolve-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o resolve-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/resolve-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-base64.Tpo -c -o ../../lib/resolve-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-base64.Tpo ../../lib/$(DEPDIR)/resolve-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/resolve-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/resolve-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-base64.Tpo -c -o ../../lib/resolve-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-base64.Tpo ../../lib/$(DEPDIR)/resolve-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/resolve-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/resolve-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/resolve-memdebug.Tpo -c -o ../../lib/resolve-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-memdebug.Tpo ../../lib/$(DEPDIR)/resolve-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/resolve-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/resolve-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT ../../lib/resolve-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/resolve-memdebug.Tpo -c -o ../../lib/resolve-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/resolve-memdebug.Tpo ../../lib/$(DEPDIR)/resolve-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/resolve-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o ../../lib/resolve-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+resolve-util.o: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT resolve-util.o -MD -MP -MF $(DEPDIR)/resolve-util.Tpo -c -o resolve-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolve-util.Tpo $(DEPDIR)/resolve-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='resolve-util.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o resolve-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+
+resolve-util.obj: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT resolve-util.obj -MD -MP -MF $(DEPDIR)/resolve-util.Tpo -c -o resolve-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolve-util.Tpo $(DEPDIR)/resolve-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='resolve-util.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o resolve-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+
+resolve-resolve.o: resolve.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT resolve-resolve.o -MD -MP -MF $(DEPDIR)/resolve-resolve.Tpo -c -o resolve-resolve.o `test -f 'resolve.c' || echo '$(srcdir)/'`resolve.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolve-resolve.Tpo $(DEPDIR)/resolve-resolve.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='resolve.c' object='resolve-resolve.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o resolve-resolve.o `test -f 'resolve.c' || echo '$(srcdir)/'`resolve.c
+
+resolve-resolve.obj: resolve.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -MT resolve-resolve.obj -MD -MP -MF $(DEPDIR)/resolve-resolve.Tpo -c -o resolve-resolve.obj `if test -f 'resolve.c'; then $(CYGPATH_W) 'resolve.c'; else $(CYGPATH_W) '$(srcdir)/resolve.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolve-resolve.Tpo $(DEPDIR)/resolve-resolve.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='resolve.c' object='resolve-resolve.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolve_CFLAGS) $(CFLAGS) -c -o resolve-resolve.obj `if test -f 'resolve.c'; then $(CYGPATH_W) 'resolve.c'; else $(CYGPATH_W) '$(srcdir)/resolve.c'; fi`
+
+../../lib/rtspd-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-mprintf.Tpo -c -o ../../lib/rtspd-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-mprintf.Tpo ../../lib/$(DEPDIR)/rtspd-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/rtspd-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/rtspd-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-mprintf.Tpo -c -o ../../lib/rtspd-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-mprintf.Tpo ../../lib/$(DEPDIR)/rtspd-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/rtspd-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/rtspd-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-nonblock.Tpo -c -o ../../lib/rtspd-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-nonblock.Tpo ../../lib/$(DEPDIR)/rtspd-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/rtspd-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/rtspd-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-nonblock.Tpo -c -o ../../lib/rtspd-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-nonblock.Tpo ../../lib/$(DEPDIR)/rtspd-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/rtspd-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/rtspd-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-strtoofft.Tpo -c -o ../../lib/rtspd-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-strtoofft.Tpo ../../lib/$(DEPDIR)/rtspd-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/rtspd-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/rtspd-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-strtoofft.Tpo -c -o ../../lib/rtspd-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-strtoofft.Tpo ../../lib/$(DEPDIR)/rtspd-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/rtspd-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/rtspd-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-timeval.Tpo -c -o ../../lib/rtspd-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-timeval.Tpo ../../lib/$(DEPDIR)/rtspd-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/rtspd-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/rtspd-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-timeval.Tpo -c -o ../../lib/rtspd-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-timeval.Tpo ../../lib/$(DEPDIR)/rtspd-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/rtspd-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/rtspd-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-warnless.Tpo -c -o ../../lib/rtspd-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-warnless.Tpo ../../lib/$(DEPDIR)/rtspd-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/rtspd-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/rtspd-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-warnless.Tpo -c -o ../../lib/rtspd-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-warnless.Tpo ../../lib/$(DEPDIR)/rtspd-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/rtspd-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+rtspd-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT rtspd-getpart.o -MD -MP -MF $(DEPDIR)/rtspd-getpart.Tpo -c -o rtspd-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/rtspd-getpart.Tpo $(DEPDIR)/rtspd-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='rtspd-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o rtspd-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+rtspd-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT rtspd-getpart.obj -MD -MP -MF $(DEPDIR)/rtspd-getpart.Tpo -c -o rtspd-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/rtspd-getpart.Tpo $(DEPDIR)/rtspd-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='rtspd-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o rtspd-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/rtspd-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-base64.Tpo -c -o ../../lib/rtspd-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-base64.Tpo ../../lib/$(DEPDIR)/rtspd-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/rtspd-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/rtspd-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-base64.Tpo -c -o ../../lib/rtspd-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-base64.Tpo ../../lib/$(DEPDIR)/rtspd-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/rtspd-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/rtspd-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-memdebug.Tpo -c -o ../../lib/rtspd-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-memdebug.Tpo ../../lib/$(DEPDIR)/rtspd-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/rtspd-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/rtspd-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT ../../lib/rtspd-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/rtspd-memdebug.Tpo -c -o ../../lib/rtspd-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/rtspd-memdebug.Tpo ../../lib/$(DEPDIR)/rtspd-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/rtspd-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o ../../lib/rtspd-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+rtspd-util.o: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT rtspd-util.o -MD -MP -MF $(DEPDIR)/rtspd-util.Tpo -c -o rtspd-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/rtspd-util.Tpo $(DEPDIR)/rtspd-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='rtspd-util.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o rtspd-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+
+rtspd-util.obj: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT rtspd-util.obj -MD -MP -MF $(DEPDIR)/rtspd-util.Tpo -c -o rtspd-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/rtspd-util.Tpo $(DEPDIR)/rtspd-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='rtspd-util.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o rtspd-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+
+rtspd-rtspd.o: rtspd.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT rtspd-rtspd.o -MD -MP -MF $(DEPDIR)/rtspd-rtspd.Tpo -c -o rtspd-rtspd.o `test -f 'rtspd.c' || echo '$(srcdir)/'`rtspd.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/rtspd-rtspd.Tpo $(DEPDIR)/rtspd-rtspd.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='rtspd.c' object='rtspd-rtspd.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o rtspd-rtspd.o `test -f 'rtspd.c' || echo '$(srcdir)/'`rtspd.c
+
+rtspd-rtspd.obj: rtspd.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -MT rtspd-rtspd.obj -MD -MP -MF $(DEPDIR)/rtspd-rtspd.Tpo -c -o rtspd-rtspd.obj `if test -f 'rtspd.c'; then $(CYGPATH_W) 'rtspd.c'; else $(CYGPATH_W) '$(srcdir)/rtspd.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/rtspd-rtspd.Tpo $(DEPDIR)/rtspd-rtspd.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='rtspd.c' object='rtspd-rtspd.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rtspd_CFLAGS) $(CFLAGS) -c -o rtspd-rtspd.obj `if test -f 'rtspd.c'; then $(CYGPATH_W) 'rtspd.c'; else $(CYGPATH_W) '$(srcdir)/rtspd.c'; fi`
+
+../../lib/sockfilt-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-mprintf.Tpo -c -o ../../lib/sockfilt-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-mprintf.Tpo ../../lib/$(DEPDIR)/sockfilt-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/sockfilt-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/sockfilt-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-mprintf.Tpo -c -o ../../lib/sockfilt-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-mprintf.Tpo ../../lib/$(DEPDIR)/sockfilt-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/sockfilt-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/sockfilt-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-nonblock.Tpo -c -o ../../lib/sockfilt-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-nonblock.Tpo ../../lib/$(DEPDIR)/sockfilt-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/sockfilt-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/sockfilt-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-nonblock.Tpo -c -o ../../lib/sockfilt-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-nonblock.Tpo ../../lib/$(DEPDIR)/sockfilt-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/sockfilt-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/sockfilt-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-strtoofft.Tpo -c -o ../../lib/sockfilt-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-strtoofft.Tpo ../../lib/$(DEPDIR)/sockfilt-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/sockfilt-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/sockfilt-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-strtoofft.Tpo -c -o ../../lib/sockfilt-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-strtoofft.Tpo ../../lib/$(DEPDIR)/sockfilt-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/sockfilt-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/sockfilt-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-timeval.Tpo -c -o ../../lib/sockfilt-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-timeval.Tpo ../../lib/$(DEPDIR)/sockfilt-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/sockfilt-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/sockfilt-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-timeval.Tpo -c -o ../../lib/sockfilt-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-timeval.Tpo ../../lib/$(DEPDIR)/sockfilt-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/sockfilt-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/sockfilt-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-warnless.Tpo -c -o ../../lib/sockfilt-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-warnless.Tpo ../../lib/$(DEPDIR)/sockfilt-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/sockfilt-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/sockfilt-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-warnless.Tpo -c -o ../../lib/sockfilt-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-warnless.Tpo ../../lib/$(DEPDIR)/sockfilt-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/sockfilt-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+sockfilt-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT sockfilt-getpart.o -MD -MP -MF $(DEPDIR)/sockfilt-getpart.Tpo -c -o sockfilt-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sockfilt-getpart.Tpo $(DEPDIR)/sockfilt-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='sockfilt-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o sockfilt-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+sockfilt-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT sockfilt-getpart.obj -MD -MP -MF $(DEPDIR)/sockfilt-getpart.Tpo -c -o sockfilt-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sockfilt-getpart.Tpo $(DEPDIR)/sockfilt-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='sockfilt-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o sockfilt-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/sockfilt-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-base64.Tpo -c -o ../../lib/sockfilt-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-base64.Tpo ../../lib/$(DEPDIR)/sockfilt-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/sockfilt-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/sockfilt-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-base64.Tpo -c -o ../../lib/sockfilt-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-base64.Tpo ../../lib/$(DEPDIR)/sockfilt-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/sockfilt-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/sockfilt-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-memdebug.Tpo -c -o ../../lib/sockfilt-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-memdebug.Tpo ../../lib/$(DEPDIR)/sockfilt-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/sockfilt-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/sockfilt-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-memdebug.Tpo -c -o ../../lib/sockfilt-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-memdebug.Tpo ../../lib/$(DEPDIR)/sockfilt-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/sockfilt-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+sockfilt-util.o: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT sockfilt-util.o -MD -MP -MF $(DEPDIR)/sockfilt-util.Tpo -c -o sockfilt-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sockfilt-util.Tpo $(DEPDIR)/sockfilt-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='sockfilt-util.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o sockfilt-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+
+sockfilt-util.obj: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT sockfilt-util.obj -MD -MP -MF $(DEPDIR)/sockfilt-util.Tpo -c -o sockfilt-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sockfilt-util.Tpo $(DEPDIR)/sockfilt-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='sockfilt-util.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o sockfilt-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+
+sockfilt-sockfilt.o: sockfilt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT sockfilt-sockfilt.o -MD -MP -MF $(DEPDIR)/sockfilt-sockfilt.Tpo -c -o sockfilt-sockfilt.o `test -f 'sockfilt.c' || echo '$(srcdir)/'`sockfilt.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sockfilt-sockfilt.Tpo $(DEPDIR)/sockfilt-sockfilt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sockfilt.c' object='sockfilt-sockfilt.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o sockfilt-sockfilt.o `test -f 'sockfilt.c' || echo '$(srcdir)/'`sockfilt.c
+
+sockfilt-sockfilt.obj: sockfilt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT sockfilt-sockfilt.obj -MD -MP -MF $(DEPDIR)/sockfilt-sockfilt.Tpo -c -o sockfilt-sockfilt.obj `if test -f 'sockfilt.c'; then $(CYGPATH_W) 'sockfilt.c'; else $(CYGPATH_W) '$(srcdir)/sockfilt.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sockfilt-sockfilt.Tpo $(DEPDIR)/sockfilt-sockfilt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sockfilt.c' object='sockfilt-sockfilt.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o sockfilt-sockfilt.obj `if test -f 'sockfilt.c'; then $(CYGPATH_W) 'sockfilt.c'; else $(CYGPATH_W) '$(srcdir)/sockfilt.c'; fi`
+
+../../lib/sockfilt-inet_pton.o: ../../lib/inet_pton.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-inet_pton.o -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-inet_pton.Tpo -c -o ../../lib/sockfilt-inet_pton.o `test -f '../../lib/inet_pton.c' || echo '$(srcdir)/'`../../lib/inet_pton.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-inet_pton.Tpo ../../lib/$(DEPDIR)/sockfilt-inet_pton.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/inet_pton.c' object='../../lib/sockfilt-inet_pton.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-inet_pton.o `test -f '../../lib/inet_pton.c' || echo '$(srcdir)/'`../../lib/inet_pton.c
+
+../../lib/sockfilt-inet_pton.obj: ../../lib/inet_pton.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -MT ../../lib/sockfilt-inet_pton.obj -MD -MP -MF ../../lib/$(DEPDIR)/sockfilt-inet_pton.Tpo -c -o ../../lib/sockfilt-inet_pton.obj `if test -f '../../lib/inet_pton.c'; then $(CYGPATH_W) '../../lib/inet_pton.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/inet_pton.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sockfilt-inet_pton.Tpo ../../lib/$(DEPDIR)/sockfilt-inet_pton.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/inet_pton.c' object='../../lib/sockfilt-inet_pton.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sockfilt_CFLAGS) $(CFLAGS) -c -o ../../lib/sockfilt-inet_pton.obj `if test -f '../../lib/inet_pton.c'; then $(CYGPATH_W) '../../lib/inet_pton.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/inet_pton.c'; fi`
+
+../../lib/sws-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-mprintf.Tpo -c -o ../../lib/sws-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-mprintf.Tpo ../../lib/$(DEPDIR)/sws-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/sws-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/sws-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-mprintf.Tpo -c -o ../../lib/sws-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-mprintf.Tpo ../../lib/$(DEPDIR)/sws-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/sws-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/sws-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-nonblock.Tpo -c -o ../../lib/sws-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-nonblock.Tpo ../../lib/$(DEPDIR)/sws-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/sws-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/sws-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-nonblock.Tpo -c -o ../../lib/sws-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-nonblock.Tpo ../../lib/$(DEPDIR)/sws-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/sws-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/sws-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-strtoofft.Tpo -c -o ../../lib/sws-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-strtoofft.Tpo ../../lib/$(DEPDIR)/sws-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/sws-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/sws-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-strtoofft.Tpo -c -o ../../lib/sws-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-strtoofft.Tpo ../../lib/$(DEPDIR)/sws-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/sws-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/sws-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-timeval.Tpo -c -o ../../lib/sws-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-timeval.Tpo ../../lib/$(DEPDIR)/sws-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/sws-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/sws-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-timeval.Tpo -c -o ../../lib/sws-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-timeval.Tpo ../../lib/$(DEPDIR)/sws-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/sws-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/sws-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-warnless.Tpo -c -o ../../lib/sws-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-warnless.Tpo ../../lib/$(DEPDIR)/sws-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/sws-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/sws-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-warnless.Tpo -c -o ../../lib/sws-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-warnless.Tpo ../../lib/$(DEPDIR)/sws-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/sws-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+sws-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT sws-getpart.o -MD -MP -MF $(DEPDIR)/sws-getpart.Tpo -c -o sws-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sws-getpart.Tpo $(DEPDIR)/sws-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='sws-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o sws-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+sws-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT sws-getpart.obj -MD -MP -MF $(DEPDIR)/sws-getpart.Tpo -c -o sws-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sws-getpart.Tpo $(DEPDIR)/sws-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='sws-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o sws-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/sws-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-base64.Tpo -c -o ../../lib/sws-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-base64.Tpo ../../lib/$(DEPDIR)/sws-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/sws-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/sws-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-base64.Tpo -c -o ../../lib/sws-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-base64.Tpo ../../lib/$(DEPDIR)/sws-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/sws-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/sws-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-memdebug.Tpo -c -o ../../lib/sws-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-memdebug.Tpo ../../lib/$(DEPDIR)/sws-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/sws-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/sws-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-memdebug.Tpo -c -o ../../lib/sws-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-memdebug.Tpo ../../lib/$(DEPDIR)/sws-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/sws-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+sws-util.o: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT sws-util.o -MD -MP -MF $(DEPDIR)/sws-util.Tpo -c -o sws-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sws-util.Tpo $(DEPDIR)/sws-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='sws-util.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o sws-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+
+sws-util.obj: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT sws-util.obj -MD -MP -MF $(DEPDIR)/sws-util.Tpo -c -o sws-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sws-util.Tpo $(DEPDIR)/sws-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='sws-util.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o sws-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+
+sws-sws.o: sws.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT sws-sws.o -MD -MP -MF $(DEPDIR)/sws-sws.Tpo -c -o sws-sws.o `test -f 'sws.c' || echo '$(srcdir)/'`sws.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sws-sws.Tpo $(DEPDIR)/sws-sws.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sws.c' object='sws-sws.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o sws-sws.o `test -f 'sws.c' || echo '$(srcdir)/'`sws.c
+
+sws-sws.obj: sws.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT sws-sws.obj -MD -MP -MF $(DEPDIR)/sws-sws.Tpo -c -o sws-sws.obj `if test -f 'sws.c'; then $(CYGPATH_W) 'sws.c'; else $(CYGPATH_W) '$(srcdir)/sws.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sws-sws.Tpo $(DEPDIR)/sws-sws.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sws.c' object='sws-sws.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o sws-sws.obj `if test -f 'sws.c'; then $(CYGPATH_W) 'sws.c'; else $(CYGPATH_W) '$(srcdir)/sws.c'; fi`
+
+../../lib/sws-inet_pton.o: ../../lib/inet_pton.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-inet_pton.o -MD -MP -MF ../../lib/$(DEPDIR)/sws-inet_pton.Tpo -c -o ../../lib/sws-inet_pton.o `test -f '../../lib/inet_pton.c' || echo '$(srcdir)/'`../../lib/inet_pton.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-inet_pton.Tpo ../../lib/$(DEPDIR)/sws-inet_pton.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/inet_pton.c' object='../../lib/sws-inet_pton.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-inet_pton.o `test -f '../../lib/inet_pton.c' || echo '$(srcdir)/'`../../lib/inet_pton.c
+
+../../lib/sws-inet_pton.obj: ../../lib/inet_pton.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -MT ../../lib/sws-inet_pton.obj -MD -MP -MF ../../lib/$(DEPDIR)/sws-inet_pton.Tpo -c -o ../../lib/sws-inet_pton.obj `if test -f '../../lib/inet_pton.c'; then $(CYGPATH_W) '../../lib/inet_pton.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/inet_pton.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/sws-inet_pton.Tpo ../../lib/$(DEPDIR)/sws-inet_pton.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/inet_pton.c' object='../../lib/sws-inet_pton.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sws_CFLAGS) $(CFLAGS) -c -o ../../lib/sws-inet_pton.obj `if test -f '../../lib/inet_pton.c'; then $(CYGPATH_W) '../../lib/inet_pton.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/inet_pton.c'; fi`
+
+../../lib/tftpd-mprintf.o: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-mprintf.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-mprintf.Tpo -c -o ../../lib/tftpd-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-mprintf.Tpo ../../lib/$(DEPDIR)/tftpd-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/tftpd-mprintf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-mprintf.o `test -f '../../lib/mprintf.c' || echo '$(srcdir)/'`../../lib/mprintf.c
+
+../../lib/tftpd-mprintf.obj: ../../lib/mprintf.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-mprintf.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-mprintf.Tpo -c -o ../../lib/tftpd-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-mprintf.Tpo ../../lib/$(DEPDIR)/tftpd-mprintf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/mprintf.c' object='../../lib/tftpd-mprintf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-mprintf.obj `if test -f '../../lib/mprintf.c'; then $(CYGPATH_W) '../../lib/mprintf.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/mprintf.c'; fi`
+
+../../lib/tftpd-nonblock.o: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-nonblock.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-nonblock.Tpo -c -o ../../lib/tftpd-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-nonblock.Tpo ../../lib/$(DEPDIR)/tftpd-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/tftpd-nonblock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-nonblock.o `test -f '../../lib/nonblock.c' || echo '$(srcdir)/'`../../lib/nonblock.c
+
+../../lib/tftpd-nonblock.obj: ../../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-nonblock.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-nonblock.Tpo -c -o ../../lib/tftpd-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-nonblock.Tpo ../../lib/$(DEPDIR)/tftpd-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/nonblock.c' object='../../lib/tftpd-nonblock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-nonblock.obj `if test -f '../../lib/nonblock.c'; then $(CYGPATH_W) '../../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/nonblock.c'; fi`
+
+../../lib/tftpd-strtoofft.o: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-strtoofft.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-strtoofft.Tpo -c -o ../../lib/tftpd-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-strtoofft.Tpo ../../lib/$(DEPDIR)/tftpd-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/tftpd-strtoofft.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-strtoofft.o `test -f '../../lib/strtoofft.c' || echo '$(srcdir)/'`../../lib/strtoofft.c
+
+../../lib/tftpd-strtoofft.obj: ../../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-strtoofft.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-strtoofft.Tpo -c -o ../../lib/tftpd-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-strtoofft.Tpo ../../lib/$(DEPDIR)/tftpd-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/strtoofft.c' object='../../lib/tftpd-strtoofft.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-strtoofft.obj `if test -f '../../lib/strtoofft.c'; then $(CYGPATH_W) '../../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/strtoofft.c'; fi`
+
+../../lib/tftpd-timeval.o: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-timeval.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-timeval.Tpo -c -o ../../lib/tftpd-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-timeval.Tpo ../../lib/$(DEPDIR)/tftpd-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/tftpd-timeval.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-timeval.o `test -f '../../lib/timeval.c' || echo '$(srcdir)/'`../../lib/timeval.c
+
+../../lib/tftpd-timeval.obj: ../../lib/timeval.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-timeval.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-timeval.Tpo -c -o ../../lib/tftpd-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-timeval.Tpo ../../lib/$(DEPDIR)/tftpd-timeval.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/timeval.c' object='../../lib/tftpd-timeval.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-timeval.obj `if test -f '../../lib/timeval.c'; then $(CYGPATH_W) '../../lib/timeval.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/timeval.c'; fi`
+
+../../lib/tftpd-warnless.o: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-warnless.Tpo -c -o ../../lib/tftpd-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-warnless.Tpo ../../lib/$(DEPDIR)/tftpd-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/tftpd-warnless.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
+
+../../lib/tftpd-warnless.obj: ../../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-warnless.Tpo -c -o ../../lib/tftpd-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-warnless.Tpo ../../lib/$(DEPDIR)/tftpd-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/warnless.c' object='../../lib/tftpd-warnless.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
+
+tftpd-getpart.o: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT tftpd-getpart.o -MD -MP -MF $(DEPDIR)/tftpd-getpart.Tpo -c -o tftpd-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tftpd-getpart.Tpo $(DEPDIR)/tftpd-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='tftpd-getpart.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o tftpd-getpart.o `test -f 'getpart.c' || echo '$(srcdir)/'`getpart.c
+
+tftpd-getpart.obj: getpart.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT tftpd-getpart.obj -MD -MP -MF $(DEPDIR)/tftpd-getpart.Tpo -c -o tftpd-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tftpd-getpart.Tpo $(DEPDIR)/tftpd-getpart.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='getpart.c' object='tftpd-getpart.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o tftpd-getpart.obj `if test -f 'getpart.c'; then $(CYGPATH_W) 'getpart.c'; else $(CYGPATH_W) '$(srcdir)/getpart.c'; fi`
+
+../../lib/tftpd-base64.o: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-base64.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-base64.Tpo -c -o ../../lib/tftpd-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-base64.Tpo ../../lib/$(DEPDIR)/tftpd-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/tftpd-base64.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-base64.o `test -f '../../lib/base64.c' || echo '$(srcdir)/'`../../lib/base64.c
+
+../../lib/tftpd-base64.obj: ../../lib/base64.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-base64.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-base64.Tpo -c -o ../../lib/tftpd-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-base64.Tpo ../../lib/$(DEPDIR)/tftpd-base64.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/base64.c' object='../../lib/tftpd-base64.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-base64.obj `if test -f '../../lib/base64.c'; then $(CYGPATH_W) '../../lib/base64.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/base64.c'; fi`
+
+../../lib/tftpd-memdebug.o: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-memdebug.o -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-memdebug.Tpo -c -o ../../lib/tftpd-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-memdebug.Tpo ../../lib/$(DEPDIR)/tftpd-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/tftpd-memdebug.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-memdebug.o `test -f '../../lib/memdebug.c' || echo '$(srcdir)/'`../../lib/memdebug.c
+
+../../lib/tftpd-memdebug.obj: ../../lib/memdebug.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT ../../lib/tftpd-memdebug.obj -MD -MP -MF ../../lib/$(DEPDIR)/tftpd-memdebug.Tpo -c -o ../../lib/tftpd-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/tftpd-memdebug.Tpo ../../lib/$(DEPDIR)/tftpd-memdebug.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../../lib/memdebug.c' object='../../lib/tftpd-memdebug.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o ../../lib/tftpd-memdebug.obj `if test -f '../../lib/memdebug.c'; then $(CYGPATH_W) '../../lib/memdebug.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/memdebug.c'; fi`
+
+tftpd-util.o: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT tftpd-util.o -MD -MP -MF $(DEPDIR)/tftpd-util.Tpo -c -o tftpd-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tftpd-util.Tpo $(DEPDIR)/tftpd-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='tftpd-util.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o tftpd-util.o `test -f 'util.c' || echo '$(srcdir)/'`util.c
+
+tftpd-util.obj: util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT tftpd-util.obj -MD -MP -MF $(DEPDIR)/tftpd-util.Tpo -c -o tftpd-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tftpd-util.Tpo $(DEPDIR)/tftpd-util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='util.c' object='tftpd-util.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o tftpd-util.obj `if test -f 'util.c'; then $(CYGPATH_W) 'util.c'; else $(CYGPATH_W) '$(srcdir)/util.c'; fi`
+
+tftpd-tftpd.o: tftpd.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT tftpd-tftpd.o -MD -MP -MF $(DEPDIR)/tftpd-tftpd.Tpo -c -o tftpd-tftpd.o `test -f 'tftpd.c' || echo '$(srcdir)/'`tftpd.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tftpd-tftpd.Tpo $(DEPDIR)/tftpd-tftpd.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tftpd.c' object='tftpd-tftpd.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o tftpd-tftpd.o `test -f 'tftpd.c' || echo '$(srcdir)/'`tftpd.c
+
+tftpd-tftpd.obj: tftpd.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -MT tftpd-tftpd.obj -MD -MP -MF $(DEPDIR)/tftpd-tftpd.Tpo -c -o tftpd-tftpd.obj `if test -f 'tftpd.c'; then $(CYGPATH_W) 'tftpd.c'; else $(CYGPATH_W) '$(srcdir)/tftpd.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tftpd-tftpd.Tpo $(DEPDIR)/tftpd-tftpd.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tftpd.c' object='tftpd-tftpd.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tftpd_CFLAGS) $(CFLAGS) -c -o tftpd-tftpd.obj `if test -f 'tftpd.c'; then $(CYGPATH_W) 'tftpd.c'; else $(CYGPATH_W) '$(srcdir)/tftpd.c'; fi`
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+@CURLDEBUG_FALSE@all-local:
+all-am: Makefile $(PROGRAMS) all-local
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+	-rm -f ../../lib/$(DEPDIR)/$(am__dirstamp)
+	-rm -f ../../lib/$(am__dirstamp)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+	mostlyclean-am
+
+distclean: distclean-am
+	-rm -rf ../../lib/$(DEPDIR) ./$(DEPDIR)
+	-rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+	distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -rf ../../lib/$(DEPDIR) ./$(DEPDIR)
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+	clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \
+	ctags ctags-am distclean distclean-compile distclean-generic \
+	distclean-libtool distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-dvi install-dvi-am install-exec \
+	install-exec-am install-html install-html-am install-info \
+	install-info-am install-man install-pdf install-pdf-am \
+	install-ps install-ps-am install-strip installcheck \
+	installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
+
+# for debug builds, we scan the sources on all regular make invokes
+@CURLDEBUG_TRUE@all-local: checksrc
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.inc b/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.inc
new file mode 100644
index 0000000..c3ea664
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/Makefile.inc
@@ -0,0 +1,70 @@
+noinst_PROGRAMS = getpart resolve rtspd sockfilt sws tftpd fake_ntlm
+
+CURLX_SRCS = \
+ ../../lib/mprintf.c \
+ ../../lib/nonblock.c \
+ ../../lib/strtoofft.c \
+ ../../lib/timeval.c \
+ ../../lib/warnless.c
+
+CURLX_HDRS = \
+ ../../lib/curlx.h \
+ ../../lib/nonblock.h \
+ ../../lib/strtoofft.h \
+ ../../lib/timeval.h \
+ ../../lib/warnless.h
+
+USEFUL = \
+ getpart.c \
+ getpart.h \
+ server_setup.h \
+ ../../lib/base64.c \
+ ../../lib/curl_base64.h \
+ ../../lib/memdebug.c \
+ ../../lib/memdebug.h
+
+UTIL = \
+ util.c \
+ util.h
+
+getpart_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) \
+ testpart.c
+getpart_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+getpart_CFLAGS = $(AM_CFLAGS)
+
+resolve_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ resolve.c
+resolve_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+resolve_CFLAGS = $(AM_CFLAGS)
+
+rtspd_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ rtspd.c
+rtspd_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+rtspd_CFLAGS = $(AM_CFLAGS)
+
+sockfilt_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ sockfilt.c \
+ ../../lib/inet_pton.c
+sockfilt_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+sockfilt_CFLAGS = $(AM_CFLAGS)
+
+sws_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ sws.c \
+ ../../lib/inet_pton.c
+sws_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+sws_CFLAGS = $(AM_CFLAGS)
+
+tftpd_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ server_sockaddr.h \
+ tftpd.c \
+ tftp.h
+tftpd_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+tftpd_CFLAGS = $(AM_CFLAGS)
+
+fake_ntlm_SOURCES = $(CURLX_SRCS) $(CURLX_HDRS) $(USEFUL) $(UTIL) \
+ fake_ntlm.c
+fake_ntlm_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
+fake_ntlm_CFLAGS = $(AM_CFLAGS)
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/base64.pl b/ap/lib/libcurl/curl-7.54.1/tests/server/base64.pl
new file mode 100644
index 0000000..2eab1fa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/base64.pl
@@ -0,0 +1,9 @@
+#!/usr/bin/perl
+
+use MIME::Base64 qw(encode_base64);
+
+my $buf;
+while(read(STDIN, $buf, 60*57)) {
+    my $enc = encode_base64($buf);
+    print "$enc";
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/fake_ntlm.c b/ap/lib/libcurl/curl-7.54.1/tests/server/fake_ntlm.c
new file mode 100644
index 0000000..0d1b3e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/fake_ntlm.c
@@ -0,0 +1,284 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2010, Mandy Wu, <mandy.wu@intel.com>
+ * Copyright (C) 2011 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+/*
+ * This is a fake ntlm_auth, which is used for testing NTLM single-sign-on.
+ * When DEBUGBUILD is defined, libcurl invoke this tool instead of real winbind
+ * daemon helper /usr/bin/ntlm_auth. This tool will accept commands and
+ * responses with a pre-written string saved in test case test2005.
+ */
+
+#define ENABLE_CURLX_PRINTF
+#include "curlx.h" /* from the private lib dir */
+#include "getpart.h"
+#include "util.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+#define LOGFILE "log/fake_ntlm%d.log"
+
+const char *serverlogfile;
+
+/*
+ * Returns an allocated buffer with printable representation of input
+ * buffer contents or returns NULL on out of memory condition.
+ */
+static char *printable(char *inbuf, size_t inlength)
+{
+  char *outbuf;
+  char *newbuf;
+  size_t newsize;
+  size_t outsize;
+  size_t outincr = 0;
+  size_t i, o = 0;
+
+#define HEX_FMT_STR  "[0x%02X]"
+#define HEX_STR_LEN  6
+#define NOTHING_STR  "[NOTHING]"
+#define NOTHING_LEN  9
+
+  if(!inlength)
+    inlength = strlen(inbuf);
+
+  if(inlength) {
+    outincr = ((inlength/2) < (HEX_STR_LEN+1)) ? HEX_STR_LEN+1 : inlength/2;
+    outsize = inlength + outincr;
+  }
+  else
+    outsize = NOTHING_LEN + 1;
+
+  outbuf = malloc(outsize);
+  if(!outbuf)
+    return NULL;
+
+  if(!inlength) {
+    snprintf(&outbuf[0], outsize, "%s", NOTHING_STR);
+    return outbuf;
+  }
+
+  for(i=0; i<inlength; i++) {
+
+    if(o > outsize - (HEX_STR_LEN + 1)) {
+      newsize = outsize + outincr;
+      newbuf = realloc(outbuf, newsize);
+      if(!newbuf) {
+        free(outbuf);
+        return NULL;
+      }
+      outbuf = newbuf;
+      outsize = newsize;
+    }
+
+    if((inbuf[i] > 0x20) && (inbuf[i] < 0x7F)) {
+      outbuf[o] = inbuf[i];
+      o++;
+    }
+    else {
+      snprintf(&outbuf[o], outsize - o, HEX_FMT_STR, inbuf[i]);
+      o += HEX_STR_LEN;
+    }
+
+  }
+  outbuf[o] = '\0';
+
+  return outbuf;
+}
+
+int main(int argc, char *argv[])
+{
+  char buf[1024];
+  char logfilename[256];
+  FILE *stream;
+  char *filename;
+  int error;
+  char *type1_input = NULL, *type3_input = NULL;
+  char *type1_output = NULL, *type3_output = NULL;
+  size_t size = 0;
+  long testnum;
+  const char *env;
+  int arg = 1;
+  const char *helper_user = "unknown";
+  const char *helper_proto = "unknown";
+  const char *helper_domain = "unknown";
+  bool use_cached_creds = FALSE;
+  char *msgbuf;
+
+  buf[0] = '\0';
+
+  while(argc > arg) {
+    if(!strcmp("--use-cached-creds", argv[arg])) {
+      use_cached_creds = TRUE;
+      arg++;
+    }
+    else if(!strcmp("--helper-protocol", argv[arg])) {
+      arg++;
+      if(argc > arg)
+        helper_proto = argv[arg++];
+    }
+    else if(!strcmp("--username", argv[arg])) {
+      arg++;
+      if(argc > arg)
+        helper_user = argv[arg++];
+    }
+    else if(!strcmp("--domain", argv[arg])) {
+      arg++;
+      if(argc > arg)
+        helper_domain = argv[arg++];
+    }
+    else {
+      puts("Usage: fake_ntlm [option]\n"
+           " --use-cached-creds\n"
+           " --helper-protocol [protocol]\n"
+           " --username [username]\n"
+           " --domain [domain]");
+      exit(1);
+    }
+  }
+
+  env = getenv("CURL_NTLM_AUTH_TESTNUM");
+  if(env) {
+    char *endptr;
+    long lnum = strtol(env, &endptr, 10);
+    if((endptr != env + strlen(env)) || (lnum < 1L)) {
+      fprintf(stderr, "Test number not valid in CURL_NTLM_AUTH_TESTNUM");
+      exit(1);
+    }
+    testnum = lnum;
+  }
+  else {
+    fprintf(stderr, "Test number not specified in CURL_NTLM_AUTH_TESTNUM");
+    exit(1);
+  }
+
+  /* logmsg cannot be used until this file name is set */
+  snprintf(logfilename, sizeof(logfilename), LOGFILE, testnum);
+  serverlogfile = logfilename;
+
+  logmsg("fake_ntlm (user: %s) (proto: %s) (domain: %s) (cached creds: %s)",
+         helper_user, helper_proto, helper_domain,
+         (use_cached_creds) ? "yes" : "no");
+
+  env = getenv("CURL_NTLM_AUTH_SRCDIR");
+  if(env) {
+    path = env;
+  }
+
+  filename = test2file(testnum);
+  stream=fopen(filename, "rb");
+  if(!stream) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("Error opening file: %s", filename);
+    logmsg("Couldn't open test file %ld", testnum);
+    exit(1);
+  }
+  else {
+    /* get the ntlm_auth input/output */
+    error = getpart(&type1_input, &size, "ntlm_auth_type1", "input", stream);
+    fclose(stream);
+    if(error || size == 0) {
+      logmsg("getpart() type 1 input failed with error: %d", error);
+      exit(1);
+    }
+  }
+
+  stream=fopen(filename, "rb");
+  if(!stream) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("Error opening file: %s", filename);
+    logmsg("Couldn't open test file %ld", testnum);
+    exit(1);
+  }
+  else {
+    size = 0;
+    error = getpart(&type3_input, &size, "ntlm_auth_type3", "input", stream);
+    fclose(stream);
+    if(error || size == 0) {
+      logmsg("getpart() type 3 input failed with error: %d", error);
+      exit(1);
+    }
+  }
+
+  while(fgets(buf, sizeof(buf), stdin)) {
+    if(strcmp(buf, type1_input) == 0) {
+      stream=fopen(filename, "rb");
+      if(!stream) {
+        error = errno;
+        logmsg("fopen() failed with error: %d %s", error, strerror(error));
+        logmsg("Error opening file: %s", filename);
+        logmsg("Couldn't open test file %ld", testnum);
+        exit(1);
+      }
+      else {
+        size = 0;
+        error = getpart(&type1_output, &size, "ntlm_auth_type1", "output",
+                        stream);
+        fclose(stream);
+        if(error || size == 0) {
+          logmsg("getpart() type 1 output failed with error: %d", error);
+          exit(1);
+        }
+      }
+      printf("%s", type1_output);
+      fflush(stdout);
+    }
+    else if(strncmp(buf, type3_input, strlen(type3_input)) == 0) {
+      stream=fopen(filename, "rb");
+      if(!stream) {
+        error = errno;
+        logmsg("fopen() failed with error: %d %s", error, strerror(error));
+        logmsg("Error opening file: %s", filename);
+        logmsg("Couldn't open test file %ld", testnum);
+        exit(1);
+      }
+      else {
+        size = 0;
+        error = getpart(&type3_output, &size, "ntlm_auth_type3", "output",
+                        stream);
+        fclose(stream);
+        if(error || size == 0) {
+          logmsg("getpart() type 3 output failed with error: %d", error);
+          exit(1);
+        }
+      }
+      printf("%s", type3_output);
+      fflush(stdout);
+    }
+    else {
+      printf("Unknown request\n");
+      msgbuf = printable(buf, 0);
+      if(msgbuf) {
+        logmsg("invalid input: '%s'\n", msgbuf);
+        free(msgbuf);
+      }
+      else
+        logmsg("OOM formatting invalid input: '%s'\n", buf);
+      exit(1);
+    }
+  }
+  logmsg("Exit");
+  return 1;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/getpart.c b/ap/lib/libcurl/curl-7.54.1/tests/server/getpart.c
new file mode 100644
index 0000000..bb8351b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/getpart.c
@@ -0,0 +1,454 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+#include "getpart.h"
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+
+/* just to please curl_base64.h we create a fake struct */
+struct Curl_easy {
+  int fake;
+};
+
+#include "curl_base64.h"
+#include "curl_memory.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+#define EAT_SPACE(p) while(*(p) && ISSPACE(*(p))) (p)++
+
+#define EAT_WORD(p)  while(*(p) && !ISSPACE(*(p)) && ('>' != *(p))) (p)++
+
+#ifdef DEBUG_GETPART
+#define show(x) printf x
+#else
+#define show(x) Curl_nop_stmt
+#endif
+
+#if defined(_MSC_VER) && defined(_DLL)
+#  pragma warning(disable:4232) /* MSVC extension, dllimport identity */
+#endif
+
+curl_malloc_callback Curl_cmalloc = (curl_malloc_callback)malloc;
+curl_free_callback Curl_cfree = (curl_free_callback)free;
+curl_realloc_callback Curl_crealloc = (curl_realloc_callback)realloc;
+curl_strdup_callback Curl_cstrdup = (curl_strdup_callback)strdup;
+curl_calloc_callback Curl_ccalloc = (curl_calloc_callback)calloc;
+#if defined(WIN32) && defined(UNICODE)
+curl_wcsdup_callback Curl_cwcsdup = (curl_wcsdup_callback)_wcsdup;
+#endif
+
+#if defined(_MSC_VER) && defined(_DLL)
+#  pragma warning(default:4232) /* MSVC extension, dllimport identity */
+#endif
+
+/*
+ * readline()
+ *
+ * Reads a complete line from a file into a dynamically allocated buffer.
+ *
+ * Calling function may call this multiple times with same 'buffer'
+ * and 'bufsize' pointers to avoid multiple buffer allocations. Buffer
+ * will be reallocated and 'bufsize' increased until whole line fits in
+ * buffer before returning it.
+ *
+ * Calling function is responsible to free allocated buffer.
+ *
+ * This function may return:
+ *   GPE_OUT_OF_MEMORY
+ *   GPE_END_OF_FILE
+ *   GPE_OK
+ */
+
+static int readline(char **buffer, size_t *bufsize, FILE *stream)
+{
+  size_t offset = 0;
+  size_t length;
+  char *newptr;
+
+  if(!*buffer) {
+    *buffer = malloc(128);
+    if(!*buffer)
+      return GPE_OUT_OF_MEMORY;
+    *bufsize = 128;
+  }
+
+  for(;;) {
+    int bytestoread = curlx_uztosi(*bufsize - offset);
+
+    if(!fgets(*buffer + offset, bytestoread, stream))
+      return (offset != 0) ? GPE_OK : GPE_END_OF_FILE;
+
+    length = offset + strlen(*buffer + offset);
+    if(*(*buffer + length - 1) == '\n')
+      break;
+    offset = length;
+    if(length < *bufsize - 1)
+      continue;
+
+    newptr = realloc(*buffer, *bufsize * 2);
+    if(!newptr)
+      return GPE_OUT_OF_MEMORY;
+    *buffer = newptr;
+    *bufsize *= 2;
+  }
+
+  return GPE_OK;
+}
+
+/*
+ * appenddata()
+ *
+ * This appends data from a given source buffer to the end of the used part of
+ * a destination buffer. Arguments relative to the destination buffer are, the
+ * address of a pointer to the destination buffer 'dst_buf', the length of data
+ * in destination buffer excluding potential null string termination 'dst_len',
+ * the allocated size of destination buffer 'dst_alloc'. All three destination
+ * buffer arguments may be modified by this function. Arguments relative to the
+ * source buffer are, a pointer to the source buffer 'src_buf' and indication
+ * whether the source buffer is base64 encoded or not 'src_b64'.
+ *
+ * If the source buffer is indicated to be base64 encoded, this appends the
+ * decoded data, binary or whatever, to the destination. The source buffer
+ * may not hold binary data, only a null terminated string is valid content.
+ *
+ * Destination buffer will be enlarged and relocated as needed.
+ *
+ * Calling function is responsible to provide preallocated destination
+ * buffer and also to deallocate it when no longer needed.
+ *
+ * This function may return:
+ *   GPE_OUT_OF_MEMORY
+ *   GPE_OK
+ */
+
+static int appenddata(char  **dst_buf,   /* dest buffer */
+                      size_t *dst_len,   /* dest buffer data length */
+                      size_t *dst_alloc, /* dest buffer allocated size */
+                      char   *src_buf,   /* source buffer */
+                      int     src_b64)   /* != 0 if source is base64 encoded */
+{
+  size_t need_alloc = 0;
+  size_t src_len = strlen(src_buf);
+
+  if(!src_len)
+    return GPE_OK;
+
+  need_alloc = src_len + *dst_len + 1;
+
+  if(src_b64) {
+    if(src_buf[src_len - 1] == '\r')
+      src_len--;
+
+    if(src_buf[src_len - 1] == '\n')
+      src_len--;
+  }
+
+  /* enlarge destination buffer if required */
+  if(need_alloc > *dst_alloc) {
+    size_t newsize = need_alloc * 2;
+    char *newptr = realloc(*dst_buf, newsize);
+    if(!newptr) {
+      return GPE_OUT_OF_MEMORY;
+    }
+    *dst_alloc = newsize;
+    *dst_buf = newptr;
+  }
+
+  /* memcpy to support binary blobs */
+  memcpy(*dst_buf + *dst_len, src_buf, src_len);
+  *dst_len += src_len;
+  *(*dst_buf + *dst_len) = '\0';
+
+  return GPE_OK;
+}
+
+static int decodedata(char  **buf,   /* dest buffer */
+                      size_t *len)   /* dest buffer data length */
+{
+  CURLcode error = CURLE_OK;
+  unsigned char *buf64 = NULL;
+  size_t src_len = 0;
+
+  if(!*len)
+    return GPE_OK;
+
+  /* base64 decode the given buffer */
+  error = Curl_base64_decode(*buf, &buf64, &src_len);
+  if(error)
+    return GPE_OUT_OF_MEMORY;
+
+  if(!src_len) {
+    /*
+    ** currently there is no way to tell apart an OOM condition in
+    ** Curl_base64_decode() from zero length decoded data. For now,
+    ** let's just assume it is an OOM condition, currently we have
+    ** no input for this function that decodes to zero length data.
+    */
+    free(buf64);
+
+    return GPE_OUT_OF_MEMORY;
+  }
+
+  /* memcpy to support binary blobs */
+  memcpy(*buf, buf64, src_len);
+  *len = src_len;
+  *(*buf + src_len) = '\0';
+
+  free(buf64);
+
+  return GPE_OK;
+}
+
+/*
+ * getpart()
+ *
+ * This returns whole contents of specified XML-like section and subsection
+ * from the given file. This is mostly used to retrieve a specific part from
+ * a test definition file for consumption by test suite servers.
+ *
+ * Data is returned in a dynamically allocated buffer, a pointer to this data
+ * and the size of the data is stored at the addresses that caller specifies.
+ *
+ * If the returned data is a string the returned size will be the length of
+ * the string excluding null termination. Otherwise it will just be the size
+ * of the returned binary data.
+ *
+ * Calling function is responsible to free returned buffer.
+ *
+ * This function may return:
+ *   GPE_NO_BUFFER_SPACE
+ *   GPE_OUT_OF_MEMORY
+ *   GPE_OK
+ */
+
+int getpart(char **outbuf, size_t *outlen,
+            const char *main, const char *sub, FILE *stream)
+{
+# define MAX_TAG_LEN 79
+  char couter[MAX_TAG_LEN+1]; /* current outermost section */
+  char cmain[MAX_TAG_LEN+1];  /* current main section */
+  char csub[MAX_TAG_LEN+1];   /* current sub section */
+  char ptag[MAX_TAG_LEN+1];   /* potential tag */
+  char patt[MAX_TAG_LEN+1];   /* potential attributes */
+  char *buffer = NULL;
+  char *ptr;
+  char *end;
+  union {
+    ssize_t sig;
+     size_t uns;
+  } len;
+  size_t bufsize = 0;
+  size_t outalloc = 256;
+  int in_wanted_part = 0;
+  int base64 = 0;
+  int error;
+
+  enum {
+    STATE_OUTSIDE = 0,
+    STATE_OUTER   = 1,
+    STATE_INMAIN  = 2,
+    STATE_INSUB   = 3,
+    STATE_ILLEGAL = 4
+  } state = STATE_OUTSIDE;
+
+  *outlen = 0;
+  *outbuf = malloc(outalloc);
+  if(!*outbuf)
+    return GPE_OUT_OF_MEMORY;
+  *(*outbuf) = '\0';
+
+  couter[0] = cmain[0] = csub[0] = ptag[0] = patt[0] = '\0';
+
+  while((error = readline(&buffer, &bufsize, stream)) == GPE_OK) {
+
+    ptr = buffer;
+    EAT_SPACE(ptr);
+
+    if('<' != *ptr) {
+      if(in_wanted_part) {
+        show(("=> %s", buffer));
+        error = appenddata(outbuf, outlen, &outalloc, buffer, base64);
+        if(error)
+          break;
+      }
+      continue;
+    }
+
+    ptr++;
+
+    if('/' == *ptr) {
+      /*
+      ** closing section tag
+      */
+
+      ptr++;
+      end = ptr;
+      EAT_WORD(end);
+      len.sig = end - ptr;
+      if(len.sig > MAX_TAG_LEN) {
+        error = GPE_NO_BUFFER_SPACE;
+        break;
+      }
+      memcpy(ptag, ptr, len.uns);
+      ptag[len.uns] = '\0';
+
+      if((STATE_INSUB == state) && !strcmp(csub, ptag)) {
+        /* end of current sub section */
+        state = STATE_INMAIN;
+        csub[0] = '\0';
+        if(in_wanted_part) {
+          /* end of wanted part */
+          in_wanted_part = 0;
+
+          /* Do we need to base64 decode the data? */
+          if(base64) {
+            error = decodedata(outbuf, outlen);
+            if(error)
+              return error;
+          }
+          break;
+        }
+      }
+      else if((STATE_INMAIN == state) && !strcmp(cmain, ptag)) {
+        /* end of current main section */
+        state = STATE_OUTER;
+        cmain[0] = '\0';
+        if(in_wanted_part) {
+          /* end of wanted part */
+          in_wanted_part = 0;
+
+          /* Do we need to base64 decode the data? */
+          if(base64) {
+            error = decodedata(outbuf, outlen);
+            if(error)
+              return error;
+          }
+          break;
+        }
+      }
+      else if((STATE_OUTER == state) && !strcmp(couter, ptag)) {
+        /* end of outermost file section */
+        state = STATE_OUTSIDE;
+        couter[0] = '\0';
+        if(in_wanted_part) {
+          /* end of wanted part */
+          in_wanted_part = 0;
+          break;
+        }
+      }
+
+    }
+    else if(!in_wanted_part) {
+      /*
+      ** opening section tag
+      */
+
+      /* get potential tag */
+      end = ptr;
+      EAT_WORD(end);
+      len.sig = end - ptr;
+      if(len.sig > MAX_TAG_LEN) {
+        error = GPE_NO_BUFFER_SPACE;
+        break;
+      }
+      memcpy(ptag, ptr, len.uns);
+      ptag[len.uns] = '\0';
+
+      /* ignore comments, doctypes and xml declarations */
+      if(('!' == ptag[0]) || ('?' == ptag[0])) {
+        show(("* ignoring (%s)", buffer));
+        continue;
+      }
+
+      /* get all potential attributes */
+      ptr = end;
+      EAT_SPACE(ptr);
+      end = ptr;
+      while(*end && ('>' != *end))
+        end++;
+      len.sig = end - ptr;
+      if(len.sig > MAX_TAG_LEN) {
+        error = GPE_NO_BUFFER_SPACE;
+        break;
+      }
+      memcpy(patt, ptr, len.uns);
+      patt[len.uns] = '\0';
+
+      if(STATE_OUTSIDE == state) {
+        /* outermost element (<testcase>) */
+        strcpy(couter, ptag);
+        state = STATE_OUTER;
+        continue;
+      }
+      else if(STATE_OUTER == state) {
+        /* start of a main section */
+        strcpy(cmain, ptag);
+        state = STATE_INMAIN;
+        continue;
+      }
+      else if(STATE_INMAIN == state) {
+        /* start of a sub section */
+        strcpy(csub, ptag);
+        state = STATE_INSUB;
+        if(!strcmp(cmain, main) && !strcmp(csub, sub)) {
+          /* start of wanted part */
+          in_wanted_part = 1;
+          if(strstr(patt, "base64="))
+              /* bit rough test, but "mostly" functional, */
+              /* treat wanted part data as base64 encoded */
+              base64 = 1;
+        }
+        continue;
+      }
+
+    }
+
+    if(in_wanted_part) {
+      show(("=> %s", buffer));
+      error = appenddata(outbuf, outlen, &outalloc, buffer, base64);
+      if(error)
+        break;
+    }
+
+  } /* while */
+
+  free(buffer);
+
+  if(error != GPE_OK) {
+    if(error == GPE_END_OF_FILE)
+      error = GPE_OK;
+    else {
+      free(*outbuf);
+      *outbuf = NULL;
+      *outlen = 0;
+    }
+  }
+
+  return error;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/getpart.h b/ap/lib/libcurl/curl-7.54.1/tests/server/getpart.h
new file mode 100644
index 0000000..2773685
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/getpart.h
@@ -0,0 +1,34 @@
+#ifndef HEADER_CURL_SERVER_GETPART_H
+#define HEADER_CURL_SERVER_GETPART_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+#define GPE_NO_BUFFER_SPACE -2
+#define GPE_OUT_OF_MEMORY   -1
+#define GPE_OK               0
+#define GPE_END_OF_FILE      1
+
+int getpart(char **outbuf, size_t *outlen,
+            const char *main, const char *sub, FILE *stream);
+
+#endif /* HEADER_CURL_SERVER_GETPART_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/resolve.c b/ap/lib/libcurl/curl-7.54.1/tests/server/resolve.c
new file mode 100644
index 0000000..206245a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/resolve.c
@@ -0,0 +1,154 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+/* Purpose
+ *
+ * Resolve the given name, using system name resolve functions (NOT any
+ * function provided by libcurl). Used to see if the name exists and thus if
+ * we can allow a test case to use it for testing.
+ *
+ * Like if 'localhost' actual exists etc.
+ *
+ */
+
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef _XOPEN_SOURCE_EXTENDED
+/* This define is "almost" required to build on HPUX 11 */
+#include <arpa/inet.h>
+#endif
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+#include "util.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+static bool use_ipv6 = FALSE;
+static const char *ipv_inuse = "IPv4";
+
+const char *serverlogfile=""; /* for a util.c function we don't use */
+
+int main(int argc, char *argv[])
+{
+  int arg=1;
+  const char *host = NULL;
+  int rc = 0;
+
+  while(argc>arg) {
+    if(!strcmp("--version", argv[arg])) {
+      printf("resolve IPv4%s\n",
+#ifdef ENABLE_IPV6
+             "/IPv6"
+#else
+             ""
+#endif
+             );
+      return 0;
+    }
+    else if(!strcmp("--ipv6", argv[arg])) {
+      ipv_inuse = "IPv6";
+      use_ipv6 = TRUE;
+      arg++;
+    }
+    else if(!strcmp("--ipv4", argv[arg])) {
+      /* for completeness, we support this option as well */
+      ipv_inuse = "IPv4";
+      use_ipv6 = FALSE;
+      arg++;
+    }
+    else {
+      host = argv[arg++];
+    }
+  }
+  if(!host) {
+    puts("Usage: resolve [option] <host>\n"
+         " --version\n"
+         " --ipv4"
+#ifdef ENABLE_IPV6
+         "\n --ipv6"
+#endif
+         );
+    return 1;
+  }
+
+#ifdef WIN32
+  win32_init();
+  atexit(win32_cleanup);
+#endif
+
+  if(!use_ipv6) {
+    /* gethostbyname() resolve */
+    struct hostent *he;
+
+    he = gethostbyname(host);
+
+    rc = !he;
+  }
+  else {
+#ifdef ENABLE_IPV6
+    /* Check that the system has IPv6 enabled before checking the resolver */
+    curl_socket_t s = socket(PF_INET6, SOCK_DGRAM, 0);
+    if(s == CURL_SOCKET_BAD)
+      /* an IPv6 address was requested and we can't get/use one */
+      rc = -1;
+    else {
+      sclose(s);
+    }
+
+    if(rc == 0) {
+      /* getaddrinfo() resolve */
+      struct addrinfo *ai;
+      struct addrinfo hints;
+
+      memset(&hints, 0, sizeof(hints));
+      hints.ai_family = PF_INET6;
+      hints.ai_socktype = SOCK_STREAM;
+      hints.ai_flags = AI_CANONNAME;
+      /* Use parenthesis around functions to stop them from being replaced by
+         the macro in memdebug.h */
+      rc = (getaddrinfo)(host, "80", &hints, &ai);
+      if(rc == 0)
+        (freeaddrinfo)(ai);
+    }
+
+#else
+    puts("IPv6 support has been disabled in this program");
+    return 1;
+#endif
+  }
+  if(rc)
+    printf("Resolving %s '%s' didn't work\n", ipv_inuse, host);
+
+  return !!rc;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/rtspd.c b/ap/lib/libcurl/curl-7.54.1/tests/server/rtspd.c
new file mode 100644
index 0000000..ae42f5a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/rtspd.c
@@ -0,0 +1,1483 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+/*
+ * curl's test suite Real Time Streaming Protocol (RTSP) server.
+ *
+ * This source file was started based on curl's HTTP test suite server.
+ */
+
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_ARPA_INET_H
+#include <arpa/inet.h>
+#endif
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+#ifdef HAVE_NETINET_TCP_H
+#include <netinet/tcp.h> /* for TCP_NODELAY */
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+#include "getpart.h"
+#include "util.h"
+#include "server_sockaddr.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+#ifdef USE_WINSOCK
+#undef  EINTR
+#define EINTR    4 /* errno.h value */
+#undef  ERANGE
+#define ERANGE  34 /* errno.h value */
+#endif
+
+#ifdef ENABLE_IPV6
+static bool use_ipv6 = FALSE;
+#endif
+static const char *ipv_inuse = "IPv4";
+static int serverlogslocked = 0;
+
+#define REQBUFSIZ 150000
+#define REQBUFSIZ_TXT "149999"
+
+static long prevtestno=-1;    /* previous test number we served */
+static long prevpartno=-1;    /* previous part number we served */
+static bool prevbounce=FALSE; /* instructs the server to increase the part
+                                 number for a test in case the identical
+                                 testno+partno request shows up again */
+
+#define RCMD_NORMALREQ 0 /* default request, use the tests file normally */
+#define RCMD_IDLE      1 /* told to sit idle */
+#define RCMD_STREAM    2 /* told to stream */
+
+typedef enum {
+  RPROT_NONE = 0,
+  RPROT_RTSP = 1,
+  RPROT_HTTP = 2
+} reqprot_t;
+
+#define SET_RTP_PKT_CHN(p,c)  ((p)[1] = (unsigned char)((c) & 0xFF))
+
+#define SET_RTP_PKT_LEN(p,l) (((p)[2] = (unsigned char)(((l) >> 8) & 0xFF)), \
+                              ((p)[3] = (unsigned char)((l) & 0xFF)))
+
+struct httprequest {
+  char reqbuf[REQBUFSIZ]; /* buffer area for the incoming request */
+  size_t checkindex; /* where to start checking of the request */
+  size_t offset;     /* size of the incoming request */
+  long testno;       /* test number found in the request */
+  long partno;       /* part number found in the request */
+  bool open;      /* keep connection open info, as found in the request */
+  bool auth_req;  /* authentication required, don't wait for body unless
+                     there's an Authorization header */
+  bool auth;      /* Authorization header present in the incoming request */
+  size_t cl;      /* Content-Length of the incoming request */
+  bool digest;    /* Authorization digest header found */
+  bool ntlm;      /* Authorization ntlm header found */
+  int pipe;       /* if non-zero, expect this many requests to do a "piped"
+                     request/response */
+  int skip;       /* if non-zero, the server is instructed to not read this
+                     many bytes from a PUT/POST request. Ie the client sends N
+                     bytes said in Content-Length, but the server only reads N
+                     - skip bytes. */
+  int rcmd;       /* doing a special command, see defines above */
+  reqprot_t protocol; /* request protocol, HTTP or RTSP */
+  int prot_version;   /* HTTP or RTSP version (major*10 + minor) */
+  bool pipelining;    /* true if request is pipelined */
+  char *rtp_buffer;
+  size_t rtp_buffersize;
+};
+
+static int ProcessRequest(struct httprequest *req);
+static void storerequest(char *reqbuf, size_t totalsize);
+
+#define DEFAULT_PORT 8999
+
+#ifndef DEFAULT_LOGFILE
+#define DEFAULT_LOGFILE "log/rtspd.log"
+#endif
+
+const char *serverlogfile = DEFAULT_LOGFILE;
+
+#define RTSPDVERSION "curl test suite RTSP server/0.1"
+
+#define REQUEST_DUMP  "log/server.input"
+#define RESPONSE_DUMP "log/server.response"
+
+/* very-big-path support */
+#define MAXDOCNAMELEN 140000
+#define MAXDOCNAMELEN_TXT "139999"
+
+#define REQUEST_KEYWORD_SIZE 256
+#define REQUEST_KEYWORD_SIZE_TXT "255"
+
+#define CMD_AUTH_REQUIRED "auth_required"
+
+/* 'idle' means that it will accept the request fine but never respond
+   any data. Just keep the connection alive. */
+#define CMD_IDLE "idle"
+
+/* 'stream' means to send a never-ending stream of data */
+#define CMD_STREAM "stream"
+
+#define END_OF_HEADERS "\r\n\r\n"
+
+enum {
+  DOCNUMBER_NOTHING = -7,
+  DOCNUMBER_QUIT    = -6,
+  DOCNUMBER_BADCONNECT = -5,
+  DOCNUMBER_INTERNAL= -4,
+  DOCNUMBER_CONNECT = -3,
+  DOCNUMBER_WERULEZ = -2,
+  DOCNUMBER_404     = -1
+};
+
+
+/* sent as reply to a QUIT */
+static const char *docquit =
+"HTTP/1.1 200 Goodbye" END_OF_HEADERS;
+
+/* sent as reply to a CONNECT */
+static const char *docconnect =
+"HTTP/1.1 200 Mighty fine indeed" END_OF_HEADERS;
+
+/* sent as reply to a "bad" CONNECT */
+static const char *docbadconnect =
+"HTTP/1.1 501 Forbidden you fool" END_OF_HEADERS;
+
+/* send back this on HTTP 404 file not found */
+static const char *doc404_HTTP = "HTTP/1.1 404 Not Found\r\n"
+    "Server: " RTSPDVERSION "\r\n"
+    "Connection: close\r\n"
+    "Content-Type: text/html"
+    END_OF_HEADERS
+    "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n"
+    "<HTML><HEAD>\n"
+    "<TITLE>404 Not Found</TITLE>\n"
+    "</HEAD><BODY>\n"
+    "<H1>Not Found</H1>\n"
+    "The requested URL was not found on this server.\n"
+    "<P><HR><ADDRESS>" RTSPDVERSION "</ADDRESS>\n" "</BODY></HTML>\n";
+
+/* send back this on RTSP 404 file not found */
+static const char *doc404_RTSP = "RTSP/1.0 404 Not Found\r\n"
+    "Server: " RTSPDVERSION
+    END_OF_HEADERS;
+
+/* Default size to send away fake RTP data */
+#define RTP_DATA_SIZE 12
+static const char *RTP_DATA = "$_1234\n\0asdf";
+
+/* do-nothing macro replacement for systems which lack siginterrupt() */
+
+#ifndef HAVE_SIGINTERRUPT
+#define siginterrupt(x,y) do {} while(0)
+#endif
+
+/* vars used to keep around previous signal handlers */
+
+typedef RETSIGTYPE (*SIGHANDLER_T)(int);
+
+#ifdef SIGHUP
+static SIGHANDLER_T old_sighup_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGPIPE
+static SIGHANDLER_T old_sigpipe_handler = SIG_ERR;
+#endif
+
+#ifdef SIGALRM
+static SIGHANDLER_T old_sigalrm_handler = SIG_ERR;
+#endif
+
+#ifdef SIGINT
+static SIGHANDLER_T old_sigint_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGTERM
+static SIGHANDLER_T old_sigterm_handler = SIG_ERR;
+#endif
+
+#if defined(SIGBREAK) && defined(WIN32)
+static SIGHANDLER_T old_sigbreak_handler = SIG_ERR;
+#endif
+
+/* var which if set indicates that the program should finish execution */
+
+SIG_ATOMIC_T got_exit_signal = 0;
+
+/* if next is set indicates the first signal handled in exit_signal_handler */
+
+static volatile int exit_signal = 0;
+
+/* signal handler that will be triggered to indicate that the program
+  should finish its execution in a controlled manner as soon as possible.
+  The first time this is called it will set got_exit_signal to one and
+  store in exit_signal the signal that triggered its execution. */
+
+static RETSIGTYPE exit_signal_handler(int signum)
+{
+  int old_errno = errno;
+  if(got_exit_signal == 0) {
+    got_exit_signal = 1;
+    exit_signal = signum;
+  }
+  (void)signal(signum, exit_signal_handler);
+  errno = old_errno;
+}
+
+static void install_signal_handlers(void)
+{
+#ifdef SIGHUP
+  /* ignore SIGHUP signal */
+  old_sighup_handler = signal(SIGHUP, SIG_IGN);
+  if(old_sighup_handler == SIG_ERR)
+    logmsg("cannot install SIGHUP handler: %s", strerror(errno));
+#endif
+#ifdef SIGPIPE
+  /* ignore SIGPIPE signal */
+  old_sigpipe_handler = signal(SIGPIPE, SIG_IGN);
+  if(old_sigpipe_handler == SIG_ERR)
+    logmsg("cannot install SIGPIPE handler: %s", strerror(errno));
+#endif
+#ifdef SIGALRM
+  /* ignore SIGALRM signal */
+  old_sigalrm_handler = signal(SIGALRM, SIG_IGN);
+  if(old_sigalrm_handler == SIG_ERR)
+    logmsg("cannot install SIGALRM handler: %s", strerror(errno));
+#endif
+#ifdef SIGINT
+  /* handle SIGINT signal with our exit_signal_handler */
+  old_sigint_handler = signal(SIGINT, exit_signal_handler);
+  if(old_sigint_handler == SIG_ERR)
+    logmsg("cannot install SIGINT handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGINT, 1);
+#endif
+#ifdef SIGTERM
+  /* handle SIGTERM signal with our exit_signal_handler */
+  old_sigterm_handler = signal(SIGTERM, exit_signal_handler);
+  if(old_sigterm_handler == SIG_ERR)
+    logmsg("cannot install SIGTERM handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGTERM, 1);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  /* handle SIGBREAK signal with our exit_signal_handler */
+  old_sigbreak_handler = signal(SIGBREAK, exit_signal_handler);
+  if(old_sigbreak_handler == SIG_ERR)
+    logmsg("cannot install SIGBREAK handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGBREAK, 1);
+#endif
+}
+
+static void restore_signal_handlers(void)
+{
+#ifdef SIGHUP
+  if(SIG_ERR != old_sighup_handler)
+    (void)signal(SIGHUP, old_sighup_handler);
+#endif
+#ifdef SIGPIPE
+  if(SIG_ERR != old_sigpipe_handler)
+    (void)signal(SIGPIPE, old_sigpipe_handler);
+#endif
+#ifdef SIGALRM
+  if(SIG_ERR != old_sigalrm_handler)
+    (void)signal(SIGALRM, old_sigalrm_handler);
+#endif
+#ifdef SIGINT
+  if(SIG_ERR != old_sigint_handler)
+    (void)signal(SIGINT, old_sigint_handler);
+#endif
+#ifdef SIGTERM
+  if(SIG_ERR != old_sigterm_handler)
+    (void)signal(SIGTERM, old_sigterm_handler);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  if(SIG_ERR != old_sigbreak_handler)
+    (void)signal(SIGBREAK, old_sigbreak_handler);
+#endif
+}
+
+static int ProcessRequest(struct httprequest *req)
+{
+  char *line=&req->reqbuf[req->checkindex];
+  bool chunked = FALSE;
+  static char request[REQUEST_KEYWORD_SIZE];
+  static char doc[MAXDOCNAMELEN];
+  static char prot_str[5];
+  char logbuf[256];
+  int prot_major, prot_minor;
+  char *end;
+  int error;
+  end = strstr(line, END_OF_HEADERS);
+
+  logmsg("ProcessRequest() called with testno %ld and line [%s]",
+         req->testno, line);
+
+  /* try to figure out the request characteristics as soon as possible, but
+     only once! */
+  if((req->testno == DOCNUMBER_NOTHING) &&
+     sscanf(line,
+            "%" REQUEST_KEYWORD_SIZE_TXT"s %" MAXDOCNAMELEN_TXT "s %4s/%d.%d",
+            request,
+            doc,
+            prot_str,
+            &prot_major,
+            &prot_minor) == 5) {
+    char *ptr;
+
+    if(!strcmp(prot_str, "HTTP")) {
+      req->protocol = RPROT_HTTP;
+    }
+    else if(!strcmp(prot_str, "RTSP")) {
+      req->protocol = RPROT_RTSP;
+    }
+    else {
+      req->protocol = RPROT_NONE;
+      logmsg("got unknown protocol %s", prot_str);
+      return 1;
+    }
+
+    req->prot_version = prot_major*10 + prot_minor;
+
+    /* find the last slash */
+    ptr = strrchr(doc, '/');
+
+    /* get the number after it */
+    if(ptr) {
+      FILE *stream;
+      char *filename;
+
+      if((strlen(doc) + strlen(request)) < 200)
+        snprintf(logbuf, sizeof(logbuf), "Got request: %s %s %s/%d.%d",
+                 request, doc, prot_str, prot_major, prot_minor);
+      else
+        snprintf(logbuf, sizeof(logbuf), "Got a *HUGE* request %s/%d.%d",
+                prot_str, prot_major, prot_minor);
+      logmsg("%s", logbuf);
+
+      if(!strncmp("/verifiedserver", ptr, 15)) {
+        logmsg("Are-we-friendly question received");
+        req->testno = DOCNUMBER_WERULEZ;
+        return 1; /* done */
+      }
+
+      if(!strncmp("/quit", ptr, 5)) {
+        logmsg("Request-to-quit received");
+        req->testno = DOCNUMBER_QUIT;
+        return 1; /* done */
+      }
+
+      ptr++; /* skip the slash */
+
+      /* skip all non-numericals following the slash */
+      while(*ptr && !ISDIGIT(*ptr))
+        ptr++;
+
+      req->testno = strtol(ptr, &ptr, 10);
+
+      if(req->testno > 10000) {
+        req->partno = req->testno % 10000;
+        req->testno /= 10000;
+      }
+      else
+        req->partno = 0;
+
+      snprintf(logbuf, sizeof(logbuf), "Requested test number %ld part %ld",
+               req->testno, req->partno);
+      logmsg("%s", logbuf);
+
+      filename = test2file(req->testno);
+
+      stream=fopen(filename, "rb");
+      if(!stream) {
+        error = errno;
+        logmsg("fopen() failed with error: %d %s", error, strerror(error));
+        logmsg("Error opening file: %s", filename);
+        logmsg("Couldn't open test file %ld", req->testno);
+        req->open = FALSE; /* closes connection */
+        return 1; /* done */
+      }
+      else {
+        char *cmd = NULL;
+        size_t cmdsize = 0;
+        int num=0;
+
+        int rtp_channel = 0;
+        int rtp_size = 0;
+        int rtp_partno = -1;
+        int i = 0;
+        char *rtp_scratch = NULL;
+
+        /* get the custom server control "commands" */
+        error = getpart(&cmd, &cmdsize, "reply", "servercmd", stream);
+        fclose(stream);
+        if(error) {
+          logmsg("getpart() failed with error: %d", error);
+          req->open = FALSE; /* closes connection */
+          return 1; /* done */
+        }
+        ptr = cmd;
+
+        if(cmdsize) {
+          logmsg("Found a reply-servercmd section!");
+          do {
+            if(!strncmp(CMD_AUTH_REQUIRED, ptr, strlen(CMD_AUTH_REQUIRED))) {
+              logmsg("instructed to require authorization header");
+              req->auth_req = TRUE;
+            }
+            else if(!strncmp(CMD_IDLE, ptr, strlen(CMD_IDLE))) {
+              logmsg("instructed to idle");
+              req->rcmd = RCMD_IDLE;
+              req->open = TRUE;
+            }
+            else if(!strncmp(CMD_STREAM, ptr, strlen(CMD_STREAM))) {
+              logmsg("instructed to stream");
+              req->rcmd = RCMD_STREAM;
+            }
+            else if(1 == sscanf(ptr, "pipe: %d", &num)) {
+              logmsg("instructed to allow a pipe size of %d", num);
+              if(num < 0)
+                logmsg("negative pipe size ignored");
+              else if(num > 0)
+                req->pipe = num-1; /* decrease by one since we don't count the
+                                      first request in this number */
+            }
+            else if(1 == sscanf(ptr, "skip: %d", &num)) {
+              logmsg("instructed to skip this number of bytes %d", num);
+              req->skip = num;
+            }
+            else if(3 == sscanf(ptr, "rtp: part %d channel %d size %d",
+                                &rtp_partno, &rtp_channel, &rtp_size)) {
+
+              if(rtp_partno == req->partno) {
+                logmsg("RTP: part %d channel %d size %d",
+                       rtp_partno, rtp_channel, rtp_size);
+
+                /* Make our scratch buffer enough to fit all the
+                 * desired data and one for padding */
+                rtp_scratch = malloc(rtp_size + 4 + RTP_DATA_SIZE);
+
+                /* RTP is signalled with a $ */
+                rtp_scratch[0] = '$';
+
+                /* The channel follows and is one byte */
+                SET_RTP_PKT_CHN(rtp_scratch, rtp_channel);
+
+                /* Length follows and is a two byte short in network order */
+                SET_RTP_PKT_LEN(rtp_scratch, rtp_size);
+
+                /* Fill it with junk data */
+                for(i = 0; i < rtp_size; i+= RTP_DATA_SIZE) {
+                  memcpy(rtp_scratch + 4 + i, RTP_DATA, RTP_DATA_SIZE);
+                }
+
+                if(req->rtp_buffer == NULL) {
+                  req->rtp_buffer = rtp_scratch;
+                  req->rtp_buffersize = rtp_size + 4;
+                }
+                else {
+                  req->rtp_buffer = realloc(req->rtp_buffer,
+                                            req->rtp_buffersize +
+                                            rtp_size + 4);
+                  memcpy(req->rtp_buffer + req->rtp_buffersize, rtp_scratch,
+                         rtp_size + 4);
+                  req->rtp_buffersize += rtp_size + 4;
+                  free(rtp_scratch);
+                }
+                logmsg("rtp_buffersize is %zu, rtp_size is %d.",
+                       req->rtp_buffersize, rtp_size);
+              }
+            }
+            else {
+              logmsg("funny instruction found: %s", ptr);
+            }
+
+            ptr = strchr(ptr, '\n');
+            if(ptr)
+              ptr++;
+            else
+              ptr = NULL;
+          } while(ptr && *ptr);
+          logmsg("Done parsing server commands");
+        }
+        free(cmd);
+      }
+    }
+    else {
+      if(sscanf(req->reqbuf, "CONNECT %" MAXDOCNAMELEN_TXT "s HTTP/%d.%d",
+                doc, &prot_major, &prot_minor) == 3) {
+        snprintf(logbuf, sizeof(logbuf),
+                 "Received a CONNECT %s HTTP/%d.%d request",
+                 doc, prot_major, prot_minor);
+        logmsg("%s", logbuf);
+
+        if(req->prot_version == 10)
+          req->open = FALSE; /* HTTP 1.0 closes connection by default */
+
+        if(!strncmp(doc, "bad", 3))
+          /* if the host name starts with bad, we fake an error here */
+          req->testno = DOCNUMBER_BADCONNECT;
+        else if(!strncmp(doc, "test", 4)) {
+          /* if the host name starts with test, the port number used in the
+             CONNECT line will be used as test number! */
+          char *portp = strchr(doc, ':');
+          if(portp && (*(portp+1) != '\0') && ISDIGIT(*(portp+1)))
+            req->testno = strtol(portp+1, NULL, 10);
+          else
+            req->testno = DOCNUMBER_CONNECT;
+        }
+        else
+          req->testno = DOCNUMBER_CONNECT;
+      }
+      else {
+        logmsg("Did not find test number in PATH");
+        req->testno = DOCNUMBER_404;
+      }
+    }
+  }
+
+  if(!end) {
+    /* we don't have a complete request yet! */
+    logmsg("ProcessRequest returned without a complete request");
+    return 0; /* not complete yet */
+  }
+  logmsg("ProcessRequest found a complete request");
+
+  if(req->pipe)
+    /* we do have a full set, advance the checkindex to after the end of the
+       headers, for the pipelining case mostly */
+    req->checkindex += (end - line) + strlen(END_OF_HEADERS);
+
+  /* **** Persistence ****
+   *
+   * If the request is a HTTP/1.0 one, we close the connection unconditionally
+   * when we're done.
+   *
+   * If the request is a HTTP/1.1 one, we MUST check for a "Connection:"
+   * header that might say "close". If it does, we close a connection when
+   * this request is processed. Otherwise, we keep the connection alive for X
+   * seconds.
+   */
+
+  do {
+    if(got_exit_signal)
+      return 1; /* done */
+
+    if((req->cl==0) && strncasecompare("Content-Length:", line, 15)) {
+      /* If we don't ignore content-length, we read it and we read the whole
+         request including the body before we return. If we've been told to
+         ignore the content-length, we will return as soon as all headers
+         have been received */
+      char *endptr;
+      char *ptr = line + 15;
+      unsigned long clen = 0;
+      while(*ptr && ISSPACE(*ptr))
+        ptr++;
+      endptr = ptr;
+      errno = 0;
+      clen = strtoul(ptr, &endptr, 10);
+      if((ptr == endptr) || !ISSPACE(*endptr) || (ERANGE == errno)) {
+        /* this assumes that a zero Content-Length is valid */
+        logmsg("Found invalid Content-Length: (%s) in the request", ptr);
+        req->open = FALSE; /* closes connection */
+        return 1; /* done */
+      }
+      req->cl = clen - req->skip;
+
+      logmsg("Found Content-Length: %lu in the request", clen);
+      if(req->skip)
+        logmsg("... but will abort after %zu bytes", req->cl);
+      break;
+    }
+    else if(strncasecompare("Transfer-Encoding: chunked", line,
+                            strlen("Transfer-Encoding: chunked"))) {
+      /* chunked data coming in */
+      chunked = TRUE;
+    }
+
+    if(chunked) {
+      if(strstr(req->reqbuf, "\r\n0\r\n\r\n"))
+        /* end of chunks reached */
+        return 1; /* done */
+      else
+        return 0; /* not done */
+    }
+
+    line = strchr(line, '\n');
+    if(line)
+      line++;
+
+  } while(line);
+
+  if(!req->auth && strstr(req->reqbuf, "Authorization:")) {
+    req->auth = TRUE; /* Authorization: header present! */
+    if(req->auth_req)
+      logmsg("Authorization header found, as required");
+  }
+
+  if(!req->digest && strstr(req->reqbuf, "Authorization: Digest")) {
+    /* If the client is passing this Digest-header, we set the part number
+       to 1000. Not only to spice up the complexity of this, but to make
+       Digest stuff to work in the test suite. */
+    req->partno += 1000;
+    req->digest = TRUE; /* header found */
+    logmsg("Received Digest request, sending back data %ld", req->partno);
+  }
+  else if(!req->ntlm &&
+          strstr(req->reqbuf, "Authorization: NTLM TlRMTVNTUAAD")) {
+    /* If the client is passing this type-3 NTLM header */
+    req->partno += 1002;
+    req->ntlm = TRUE; /* NTLM found */
+    logmsg("Received NTLM type-3, sending back data %ld", req->partno);
+    if(req->cl) {
+      logmsg("  Expecting %zu POSTed bytes", req->cl);
+    }
+  }
+  else if(!req->ntlm &&
+          strstr(req->reqbuf, "Authorization: NTLM TlRMTVNTUAAB")) {
+    /* If the client is passing this type-1 NTLM header */
+    req->partno += 1001;
+    req->ntlm = TRUE; /* NTLM found */
+    logmsg("Received NTLM type-1, sending back data %ld", req->partno);
+  }
+  else if((req->partno >= 1000) &&
+          strstr(req->reqbuf, "Authorization: Basic")) {
+    /* If the client is passing this Basic-header and the part number is
+       already >=1000, we add 1 to the part number.  This allows simple Basic
+       authentication negotiation to work in the test suite. */
+    req->partno += 1;
+    logmsg("Received Basic request, sending back data %ld", req->partno);
+  }
+  if(strstr(req->reqbuf, "Connection: close"))
+    req->open = FALSE; /* close connection after this request */
+
+  if(!req->pipe &&
+     req->open &&
+     req->prot_version >= 11 &&
+     end &&
+     req->reqbuf + req->offset > end + strlen(END_OF_HEADERS) &&
+     (!strncmp(req->reqbuf, "GET", strlen("GET")) ||
+      !strncmp(req->reqbuf, "HEAD", strlen("HEAD")))) {
+    /* If we have a persistent connection, HTTP version >= 1.1
+       and GET/HEAD request, enable pipelining. */
+    req->checkindex = (end - req->reqbuf) + strlen(END_OF_HEADERS);
+    req->pipelining = TRUE;
+  }
+
+  while(req->pipe) {
+    if(got_exit_signal)
+      return 1; /* done */
+    /* scan for more header ends within this chunk */
+    line = &req->reqbuf[req->checkindex];
+    end = strstr(line, END_OF_HEADERS);
+    if(!end)
+      break;
+    req->checkindex += (end - line) + strlen(END_OF_HEADERS);
+    req->pipe--;
+  }
+
+  /* If authentication is required and no auth was provided, end now. This
+     makes the server NOT wait for PUT/POST data and you can then make the
+     test case send a rejection before any such data has been sent. Test case
+     154 uses this.*/
+  if(req->auth_req && !req->auth)
+    return 1; /* done */
+
+  if(req->cl > 0) {
+    if(req->cl <= req->offset - (end - req->reqbuf) - strlen(END_OF_HEADERS))
+      return 1; /* done */
+    else
+      return 0; /* not complete yet */
+  }
+
+  return 1; /* done */
+}
+
+/* store the entire request in a file */
+static void storerequest(char *reqbuf, size_t totalsize)
+{
+  int res;
+  int error = 0;
+  size_t written;
+  size_t writeleft;
+  FILE *dump;
+
+  if(reqbuf == NULL)
+    return;
+  if(totalsize == 0)
+    return;
+
+  do {
+    dump = fopen(REQUEST_DUMP, "ab");
+  } while((dump == NULL) && ((error = errno) == EINTR));
+  if(dump == NULL) {
+    logmsg("Error opening file %s error: %d %s",
+           REQUEST_DUMP, error, strerror(error));
+    logmsg("Failed to write request input to " REQUEST_DUMP);
+    return;
+  }
+
+  writeleft = totalsize;
+  do {
+    written = fwrite(&reqbuf[totalsize-writeleft],
+                     1, writeleft, dump);
+    if(got_exit_signal)
+      goto storerequest_cleanup;
+    if(written > 0)
+      writeleft -= written;
+  } while((writeleft > 0) && ((error = errno) == EINTR));
+
+  if(writeleft == 0)
+    logmsg("Wrote request (%zu bytes) input to " REQUEST_DUMP, totalsize);
+  else if(writeleft > 0) {
+    logmsg("Error writing file %s error: %d %s",
+           REQUEST_DUMP, error, strerror(error));
+    logmsg("Wrote only (%zu bytes) of (%zu bytes) request input to %s",
+           totalsize-writeleft, totalsize, REQUEST_DUMP);
+  }
+
+storerequest_cleanup:
+
+  do {
+    res = fclose(dump);
+  } while(res && ((error = errno) == EINTR));
+  if(res)
+    logmsg("Error closing file %s error: %d %s",
+           REQUEST_DUMP, error, strerror(error));
+}
+
+/* return 0 on success, non-zero on failure */
+static int get_request(curl_socket_t sock, struct httprequest *req)
+{
+  int error;
+  int fail = 0;
+  int done_processing = 0;
+  char *reqbuf = req->reqbuf;
+  ssize_t got = 0;
+
+  char *pipereq = NULL;
+  size_t pipereq_length = 0;
+
+  if(req->pipelining) {
+    pipereq = reqbuf + req->checkindex;
+    pipereq_length = req->offset - req->checkindex;
+  }
+
+  /*** Init the httprequest structure properly for the upcoming request ***/
+
+  req->checkindex = 0;
+  req->offset = 0;
+  req->testno = DOCNUMBER_NOTHING;
+  req->partno = 0;
+  req->open = TRUE;
+  req->auth_req = FALSE;
+  req->auth = FALSE;
+  req->cl = 0;
+  req->digest = FALSE;
+  req->ntlm = FALSE;
+  req->pipe = 0;
+  req->skip = 0;
+  req->rcmd = RCMD_NORMALREQ;
+  req->protocol = RPROT_NONE;
+  req->prot_version = 0;
+  req->pipelining = FALSE;
+  req->rtp_buffer = NULL;
+  req->rtp_buffersize = 0;
+
+  /*** end of httprequest init ***/
+
+  while(!done_processing && (req->offset < REQBUFSIZ-1)) {
+    if(pipereq_length && pipereq) {
+      memmove(reqbuf, pipereq, pipereq_length);
+      got = curlx_uztosz(pipereq_length);
+      pipereq_length = 0;
+    }
+    else {
+      if(req->skip)
+        /* we are instructed to not read the entire thing, so we make sure to
+           only read what we're supposed to and NOT read the enire thing the
+           client wants to send! */
+        got = sread(sock, reqbuf + req->offset, req->cl);
+      else
+        got = sread(sock, reqbuf + req->offset, REQBUFSIZ-1 - req->offset);
+    }
+    if(got_exit_signal)
+      return 1;
+    if(got == 0) {
+      logmsg("Connection closed by client");
+      fail = 1;
+    }
+    else if(got < 0) {
+      error = SOCKERRNO;
+      logmsg("recv() returned error: (%d) %s", error, strerror(error));
+      fail = 1;
+    }
+    if(fail) {
+      /* dump the request received so far to the external file */
+      reqbuf[req->offset] = '\0';
+      storerequest(reqbuf, req->offset);
+      return 1;
+    }
+
+    logmsg("Read %zd bytes", got);
+
+    req->offset += (size_t)got;
+    reqbuf[req->offset] = '\0';
+
+    done_processing = ProcessRequest(req);
+    if(got_exit_signal)
+      return 1;
+    if(done_processing && req->pipe) {
+      logmsg("Waiting for another piped request");
+      done_processing = 0;
+      req->pipe--;
+    }
+  }
+
+  if((req->offset == REQBUFSIZ-1) && (got > 0)) {
+    logmsg("Request would overflow buffer, closing connection");
+    /* dump request received so far to external file anyway */
+    reqbuf[REQBUFSIZ-1] = '\0';
+    fail = 1;
+  }
+  else if(req->offset > REQBUFSIZ-1) {
+    logmsg("Request buffer overflow, closing connection");
+    /* dump request received so far to external file anyway */
+    reqbuf[REQBUFSIZ-1] = '\0';
+    fail = 1;
+  }
+  else
+    reqbuf[req->offset] = '\0';
+
+  /* dump the request to an external file */
+  storerequest(reqbuf, req->pipelining ? req->checkindex : req->offset);
+  if(got_exit_signal)
+    return 1;
+
+  return fail; /* return 0 on success */
+}
+
+/* returns -1 on failure */
+static int send_doc(curl_socket_t sock, struct httprequest *req)
+{
+  ssize_t written;
+  size_t count;
+  const char *buffer;
+  char *ptr=NULL;
+  FILE *stream;
+  char *cmd=NULL;
+  size_t cmdsize=0;
+  FILE *dump;
+  bool persistant = TRUE;
+  bool sendfailure = FALSE;
+  size_t responsesize;
+  int error = 0;
+  int res;
+
+  static char weare[256];
+
+  char partbuf[80]="data";
+
+  logmsg("Send response number %ld part %ld", req->testno, req->partno);
+
+  switch(req->rcmd) {
+  default:
+  case RCMD_NORMALREQ:
+    break; /* continue with business as usual */
+  case RCMD_STREAM:
+#define STREAMTHIS "a string to stream 01234567890\n"
+    count = strlen(STREAMTHIS);
+    for(;;) {
+      written = swrite(sock, STREAMTHIS, count);
+      if(got_exit_signal)
+        return -1;
+      if(written != (ssize_t)count) {
+        logmsg("Stopped streaming");
+        break;
+      }
+    }
+    return -1;
+  case RCMD_IDLE:
+    /* Do nothing. Sit idle. Pretend it rains. */
+    return 0;
+  }
+
+  req->open = FALSE;
+
+  if(req->testno < 0) {
+    size_t msglen;
+    char msgbuf[64];
+
+    switch(req->testno) {
+    case DOCNUMBER_QUIT:
+      logmsg("Replying to QUIT");
+      buffer = docquit;
+      break;
+    case DOCNUMBER_WERULEZ:
+      /* we got a "friends?" question, reply back that we sure are */
+      logmsg("Identifying ourselves as friends");
+      snprintf(msgbuf, sizeof(msgbuf), "RTSP_SERVER WE ROOLZ: %ld\r\n",
+               (long)getpid());
+      msglen = strlen(msgbuf);
+      snprintf(weare, sizeof(weare),
+               "HTTP/1.1 200 OK\r\nContent-Length: %zu\r\n\r\n%s",
+               msglen, msgbuf);
+      buffer = weare;
+      break;
+    case DOCNUMBER_INTERNAL:
+      logmsg("Bailing out due to internal error");
+      return -1;
+    case DOCNUMBER_CONNECT:
+      logmsg("Replying to CONNECT");
+      buffer = docconnect;
+      break;
+    case DOCNUMBER_BADCONNECT:
+      logmsg("Replying to a bad CONNECT");
+      buffer = docbadconnect;
+      break;
+    case DOCNUMBER_404:
+    default:
+      logmsg("Replying to with a 404");
+      if(req->protocol == RPROT_HTTP) {
+        buffer = doc404_HTTP;
+      }
+      else {
+        buffer = doc404_RTSP;
+      }
+      break;
+    }
+
+    count = strlen(buffer);
+  }
+  else {
+    char *filename = test2file(req->testno);
+
+    if(0 != req->partno)
+      snprintf(partbuf, sizeof(partbuf), "data%ld", req->partno);
+
+    stream=fopen(filename, "rb");
+    if(!stream) {
+      error = errno;
+      logmsg("fopen() failed with error: %d %s", error, strerror(error));
+      logmsg("Error opening file: %s", filename);
+      logmsg("Couldn't open test file");
+      return 0;
+    }
+    else {
+      error = getpart(&ptr, &count, "reply", partbuf, stream);
+      fclose(stream);
+      if(error) {
+        logmsg("getpart() failed with error: %d", error);
+        return 0;
+      }
+      buffer = ptr;
+    }
+
+    if(got_exit_signal) {
+      free(ptr);
+      return -1;
+    }
+
+    /* re-open the same file again */
+    stream=fopen(filename, "rb");
+    if(!stream) {
+      error = errno;
+      logmsg("fopen() failed with error: %d %s", error, strerror(error));
+      logmsg("Error opening file: %s", filename);
+      logmsg("Couldn't open test file");
+      free(ptr);
+      return 0;
+    }
+    else {
+      /* get the custom server control "commands" */
+      error = getpart(&cmd, &cmdsize, "reply", "postcmd", stream);
+      fclose(stream);
+      if(error) {
+        logmsg("getpart() failed with error: %d", error);
+        free(ptr);
+        return 0;
+      }
+    }
+  }
+
+  if(got_exit_signal) {
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  /* If the word 'swsclose' is present anywhere in the reply chunk, the
+     connection will be closed after the data has been sent to the requesting
+     client... */
+  if(strstr(buffer, "swsclose") || !count) {
+    persistant = FALSE;
+    logmsg("connection close instruction \"swsclose\" found in response");
+  }
+  if(strstr(buffer, "swsbounce")) {
+    prevbounce = TRUE;
+    logmsg("enable \"swsbounce\" in the next request");
+  }
+  else
+    prevbounce = FALSE;
+
+  dump = fopen(RESPONSE_DUMP, "ab");
+  if(!dump) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("Error opening file: %s", RESPONSE_DUMP);
+    logmsg("couldn't create logfile: " RESPONSE_DUMP);
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  responsesize = count;
+  do {
+    /* Ok, we send no more than 200 bytes at a time, just to make sure that
+       larger chunks are split up so that the client will need to do multiple
+       recv() calls to get it and thus we exercise that code better */
+    size_t num = count;
+    if(num > 200)
+      num = 200;
+    written = swrite(sock, buffer, num);
+    if(written < 0) {
+      sendfailure = TRUE;
+      break;
+    }
+    else {
+      logmsg("Sent off %zd bytes", written);
+    }
+    /* write to file as well */
+    fwrite(buffer, 1, (size_t)written, dump);
+    if(got_exit_signal)
+      break;
+
+    count -= written;
+    buffer += written;
+  } while(count>0);
+
+  /* Send out any RTP data */
+  if(req->rtp_buffer) {
+    logmsg("About to write %zu RTP bytes", req->rtp_buffersize);
+    count = req->rtp_buffersize;
+    do {
+      size_t num = count;
+      if(num > 200)
+        num = 200;
+      written = swrite(sock, req->rtp_buffer + (req->rtp_buffersize - count),
+                       num);
+      if(written < 0) {
+        sendfailure = TRUE;
+        break;
+      }
+      count -= written;
+    } while(count > 0);
+
+    free(req->rtp_buffer);
+    req->rtp_buffersize = 0;
+  }
+
+  do {
+    res = fclose(dump);
+  } while(res && ((error = errno) == EINTR));
+  if(res)
+    logmsg("Error closing file %s error: %d %s",
+           RESPONSE_DUMP, error, strerror(error));
+
+  if(got_exit_signal) {
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  if(sendfailure) {
+    logmsg("Sending response failed. Only (%zu bytes) of "
+           "(%zu bytes) were sent",
+           responsesize-count, responsesize);
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  logmsg("Response sent (%zu bytes) and written to " RESPONSE_DUMP,
+         responsesize);
+  free(ptr);
+
+  if(cmdsize > 0) {
+    char command[32];
+    int quarters;
+    int num;
+    ptr=cmd;
+    do {
+      if(2 == sscanf(ptr, "%31s %d", command, &num)) {
+        if(!strcmp("wait", command)) {
+          logmsg("Told to sleep for %d seconds", num);
+          quarters = num * 4;
+          while(quarters > 0) {
+            quarters--;
+            res = wait_ms(250);
+            if(got_exit_signal)
+              break;
+            if(res) {
+              /* should not happen */
+              error = errno;
+              logmsg("wait_ms() failed with error: (%d) %s",
+                     error, strerror(error));
+              break;
+            }
+          }
+          if(!quarters)
+            logmsg("Continuing after sleeping %d seconds", num);
+        }
+        else
+          logmsg("Unknown command in reply command section");
+      }
+      ptr = strchr(ptr, '\n');
+      if(ptr)
+        ptr++;
+      else
+        ptr = NULL;
+    } while(ptr && *ptr);
+  }
+  free(cmd);
+  req->open = persistant;
+
+  prevtestno = req->testno;
+  prevpartno = req->partno;
+
+  return 0;
+}
+
+
+int main(int argc, char *argv[])
+{
+  srvr_sockaddr_union_t me;
+  curl_socket_t sock = CURL_SOCKET_BAD;
+  curl_socket_t msgsock = CURL_SOCKET_BAD;
+  int wrotepidfile = 0;
+  int flag;
+  unsigned short port = DEFAULT_PORT;
+  const char *pidname = ".rtsp.pid";
+  struct httprequest req;
+  int rc;
+  int error;
+  int arg=1;
+  long pid;
+
+  while(argc>arg) {
+    if(!strcmp("--version", argv[arg])) {
+      printf("rtspd IPv4%s"
+             "\n"
+             ,
+#ifdef ENABLE_IPV6
+             "/IPv6"
+#else
+             ""
+#endif
+             );
+      return 0;
+    }
+    else if(!strcmp("--pidfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        pidname = argv[arg++];
+    }
+    else if(!strcmp("--logfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        serverlogfile = argv[arg++];
+    }
+    else if(!strcmp("--ipv4", argv[arg])) {
+#ifdef ENABLE_IPV6
+      ipv_inuse = "IPv4";
+      use_ipv6 = FALSE;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--ipv6", argv[arg])) {
+#ifdef ENABLE_IPV6
+      ipv_inuse = "IPv6";
+      use_ipv6 = TRUE;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--port", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        char *endptr;
+        unsigned long ulnum = strtoul(argv[arg], &endptr, 10);
+        if((endptr != argv[arg] + strlen(argv[arg])) ||
+           (ulnum < 1025UL) || (ulnum > 65535UL)) {
+          fprintf(stderr, "rtspd: invalid --port argument (%s)\n",
+                  argv[arg]);
+          return 0;
+        }
+        port = curlx_ultous(ulnum);
+        arg++;
+      }
+    }
+    else if(!strcmp("--srcdir", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        path = argv[arg];
+        arg++;
+      }
+    }
+    else {
+      puts("Usage: rtspd [option]\n"
+           " --version\n"
+           " --logfile [file]\n"
+           " --pidfile [file]\n"
+           " --ipv4\n"
+           " --ipv6\n"
+           " --port [port]\n"
+           " --srcdir [path]");
+      return 0;
+    }
+  }
+
+#ifdef WIN32
+  win32_init();
+  atexit(win32_cleanup);
+#endif
+
+  install_signal_handlers();
+
+  pid = (long)getpid();
+
+#ifdef ENABLE_IPV6
+  if(!use_ipv6)
+#endif
+    sock = socket(AF_INET, SOCK_STREAM, 0);
+#ifdef ENABLE_IPV6
+  else
+    sock = socket(AF_INET6, SOCK_STREAM, 0);
+#endif
+
+  if(CURL_SOCKET_BAD == sock) {
+    error = SOCKERRNO;
+    logmsg("Error creating socket: (%d) %s",
+           error, strerror(error));
+    goto server_cleanup;
+  }
+
+  flag = 1;
+  if(0 != setsockopt(sock, SOL_SOCKET, SO_REUSEADDR,
+            (void *)&flag, sizeof(flag))) {
+    error = SOCKERRNO;
+    logmsg("setsockopt(SO_REUSEADDR) failed with error: (%d) %s",
+           error, strerror(error));
+    goto server_cleanup;
+  }
+
+#ifdef ENABLE_IPV6
+  if(!use_ipv6) {
+#endif
+    memset(&me.sa4, 0, sizeof(me.sa4));
+    me.sa4.sin_family = AF_INET;
+    me.sa4.sin_addr.s_addr = INADDR_ANY;
+    me.sa4.sin_port = htons(port);
+    rc = bind(sock, &me.sa, sizeof(me.sa4));
+#ifdef ENABLE_IPV6
+  }
+  else {
+    memset(&me.sa6, 0, sizeof(me.sa6));
+    me.sa6.sin6_family = AF_INET6;
+    me.sa6.sin6_addr = in6addr_any;
+    me.sa6.sin6_port = htons(port);
+    rc = bind(sock, &me.sa, sizeof(me.sa6));
+  }
+#endif /* ENABLE_IPV6 */
+  if(0 != rc) {
+    error = SOCKERRNO;
+    logmsg("Error binding socket on port %hu: (%d) %s",
+           port, error, strerror(error));
+    goto server_cleanup;
+  }
+
+  logmsg("Running %s version on port %d", ipv_inuse, (int)port);
+
+  /* start accepting connections */
+  rc = listen(sock, 5);
+  if(0 != rc) {
+    error = SOCKERRNO;
+    logmsg("listen() failed with error: (%d) %s",
+           error, strerror(error));
+    goto server_cleanup;
+  }
+
+  /*
+  ** As soon as this server writes its pid file the test harness will
+  ** attempt to connect to this server and initiate its verification.
+  */
+
+  wrotepidfile = write_pidfile(pidname);
+  if(!wrotepidfile)
+    goto server_cleanup;
+
+  for(;;) {
+    msgsock = accept(sock, NULL, NULL);
+
+    if(got_exit_signal)
+      break;
+    if(CURL_SOCKET_BAD == msgsock) {
+      error = SOCKERRNO;
+      logmsg("MAJOR ERROR: accept() failed with error: (%d) %s",
+             error, strerror(error));
+      break;
+    }
+
+    /*
+    ** As soon as this server acepts a connection from the test harness it
+    ** must set the server logs advisor read lock to indicate that server
+    ** logs should not be read until this lock is removed by this server.
+    */
+
+    set_advisor_read_lock(SERVERLOGS_LOCK);
+    serverlogslocked = 1;
+
+    logmsg("====> Client connect");
+
+#ifdef TCP_NODELAY
+    /*
+     * Disable the Nagle algorithm to make it easier to send out a large
+     * response in many small segments to torture the clients more.
+     */
+    flag = 1;
+    if(setsockopt(msgsock, IPPROTO_TCP, TCP_NODELAY,
+                   (void *)&flag, sizeof(flag)) == -1) {
+      logmsg("====> TCP_NODELAY failed");
+    }
+#endif
+
+    /* initialization of httprequest struct is done in get_request(), but due
+       to pipelining treatment the pipelining struct field must be initialized
+       previously to FALSE every time a new connection arrives. */
+
+    req.pipelining = FALSE;
+
+    do {
+      if(got_exit_signal)
+        break;
+
+      if(get_request(msgsock, &req))
+        /* non-zero means error, break out of loop */
+        break;
+
+      if(prevbounce) {
+        /* bounce treatment requested */
+        if((req.testno == prevtestno) &&
+           (req.partno == prevpartno)) {
+          req.partno++;
+          logmsg("BOUNCE part number to %ld", req.partno);
+        }
+        else {
+          prevbounce = FALSE;
+          prevtestno = -1;
+          prevpartno = -1;
+        }
+      }
+
+      send_doc(msgsock, &req);
+      if(got_exit_signal)
+        break;
+
+      if((req.testno < 0) && (req.testno != DOCNUMBER_CONNECT)) {
+        logmsg("special request received, no persistency");
+        break;
+      }
+      if(!req.open) {
+        logmsg("instructed to close connection after server-reply");
+        break;
+      }
+
+      if(req.open)
+        logmsg("=> persistant connection request ended, awaits new request");
+      /* if we got a CONNECT, loop and get another request as well! */
+    } while(req.open || (req.testno == DOCNUMBER_CONNECT));
+
+    if(got_exit_signal)
+      break;
+
+    logmsg("====> Client disconnect");
+    sclose(msgsock);
+    msgsock = CURL_SOCKET_BAD;
+
+    if(serverlogslocked) {
+      serverlogslocked = 0;
+      clear_advisor_read_lock(SERVERLOGS_LOCK);
+    }
+
+    if(req.testno == DOCNUMBER_QUIT)
+      break;
+  }
+
+server_cleanup:
+
+  if((msgsock != sock) && (msgsock != CURL_SOCKET_BAD))
+    sclose(msgsock);
+
+  if(sock != CURL_SOCKET_BAD)
+    sclose(sock);
+
+  if(got_exit_signal)
+    logmsg("signalled to die");
+
+  if(wrotepidfile)
+    unlink(pidname);
+
+  if(serverlogslocked) {
+    serverlogslocked = 0;
+    clear_advisor_read_lock(SERVERLOGS_LOCK);
+  }
+
+  restore_signal_handlers();
+
+  if(got_exit_signal) {
+    logmsg("========> %s rtspd (port: %d pid: %ld) exits with signal (%d)",
+           ipv_inuse, (int)port, pid, exit_signal);
+    /*
+     * To properly set the return status of the process we
+     * must raise the same signal SIGINT or SIGTERM that we
+     * caught and let the old handler take care of it.
+     */
+    raise(exit_signal);
+  }
+
+  logmsg("========> rtspd quits");
+  return 0;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/server_setup.h b/ap/lib/libcurl/curl-7.54.1/tests/server/server_setup.h
new file mode 100644
index 0000000..76c4623
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/server_setup.h
@@ -0,0 +1,29 @@
+#ifndef HEADER_CURL_SERVER_SETUP_H
+#define HEADER_CURL_SERVER_SETUP_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#define CURL_NO_OLDIES
+
+#include "curl_setup.h" /* portability help from the lib directory */
+
+#endif /* HEADER_CURL_SERVER_SETUP_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/server_sockaddr.h b/ap/lib/libcurl/curl-7.54.1/tests/server/server_sockaddr.h
new file mode 100644
index 0000000..bbcab83
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/server_sockaddr.h
@@ -0,0 +1,41 @@
+#ifndef HEADER_CURL_SERVER_SOCKADDR_H
+#define HEADER_CURL_SERVER_SOCKADDR_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h> /* for sockaddr_un */
+#endif
+
+typedef union {
+  struct sockaddr      sa;
+  struct sockaddr_in   sa4;
+#ifdef ENABLE_IPV6
+  struct sockaddr_in6  sa6;
+#endif
+#ifdef USE_UNIX_SOCKETS
+  struct sockaddr_un   sau;
+#endif
+} srvr_sockaddr_union_t;
+
+#endif /* HEADER_CURL_SERVER_SOCKADDR_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/sockfilt.c b/ap/lib/libcurl/curl-7.54.1/tests/server/sockfilt.c
new file mode 100644
index 0000000..42071a5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/sockfilt.c
@@ -0,0 +1,1571 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+/* Purpose
+ *
+ * 1. Accept a TCP connection on a custom port (IPv4 or IPv6), or connect
+ *    to a given (localhost) port.
+ *
+ * 2. Get commands on STDIN. Pass data on to the TCP stream.
+ *    Get data from TCP stream and pass on to STDOUT.
+ *
+ * This program is made to perform all the socket/stream/connection stuff for
+ * the test suite's (perl) FTP server. Previously the perl code did all of
+ * this by its own, but I decided to let this program do the socket layer
+ * because of several things:
+ *
+ * o We want the perl code to work with rather old perl installations, thus
+ *   we cannot use recent perl modules or features.
+ *
+ * o We want IPv6 support for systems that provide it, and doing optional IPv6
+ *   support in perl seems if not impossible so at least awkward.
+ *
+ * o We want FTP-SSL support, which means that a connection that starts with
+ *   plain sockets needs to be able to "go SSL" in the midst. This would also
+ *   require some nasty perl stuff I'd rather avoid.
+ *
+ * (Source originally based on sws.c)
+ */
+
+/*
+ * Signal handling notes for sockfilt
+ * ----------------------------------
+ *
+ * This program is a single-threaded process.
+ *
+ * This program is intended to be highly portable and as such it must be kept
+ * as simple as possible, due to this the only signal handling mechanisms used
+ * will be those of ANSI C, and used only in the most basic form which is good
+ * enough for the purpose of this program.
+ *
+ * For the above reason and the specific needs of this program signals SIGHUP,
+ * SIGPIPE and SIGALRM will be simply ignored on systems where this can be
+ * done.  If possible, signals SIGINT and SIGTERM will be handled by this
+ * program as an indication to cleanup and finish execution as soon as
+ * possible.  This will be achieved with a single signal handler
+ * 'exit_signal_handler' for both signals.
+ *
+ * The 'exit_signal_handler' upon the first SIGINT or SIGTERM received signal
+ * will just set to one the global var 'got_exit_signal' storing in global var
+ * 'exit_signal' the signal that triggered this change.
+ *
+ * Nothing fancy that could introduce problems is used, the program at certain
+ * points in its normal flow checks if var 'got_exit_signal' is set and in
+ * case this is true it just makes its way out of loops and functions in
+ * structured and well behaved manner to achieve proper program cleanup and
+ * termination.
+ *
+ * Even with the above mechanism implemented it is worthwile to note that
+ * other signals might still be received, or that there might be systems on
+ * which it is not possible to trap and ignore some of the above signals.
+ * This implies that for increased portability and reliability the program
+ * must be coded as if no signal was being ignored or handled at all.  Enjoy
+ * it!
+ */
+
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_ARPA_INET_H
+#include <arpa/inet.h>
+#endif
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+#include "getpart.h"
+#include "inet_pton.h"
+#include "util.h"
+#include "server_sockaddr.h"
+#include "warnless.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+#ifdef USE_WINSOCK
+#undef  EINTR
+#define EINTR    4 /* errno.h value */
+#undef  EAGAIN
+#define EAGAIN  11 /* errno.h value */
+#undef  ENOMEM
+#define ENOMEM  12 /* errno.h value */
+#undef  EINVAL
+#define EINVAL  22 /* errno.h value */
+#endif
+
+#define DEFAULT_PORT 8999
+
+#ifndef DEFAULT_LOGFILE
+#define DEFAULT_LOGFILE "log/sockfilt.log"
+#endif
+
+const char *serverlogfile = DEFAULT_LOGFILE;
+
+static bool verbose = FALSE;
+static bool bind_only = FALSE;
+#ifdef ENABLE_IPV6
+static bool use_ipv6 = FALSE;
+#endif
+static const char *ipv_inuse = "IPv4";
+static unsigned short port = DEFAULT_PORT;
+static unsigned short connectport = 0; /* if non-zero, we activate this mode */
+
+enum sockmode {
+  PASSIVE_LISTEN,    /* as a server waiting for connections */
+  PASSIVE_CONNECT,   /* as a server, connected to a client */
+  ACTIVE,            /* as a client, connected to a server */
+  ACTIVE_DISCONNECT  /* as a client, disconnected from server */
+};
+
+/* do-nothing macro replacement for systems which lack siginterrupt() */
+
+#ifndef HAVE_SIGINTERRUPT
+#define siginterrupt(x,y) do {} while(0)
+#endif
+
+/* vars used to keep around previous signal handlers */
+
+typedef RETSIGTYPE (*SIGHANDLER_T)(int);
+
+#ifdef SIGHUP
+static SIGHANDLER_T old_sighup_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGPIPE
+static SIGHANDLER_T old_sigpipe_handler = SIG_ERR;
+#endif
+
+#ifdef SIGALRM
+static SIGHANDLER_T old_sigalrm_handler = SIG_ERR;
+#endif
+
+#ifdef SIGINT
+static SIGHANDLER_T old_sigint_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGTERM
+static SIGHANDLER_T old_sigterm_handler = SIG_ERR;
+#endif
+
+#if defined(SIGBREAK) && defined(WIN32)
+static SIGHANDLER_T old_sigbreak_handler = SIG_ERR;
+#endif
+
+/* var which if set indicates that the program should finish execution */
+
+SIG_ATOMIC_T got_exit_signal = 0;
+
+/* if next is set indicates the first signal handled in exit_signal_handler */
+
+static volatile int exit_signal = 0;
+
+/* signal handler that will be triggered to indicate that the program
+  should finish its execution in a controlled manner as soon as possible.
+  The first time this is called it will set got_exit_signal to one and
+  store in exit_signal the signal that triggered its execution. */
+
+static RETSIGTYPE exit_signal_handler(int signum)
+{
+  int old_errno = errno;
+  if(got_exit_signal == 0) {
+    got_exit_signal = 1;
+    exit_signal = signum;
+  }
+  (void)signal(signum, exit_signal_handler);
+  errno = old_errno;
+}
+
+static void install_signal_handlers(void)
+{
+#ifdef SIGHUP
+  /* ignore SIGHUP signal */
+  old_sighup_handler = signal(SIGHUP, SIG_IGN);
+  if(old_sighup_handler == SIG_ERR)
+    logmsg("cannot install SIGHUP handler: %s", strerror(errno));
+#endif
+#ifdef SIGPIPE
+  /* ignore SIGPIPE signal */
+  old_sigpipe_handler = signal(SIGPIPE, SIG_IGN);
+  if(old_sigpipe_handler == SIG_ERR)
+    logmsg("cannot install SIGPIPE handler: %s", strerror(errno));
+#endif
+#ifdef SIGALRM
+  /* ignore SIGALRM signal */
+  old_sigalrm_handler = signal(SIGALRM, SIG_IGN);
+  if(old_sigalrm_handler == SIG_ERR)
+    logmsg("cannot install SIGALRM handler: %s", strerror(errno));
+#endif
+#ifdef SIGINT
+  /* handle SIGINT signal with our exit_signal_handler */
+  old_sigint_handler = signal(SIGINT, exit_signal_handler);
+  if(old_sigint_handler == SIG_ERR)
+    logmsg("cannot install SIGINT handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGINT, 1);
+#endif
+#ifdef SIGTERM
+  /* handle SIGTERM signal with our exit_signal_handler */
+  old_sigterm_handler = signal(SIGTERM, exit_signal_handler);
+  if(old_sigterm_handler == SIG_ERR)
+    logmsg("cannot install SIGTERM handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGTERM, 1);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  /* handle SIGBREAK signal with our exit_signal_handler */
+  old_sigbreak_handler = signal(SIGBREAK, exit_signal_handler);
+  if(old_sigbreak_handler == SIG_ERR)
+    logmsg("cannot install SIGBREAK handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGBREAK, 1);
+#endif
+}
+
+static void restore_signal_handlers(void)
+{
+#ifdef SIGHUP
+  if(SIG_ERR != old_sighup_handler)
+    (void)signal(SIGHUP, old_sighup_handler);
+#endif
+#ifdef SIGPIPE
+  if(SIG_ERR != old_sigpipe_handler)
+    (void)signal(SIGPIPE, old_sigpipe_handler);
+#endif
+#ifdef SIGALRM
+  if(SIG_ERR != old_sigalrm_handler)
+    (void)signal(SIGALRM, old_sigalrm_handler);
+#endif
+#ifdef SIGINT
+  if(SIG_ERR != old_sigint_handler)
+    (void)signal(SIGINT, old_sigint_handler);
+#endif
+#ifdef SIGTERM
+  if(SIG_ERR != old_sigterm_handler)
+    (void)signal(SIGTERM, old_sigterm_handler);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  if(SIG_ERR != old_sigbreak_handler)
+    (void)signal(SIGBREAK, old_sigbreak_handler);
+#endif
+}
+
+#ifdef WIN32
+/*
+ * read-wrapper to support reading from stdin on Windows.
+ */
+static ssize_t read_wincon(int fd, void *buf, size_t count)
+{
+  HANDLE handle = NULL;
+  DWORD mode, rcount = 0;
+  BOOL success;
+
+  if(fd == fileno(stdin)) {
+    handle = GetStdHandle(STD_INPUT_HANDLE);
+  }
+  else {
+    return read(fd, buf, count);
+  }
+
+  if(GetConsoleMode(handle, &mode)) {
+    success = ReadConsole(handle, buf, curlx_uztoul(count), &rcount, NULL);
+  }
+  else {
+    success = ReadFile(handle, buf, curlx_uztoul(count), &rcount, NULL);
+  }
+  if(success) {
+    return rcount;
+  }
+
+  errno = GetLastError();
+  return -1;
+}
+#undef  read
+#define read(a,b,c) read_wincon(a,b,c)
+
+/*
+ * write-wrapper to support writing to stdout and stderr on Windows.
+ */
+static ssize_t write_wincon(int fd, const void *buf, size_t count)
+{
+  HANDLE handle = NULL;
+  DWORD mode, wcount = 0;
+  BOOL success;
+
+  if(fd == fileno(stdout)) {
+    handle = GetStdHandle(STD_OUTPUT_HANDLE);
+  }
+  else if(fd == fileno(stderr)) {
+    handle = GetStdHandle(STD_ERROR_HANDLE);
+  }
+  else {
+    return write(fd, buf, count);
+  }
+
+  if(GetConsoleMode(handle, &mode)) {
+    success = WriteConsole(handle, buf, curlx_uztoul(count), &wcount, NULL);
+  }
+  else {
+    success = WriteFile(handle, buf, curlx_uztoul(count), &wcount, NULL);
+  }
+  if(success) {
+    return wcount;
+  }
+
+  errno = GetLastError();
+  return -1;
+}
+#undef  write
+#define write(a,b,c) write_wincon(a,b,c)
+#endif
+
+/*
+ * fullread is a wrapper around the read() function. This will repeat the call
+ * to read() until it actually has read the complete number of bytes indicated
+ * in nbytes or it fails with a condition that cannot be handled with a simple
+ * retry of the read call.
+ */
+
+static ssize_t fullread(int filedes, void *buffer, size_t nbytes)
+{
+  int error;
+  ssize_t rc;
+  ssize_t nread = 0;
+
+  do {
+    rc = read(filedes, (unsigned char *)buffer + nread, nbytes - nread);
+
+    if(got_exit_signal) {
+      logmsg("signalled to die");
+      return -1;
+    }
+
+    if(rc < 0) {
+      error = errno;
+      if((error == EINTR) || (error == EAGAIN))
+        continue;
+      logmsg("reading from file descriptor: %d,", filedes);
+      logmsg("unrecoverable read() failure: (%d) %s",
+             error, strerror(error));
+      return -1;
+    }
+
+    if(rc == 0) {
+      logmsg("got 0 reading from stdin");
+      return 0;
+    }
+
+    nread += rc;
+
+  } while((size_t)nread < nbytes);
+
+  if(verbose)
+    logmsg("read %zd bytes", nread);
+
+  return nread;
+}
+
+/*
+ * fullwrite is a wrapper around the write() function. This will repeat the
+ * call to write() until it actually has written the complete number of bytes
+ * indicated in nbytes or it fails with a condition that cannot be handled
+ * with a simple retry of the write call.
+ */
+
+static ssize_t fullwrite(int filedes, const void *buffer, size_t nbytes)
+{
+  int error;
+  ssize_t wc;
+  ssize_t nwrite = 0;
+
+  do {
+    wc = write(filedes, (const unsigned char *)buffer + nwrite,
+               nbytes - nwrite);
+
+    if(got_exit_signal) {
+      logmsg("signalled to die");
+      return -1;
+    }
+
+    if(wc < 0) {
+      error = errno;
+      if((error == EINTR) || (error == EAGAIN))
+        continue;
+      logmsg("writing to file descriptor: %d,", filedes);
+      logmsg("unrecoverable write() failure: (%d) %s",
+             error, strerror(error));
+      return -1;
+    }
+
+    if(wc == 0) {
+      logmsg("put 0 writing to stdout");
+      return 0;
+    }
+
+    nwrite += wc;
+
+  } while((size_t)nwrite < nbytes);
+
+  if(verbose)
+    logmsg("wrote %zd bytes", nwrite);
+
+  return nwrite;
+}
+
+/*
+ * read_stdin tries to read from stdin nbytes into the given buffer. This is a
+ * blocking function that will only return TRUE when nbytes have actually been
+ * read or FALSE when an unrecoverable error has been detected. Failure of this
+ * function is an indication that the sockfilt process should terminate.
+ */
+
+static bool read_stdin(void *buffer, size_t nbytes)
+{
+  ssize_t nread = fullread(fileno(stdin), buffer, nbytes);
+  if(nread != (ssize_t)nbytes) {
+    logmsg("exiting...");
+    return FALSE;
+  }
+  return TRUE;
+}
+
+/*
+ * write_stdout tries to write to stdio nbytes from the given buffer. This is a
+ * blocking function that will only return TRUE when nbytes have actually been
+ * written or FALSE when an unrecoverable error has been detected. Failure of
+ * this function is an indication that the sockfilt process should terminate.
+ */
+
+static bool write_stdout(const void *buffer, size_t nbytes)
+{
+  ssize_t nwrite = fullwrite(fileno(stdout), buffer, nbytes);
+  if(nwrite != (ssize_t)nbytes) {
+    logmsg("exiting...");
+    return FALSE;
+  }
+  return TRUE;
+}
+
+static void lograw(unsigned char *buffer, ssize_t len)
+{
+  char data[120];
+  ssize_t i;
+  unsigned char *ptr = buffer;
+  char *optr = data;
+  ssize_t width=0;
+  int left = sizeof(data);
+
+  for(i=0; i<len; i++) {
+    switch(ptr[i]) {
+    case '\n':
+      snprintf(optr, left, "\\n");
+      width += 2;
+      optr += 2;
+      left-=2;
+      break;
+    case '\r':
+      snprintf(optr, left, "\\r");
+      width += 2;
+      optr += 2;
+      left-=2;
+      break;
+    default:
+      snprintf(optr, left, "%c", (ISGRAPH(ptr[i]) ||
+                                  ptr[i]==0x20) ?ptr[i]:'.');
+      width++;
+      optr++;
+      left--;
+      break;
+    }
+
+    if(width>60) {
+      logmsg("'%s'", data);
+      width = 0;
+      optr = data;
+      left = sizeof(data);
+    }
+  }
+  if(width)
+    logmsg("'%s'", data);
+}
+
+#ifdef USE_WINSOCK
+/*
+ * WinSock select() does not support standard file descriptors,
+ * it can only check SOCKETs. The following function is an attempt
+ * to re-create a select() function with support for other handle types.
+ *
+ * select() function with support for WINSOCK2 sockets and all
+ * other handle types supported by WaitForMultipleObjectsEx() as
+ * well as disk files, anonymous and names pipes, and character input.
+ *
+ * https://msdn.microsoft.com/en-us/library/windows/desktop/ms687028.aspx
+ * https://msdn.microsoft.com/en-us/library/windows/desktop/ms741572.aspx
+ */
+struct select_ws_wait_data {
+  HANDLE handle; /* actual handle to wait for during select */
+  HANDLE event;  /* internal event to abort waiting thread */
+};
+static DWORD WINAPI select_ws_wait_thread(LPVOID lpParameter)
+{
+  struct select_ws_wait_data *data;
+  HANDLE handle, handles[2];
+  INPUT_RECORD inputrecord;
+  LARGE_INTEGER size, pos;
+  DWORD type, length;
+
+  /* retrieve handles from internal structure */
+  data = (struct select_ws_wait_data *) lpParameter;
+  if(data) {
+    handle = data->handle;
+    handles[0] = data->event;
+    handles[1] = handle;
+    free(data);
+  }
+  else
+    return -1;
+
+  /* retrieve the type of file to wait on */
+  type = GetFileType(handle);
+  switch(type) {
+    case FILE_TYPE_DISK:
+       /* The handle represents a file on disk, this means:
+        * - WaitForMultipleObjectsEx will always be signalled for it.
+        * - comparison of current position in file and total size of
+        *   the file can be used to check if we reached the end yet.
+        *
+        * Approach: Loop till either the internal event is signalled
+        *           or if the end of the file has already been reached.
+        */
+      while(WaitForMultipleObjectsEx(1, handles, FALSE, 0, FALSE)
+            == WAIT_TIMEOUT) {
+        /* get total size of file */
+        length = 0;
+        size.QuadPart = 0;
+        size.LowPart = GetFileSize(handle, &length);
+        if((size.LowPart != INVALID_FILE_SIZE) ||
+           (GetLastError() == NO_ERROR)) {
+          size.HighPart = length;
+          /* get the current position within the file */
+          pos.QuadPart = 0;
+          pos.LowPart = SetFilePointer(handle, 0, &pos.HighPart,
+                                       FILE_CURRENT);
+          if((pos.LowPart != INVALID_SET_FILE_POINTER) ||
+             (GetLastError() == NO_ERROR)) {
+            /* compare position with size, abort if not equal */
+            if(size.QuadPart == pos.QuadPart) {
+              /* sleep and continue waiting */
+              SleepEx(0, FALSE);
+              continue;
+            }
+          }
+        }
+        /* there is some data available, stop waiting */
+        break;
+      }
+      break;
+
+    case FILE_TYPE_CHAR:
+       /* The handle represents a character input, this means:
+        * - WaitForMultipleObjectsEx will be signalled on any kind of input,
+        *   including mouse and window size events we do not care about.
+        *
+        * Approach: Loop till either the internal event is signalled
+        *           or we get signalled for an actual key-event.
+        */
+      while(WaitForMultipleObjectsEx(2, handles, FALSE, INFINITE, FALSE)
+            == WAIT_OBJECT_0 + 1) {
+        /* check if this is an actual console handle */
+        length = 0;
+        if(GetConsoleMode(handle, &length)) {
+          /* retrieve an event from the console buffer */
+          length = 0;
+          if(PeekConsoleInput(handle, &inputrecord, 1, &length)) {
+            /* check if the event is not an actual key-event */
+            if(length == 1 && inputrecord.EventType != KEY_EVENT) {
+              /* purge the non-key-event and continue waiting */
+              ReadConsoleInput(handle, &inputrecord, 1, &length);
+              continue;
+            }
+          }
+        }
+        /* there is some data available, stop waiting */
+        break;
+      }
+      break;
+
+    case FILE_TYPE_PIPE:
+       /* The handle represents an anonymous or named pipe, this means:
+        * - WaitForMultipleObjectsEx will always be signalled for it.
+        * - peek into the pipe and retrieve the amount of data available.
+        *
+        * Approach: Loop till either the internal event is signalled
+        *           or there is data in the pipe available for reading.
+        */
+      while(WaitForMultipleObjectsEx(1, handles, FALSE, 0, FALSE)
+            == WAIT_TIMEOUT) {
+        /* peek into the pipe and retrieve the amount of data available */
+        length = 0;
+        if(PeekNamedPipe(handle, NULL, 0, NULL, &length, NULL)) {
+          /* if there is no data available, sleep and continue waiting */
+          if(length == 0) {
+            SleepEx(0, FALSE);
+            continue;
+          }
+        }
+        else {
+          /* if the pipe has been closed, sleep and continue waiting */
+          if(GetLastError() == ERROR_BROKEN_PIPE) {
+            SleepEx(0, FALSE);
+            continue;
+          }
+        }
+        /* there is some data available, stop waiting */
+        break;
+      }
+      break;
+
+    default:
+      /* The handle has an unknown type, try to wait on it */
+      WaitForMultipleObjectsEx(2, handles, FALSE, INFINITE, FALSE);
+      break;
+  }
+
+  return 0;
+}
+static HANDLE select_ws_wait(HANDLE handle, HANDLE event)
+{
+  struct select_ws_wait_data *data;
+  HANDLE thread = NULL;
+
+  /* allocate internal waiting data structure */
+  data = malloc(sizeof(struct select_ws_wait_data));
+  if(data) {
+    data->handle = handle;
+    data->event = event;
+
+    /* launch waiting thread */
+    thread = CreateThread(NULL, 0,
+                          &select_ws_wait_thread,
+                          data, 0, NULL);
+
+    /* free data if thread failed to launch */
+    if(!thread) {
+      free(data);
+    }
+  }
+
+  return thread;
+}
+struct select_ws_data {
+  curl_socket_t fd;      /* the original input handle   (indexed by fds) */
+  curl_socket_t wsasock; /* the internal socket handle  (indexed by wsa) */
+  WSAEVENT wsaevent;     /* the internal WINSOCK2 event (indexed by wsa) */
+  HANDLE thread;         /* the internal threads handle (indexed by thd) */
+};
+static int select_ws(int nfds, fd_set *readfds, fd_set *writefds,
+                     fd_set *exceptfds, struct timeval *timeout)
+{
+  DWORD milliseconds, wait, idx;
+  WSANETWORKEVENTS wsanetevents;
+  struct select_ws_data *data;
+  HANDLE handle, *handles;
+  curl_socket_t sock;
+  long networkevents;
+  WSAEVENT wsaevent;
+  int error, fds;
+  HANDLE waitevent = NULL;
+  DWORD nfd = 0, thd = 0, wsa = 0;
+  int ret = 0;
+
+  /* check if the input value is valid */
+  if(nfds < 0) {
+    errno = EINVAL;
+    return -1;
+  }
+
+  /* check if we got descriptors, sleep in case we got none */
+  if(!nfds) {
+    Sleep((timeout->tv_sec*1000)+(DWORD)(((double)timeout->tv_usec)/1000.0));
+    return 0;
+  }
+
+  /* create internal event to signal waiting threads */
+  waitevent = CreateEvent(NULL, TRUE, FALSE, NULL);
+  if(!waitevent) {
+    errno = ENOMEM;
+    return -1;
+  }
+
+  /* allocate internal array for the internal data */
+  data = malloc(nfds * sizeof(struct select_ws_data));
+  if(data == NULL) {
+    errno = ENOMEM;
+    return -1;
+  }
+
+  /* allocate internal array for the internal event handles */
+  handles = malloc(nfds * sizeof(HANDLE));
+  if(handles == NULL) {
+    free(data);
+    errno = ENOMEM;
+    return -1;
+  }
+
+  /* clear internal arrays */
+  memset(data, 0, nfds * sizeof(struct select_ws_data));
+  memset(handles, 0, nfds * sizeof(HANDLE));
+
+  /* loop over the handles in the input descriptor sets */
+  for(fds = 0; fds < nfds; fds++) {
+    networkevents = 0;
+    handles[nfd] = 0;
+
+    if(FD_ISSET(fds, readfds))
+      networkevents |= FD_READ|FD_ACCEPT|FD_CLOSE;
+
+    if(FD_ISSET(fds, writefds))
+      networkevents |= FD_WRITE|FD_CONNECT;
+
+    if(FD_ISSET(fds, exceptfds))
+      networkevents |= FD_OOB|FD_CLOSE;
+
+    /* only wait for events for which we actually care */
+    if(networkevents) {
+      data[nfd].fd = curlx_sitosk(fds);
+      if(fds == fileno(stdin)) {
+        handle = GetStdHandle(STD_INPUT_HANDLE);
+        handle = select_ws_wait(handle, waitevent);
+        handles[nfd] = handle;
+        data[thd].thread = handle;
+        thd++;
+      }
+      else if(fds == fileno(stdout)) {
+        handles[nfd] = GetStdHandle(STD_OUTPUT_HANDLE);
+      }
+      else if(fds == fileno(stderr)) {
+        handles[nfd] = GetStdHandle(STD_ERROR_HANDLE);
+      }
+      else {
+        wsaevent = WSACreateEvent();
+        if(wsaevent != WSA_INVALID_EVENT) {
+          error = WSAEventSelect(fds, wsaevent, networkevents);
+          if(error != SOCKET_ERROR) {
+            handle = (HANDLE) wsaevent;
+            handles[nfd] = handle;
+            data[wsa].wsasock = curlx_sitosk(fds);
+            data[wsa].wsaevent = wsaevent;
+            wsa++;
+          }
+          else {
+            WSACloseEvent(wsaevent);
+            handle = (HANDLE) curlx_sitosk(fds);
+            handle = select_ws_wait(handle, waitevent);
+            handles[nfd] = handle;
+            data[thd].thread = handle;
+            thd++;
+          }
+        }
+      }
+      nfd++;
+    }
+  }
+
+  /* convert struct timeval to milliseconds */
+  if(timeout) {
+    milliseconds = ((timeout->tv_sec * 1000) + (timeout->tv_usec / 1000));
+  }
+  else {
+    milliseconds = INFINITE;
+  }
+
+  /* wait for one of the internal handles to trigger */
+  wait = WaitForMultipleObjectsEx(nfd, handles, FALSE, milliseconds, FALSE);
+
+  /* signal the event handle for the waiting threads */
+  SetEvent(waitevent);
+
+  /* loop over the internal handles returned in the descriptors */
+  for(idx = 0; idx < nfd; idx++) {
+    handle = handles[idx];
+    sock = data[idx].fd;
+    fds = curlx_sktosi(sock);
+
+    /* check if the current internal handle was triggered */
+    if(wait != WAIT_FAILED && (wait - WAIT_OBJECT_0) <= idx &&
+       WaitForSingleObjectEx(handle, 0, FALSE) == WAIT_OBJECT_0) {
+      /* first handle stdin, stdout and stderr */
+      if(fds == fileno(stdin)) {
+        /* stdin is never ready for write or exceptional */
+        FD_CLR(sock, writefds);
+        FD_CLR(sock, exceptfds);
+      }
+      else if(fds == fileno(stdout) || fds == fileno(stderr)) {
+        /* stdout and stderr are never ready for read or exceptional */
+        FD_CLR(sock, readfds);
+        FD_CLR(sock, exceptfds);
+      }
+      else {
+        /* try to handle the event with the WINSOCK2 functions */
+        wsanetevents.lNetworkEvents = 0;
+        error = WSAEnumNetworkEvents(fds, handle, &wsanetevents);
+        if(error != SOCKET_ERROR) {
+          /* remove from descriptor set if not ready for read/accept/close */
+          if(!(wsanetevents.lNetworkEvents & (FD_READ|FD_ACCEPT|FD_CLOSE)))
+            FD_CLR(sock, readfds);
+
+          /* remove from descriptor set if not ready for write/connect */
+          if(!(wsanetevents.lNetworkEvents & (FD_WRITE|FD_CONNECT)))
+            FD_CLR(sock, writefds);
+
+          /* HACK:
+           * use exceptfds together with readfds to signal
+           * that the connection was closed by the client.
+           *
+           * Reason: FD_CLOSE is only signaled once, sometimes
+           * at the same time as FD_READ with data being available.
+           * This means that recv/sread is not reliable to detect
+           * that the connection is closed.
+           */
+          /* remove from descriptor set if not exceptional */
+          if(!(wsanetevents.lNetworkEvents & (FD_OOB|FD_CLOSE)))
+            FD_CLR(sock, exceptfds);
+        }
+      }
+
+      /* check if the event has not been filtered using specific tests */
+      if(FD_ISSET(sock, readfds) || FD_ISSET(sock, writefds) ||
+         FD_ISSET(sock, exceptfds)) {
+        ret++;
+      }
+    }
+    else {
+      /* remove from all descriptor sets since this handle did not trigger */
+      FD_CLR(sock, readfds);
+      FD_CLR(sock, writefds);
+      FD_CLR(sock, exceptfds);
+    }
+  }
+
+  for(fds = 0; fds < nfds; fds++) {
+    if(FD_ISSET(fds, readfds))
+      logmsg("select_ws: %d is readable", fds);
+
+    if(FD_ISSET(fds, writefds))
+      logmsg("select_ws: %d is writable", fds);
+
+    if(FD_ISSET(fds, exceptfds))
+      logmsg("select_ws: %d is excepted", fds);
+  }
+
+  for(idx = 0; idx < wsa; idx++) {
+    WSAEventSelect(data[idx].wsasock, NULL, 0);
+    WSACloseEvent(data[idx].wsaevent);
+  }
+
+  for(idx = 0; idx < thd; idx++) {
+    WaitForSingleObject(data[idx].thread, INFINITE);
+    CloseHandle(data[idx].thread);
+  }
+
+  CloseHandle(waitevent);
+
+  free(handles);
+  free(data);
+
+  return ret;
+}
+#define select(a,b,c,d,e) select_ws(a,b,c,d,e)
+#endif  /* USE_WINSOCK */
+
+/*
+  sockfdp is a pointer to an established stream or CURL_SOCKET_BAD
+
+  if sockfd is CURL_SOCKET_BAD, listendfd is a listening socket we must
+  accept()
+*/
+static bool juggle(curl_socket_t *sockfdp,
+                   curl_socket_t listenfd,
+                   enum sockmode *mode)
+{
+  struct timeval timeout;
+  fd_set fds_read;
+  fd_set fds_write;
+  fd_set fds_err;
+  curl_socket_t sockfd = CURL_SOCKET_BAD;
+  int maxfd = -99;
+  ssize_t rc;
+  ssize_t nread_socket;
+  ssize_t bytes_written;
+  ssize_t buffer_len;
+  int error = 0;
+
+ /* 'buffer' is this excessively large only to be able to support things like
+    test 1003 which tests exceedingly large server response lines */
+  unsigned char buffer[17010];
+  char data[16];
+
+  if(got_exit_signal) {
+    logmsg("signalled to die, exiting...");
+    return FALSE;
+  }
+
+#ifdef HAVE_GETPPID
+  /* As a last resort, quit if sockfilt process becomes orphan. Just in case
+     parent ftpserver process has died without killing its sockfilt children */
+  if(getppid() <= 1) {
+    logmsg("process becomes orphan, exiting");
+    return FALSE;
+  }
+#endif
+
+  timeout.tv_sec = 120;
+  timeout.tv_usec = 0;
+
+  FD_ZERO(&fds_read);
+  FD_ZERO(&fds_write);
+  FD_ZERO(&fds_err);
+
+  FD_SET((curl_socket_t)fileno(stdin), &fds_read);
+
+  switch(*mode) {
+
+  case PASSIVE_LISTEN:
+
+    /* server mode */
+    sockfd = listenfd;
+    /* there's always a socket to wait for */
+    FD_SET(sockfd, &fds_read);
+    maxfd = (int)sockfd;
+    break;
+
+  case PASSIVE_CONNECT:
+
+    sockfd = *sockfdp;
+    if(CURL_SOCKET_BAD == sockfd) {
+      /* eeek, we are supposedly connected and then this cannot be -1 ! */
+      logmsg("socket is -1! on %s:%d", __FILE__, __LINE__);
+      maxfd = 0; /* stdin */
+    }
+    else {
+      /* there's always a socket to wait for */
+      FD_SET(sockfd, &fds_read);
+#ifdef USE_WINSOCK
+      FD_SET(sockfd, &fds_err);
+#endif
+      maxfd = (int)sockfd;
+    }
+    break;
+
+  case ACTIVE:
+
+    sockfd = *sockfdp;
+    /* sockfd turns CURL_SOCKET_BAD when our connection has been closed */
+    if(CURL_SOCKET_BAD != sockfd) {
+      FD_SET(sockfd, &fds_read);
+#ifdef USE_WINSOCK
+      FD_SET(sockfd, &fds_err);
+#endif
+      maxfd = (int)sockfd;
+    }
+    else {
+      logmsg("No socket to read on");
+      maxfd = 0;
+    }
+    break;
+
+  case ACTIVE_DISCONNECT:
+
+    logmsg("disconnected, no socket to read on");
+    maxfd = 0;
+    sockfd = CURL_SOCKET_BAD;
+    break;
+
+  } /* switch(*mode) */
+
+
+  do {
+
+    /* select() blocking behavior call on blocking descriptors please */
+
+    rc = select(maxfd + 1, &fds_read, &fds_write, &fds_err, &timeout);
+
+    if(got_exit_signal) {
+      logmsg("signalled to die, exiting...");
+      return FALSE;
+    }
+
+  } while((rc == -1) && ((error = errno) == EINTR));
+
+  if(rc < 0) {
+    logmsg("select() failed with error: (%d) %s",
+           error, strerror(error));
+    return FALSE;
+  }
+
+  if(rc == 0)
+    /* timeout */
+    return TRUE;
+
+
+  if(FD_ISSET(fileno(stdin), &fds_read)) {
+    /* read from stdin, commands/data to be dealt with and possibly passed on
+       to the socket
+
+       protocol:
+
+       4 letter command + LF [mandatory]
+
+       4-digit hexadecimal data length + LF [if the command takes data]
+       data                       [the data being as long as set above]
+
+       Commands:
+
+       DATA - plain pass-thru data
+    */
+
+    if(!read_stdin(buffer, 5))
+      return FALSE;
+
+    logmsg("Received %c%c%c%c (on stdin)",
+           buffer[0], buffer[1], buffer[2], buffer[3]);
+
+    if(!memcmp("PING", buffer, 4)) {
+      /* send reply on stdout, just proving we are alive */
+      if(!write_stdout("PONG\n", 5))
+        return FALSE;
+    }
+
+    else if(!memcmp("PORT", buffer, 4)) {
+      /* Question asking us what PORT number we are listening to.
+         Replies to PORT with "IPv[num]/[port]" */
+      snprintf((char *)buffer, sizeof(buffer), "%s/%hu\n", ipv_inuse, port);
+      buffer_len = (ssize_t)strlen((char *)buffer);
+      snprintf(data, sizeof(data), "PORT\n%04zx\n", buffer_len);
+      if(!write_stdout(data, 10))
+        return FALSE;
+      if(!write_stdout(buffer, buffer_len))
+        return FALSE;
+    }
+    else if(!memcmp("QUIT", buffer, 4)) {
+      /* just die */
+      logmsg("quits");
+      return FALSE;
+    }
+    else if(!memcmp("DATA", buffer, 4)) {
+      /* data IN => data OUT */
+
+      if(!read_stdin(buffer, 5))
+        return FALSE;
+
+      buffer[5] = '\0';
+
+      buffer_len = (ssize_t)strtol((char *)buffer, NULL, 16);
+      if(buffer_len > (ssize_t)sizeof(buffer)) {
+        logmsg("ERROR: Buffer size (%zu bytes) too small for data size "
+               "(%zd bytes)", sizeof(buffer), buffer_len);
+        return FALSE;
+      }
+      logmsg("> %zd bytes data, server => client", buffer_len);
+
+      if(!read_stdin(buffer, buffer_len))
+        return FALSE;
+
+      lograw(buffer, buffer_len);
+
+      if(*mode == PASSIVE_LISTEN) {
+        logmsg("*** We are disconnected!");
+        if(!write_stdout("DISC\n", 5))
+          return FALSE;
+      }
+      else {
+        /* send away on the socket */
+        bytes_written = swrite(sockfd, buffer, buffer_len);
+        if(bytes_written != buffer_len) {
+          logmsg("Not all data was sent. Bytes to send: %zd sent: %zd",
+                 buffer_len, bytes_written);
+        }
+      }
+    }
+    else if(!memcmp("DISC", buffer, 4)) {
+      /* disconnect! */
+      if(!write_stdout("DISC\n", 5))
+        return FALSE;
+      if(sockfd != CURL_SOCKET_BAD) {
+        logmsg("====> Client forcibly disconnected");
+        sclose(sockfd);
+        *sockfdp = CURL_SOCKET_BAD;
+        if(*mode == PASSIVE_CONNECT)
+          *mode = PASSIVE_LISTEN;
+        else
+          *mode = ACTIVE_DISCONNECT;
+      }
+      else
+        logmsg("attempt to close already dead connection");
+      return TRUE;
+    }
+  }
+
+
+  if((sockfd != CURL_SOCKET_BAD) && (FD_ISSET(sockfd, &fds_read)) ) {
+
+    curl_socket_t newfd = CURL_SOCKET_BAD; /* newly accepted socket */
+
+    if(*mode == PASSIVE_LISTEN) {
+      /* there's no stream set up yet, this is an indication that there's a
+         client connecting. */
+      newfd = accept(sockfd, NULL, NULL);
+      if(CURL_SOCKET_BAD == newfd) {
+        error = SOCKERRNO;
+        logmsg("accept(%d, NULL, NULL) failed with error: (%d) %s",
+               sockfd, error, strerror(error));
+      }
+      else {
+        logmsg("====> Client connect");
+        if(!write_stdout("CNCT\n", 5))
+          return FALSE;
+        *sockfdp = newfd; /* store the new socket */
+        *mode = PASSIVE_CONNECT; /* we have connected */
+      }
+      return TRUE;
+    }
+
+    /* read from socket, pass on data to stdout */
+    nread_socket = sread(sockfd, buffer, sizeof(buffer));
+
+    if(nread_socket > 0) {
+      snprintf(data, sizeof(data), "DATA\n%04zx\n", nread_socket);
+      if(!write_stdout(data, 10))
+        return FALSE;
+      if(!write_stdout(buffer, nread_socket))
+        return FALSE;
+
+      logmsg("< %zd bytes data, client => server", nread_socket);
+      lograw(buffer, nread_socket);
+    }
+
+    if(nread_socket <= 0
+#ifdef USE_WINSOCK
+       || FD_ISSET(sockfd, &fds_err)
+#endif
+       ) {
+      logmsg("====> Client disconnect");
+      if(!write_stdout("DISC\n", 5))
+        return FALSE;
+      sclose(sockfd);
+      *sockfdp = CURL_SOCKET_BAD;
+      if(*mode == PASSIVE_CONNECT)
+        *mode = PASSIVE_LISTEN;
+      else
+        *mode = ACTIVE_DISCONNECT;
+      return TRUE;
+    }
+  }
+
+  return TRUE;
+}
+
+static curl_socket_t sockdaemon(curl_socket_t sock,
+                                unsigned short *listenport)
+{
+  /* passive daemon style */
+  srvr_sockaddr_union_t listener;
+  int flag;
+  int rc;
+  int totdelay = 0;
+  int maxretr = 10;
+  int delay= 20;
+  int attempt = 0;
+  int error = 0;
+
+  do {
+    attempt++;
+    flag = 1;
+    rc = setsockopt(sock, SOL_SOCKET, SO_REUSEADDR,
+         (void *)&flag, sizeof(flag));
+    if(rc) {
+      error = SOCKERRNO;
+      logmsg("setsockopt(SO_REUSEADDR) failed with error: (%d) %s",
+             error, strerror(error));
+      if(maxretr) {
+        rc = wait_ms(delay);
+        if(rc) {
+          /* should not happen */
+          error = errno;
+          logmsg("wait_ms() failed with error: (%d) %s",
+                 error, strerror(error));
+          sclose(sock);
+          return CURL_SOCKET_BAD;
+        }
+        if(got_exit_signal) {
+          logmsg("signalled to die, exiting...");
+          sclose(sock);
+          return CURL_SOCKET_BAD;
+        }
+        totdelay += delay;
+        delay *= 2; /* double the sleep for next attempt */
+      }
+    }
+  } while(rc && maxretr--);
+
+  if(rc) {
+    logmsg("setsockopt(SO_REUSEADDR) failed %d times in %d ms. Error: (%d) %s",
+           attempt, totdelay, error, strerror(error));
+    logmsg("Continuing anyway...");
+  }
+
+  /* When the specified listener port is zero, it is actually a
+     request to let the system choose a non-zero available port. */
+
+#ifdef ENABLE_IPV6
+  if(!use_ipv6) {
+#endif
+    memset(&listener.sa4, 0, sizeof(listener.sa4));
+    listener.sa4.sin_family = AF_INET;
+    listener.sa4.sin_addr.s_addr = INADDR_ANY;
+    listener.sa4.sin_port = htons(*listenport);
+    rc = bind(sock, &listener.sa, sizeof(listener.sa4));
+#ifdef ENABLE_IPV6
+  }
+  else {
+    memset(&listener.sa6, 0, sizeof(listener.sa6));
+    listener.sa6.sin6_family = AF_INET6;
+    listener.sa6.sin6_addr = in6addr_any;
+    listener.sa6.sin6_port = htons(*listenport);
+    rc = bind(sock, &listener.sa, sizeof(listener.sa6));
+  }
+#endif /* ENABLE_IPV6 */
+  if(rc) {
+    error = SOCKERRNO;
+    logmsg("Error binding socket on port %hu: (%d) %s",
+           *listenport, error, strerror(error));
+    sclose(sock);
+    return CURL_SOCKET_BAD;
+  }
+
+  if(!*listenport) {
+    /* The system was supposed to choose a port number, figure out which
+       port we actually got and update the listener port value with it. */
+    curl_socklen_t la_size;
+    srvr_sockaddr_union_t localaddr;
+#ifdef ENABLE_IPV6
+    if(!use_ipv6)
+#endif
+      la_size = sizeof(localaddr.sa4);
+#ifdef ENABLE_IPV6
+    else
+      la_size = sizeof(localaddr.sa6);
+#endif
+    memset(&localaddr.sa, 0, (size_t)la_size);
+    if(getsockname(sock, &localaddr.sa, &la_size) < 0) {
+      error = SOCKERRNO;
+      logmsg("getsockname() failed with error: (%d) %s",
+             error, strerror(error));
+      sclose(sock);
+      return CURL_SOCKET_BAD;
+    }
+    switch(localaddr.sa.sa_family) {
+    case AF_INET:
+      *listenport = ntohs(localaddr.sa4.sin_port);
+      break;
+#ifdef ENABLE_IPV6
+    case AF_INET6:
+      *listenport = ntohs(localaddr.sa6.sin6_port);
+      break;
+#endif
+    default:
+      break;
+    }
+    if(!*listenport) {
+      /* Real failure, listener port shall not be zero beyond this point. */
+      logmsg("Apparently getsockname() succeeded, with listener port zero.");
+      logmsg("A valid reason for this failure is a binary built without");
+      logmsg("proper network library linkage. This might not be the only");
+      logmsg("reason, but double check it before anything else.");
+      sclose(sock);
+      return CURL_SOCKET_BAD;
+    }
+  }
+
+  /* bindonly option forces no listening */
+  if(bind_only) {
+    logmsg("instructed to bind port without listening");
+    return sock;
+  }
+
+  /* start accepting connections */
+  rc = listen(sock, 5);
+  if(0 != rc) {
+    error = SOCKERRNO;
+    logmsg("listen(%d, 5) failed with error: (%d) %s",
+           sock, error, strerror(error));
+    sclose(sock);
+    return CURL_SOCKET_BAD;
+  }
+
+  return sock;
+}
+
+
+int main(int argc, char *argv[])
+{
+  srvr_sockaddr_union_t me;
+  curl_socket_t sock = CURL_SOCKET_BAD;
+  curl_socket_t msgsock = CURL_SOCKET_BAD;
+  int wrotepidfile = 0;
+  const char *pidname = ".sockfilt.pid";
+  bool juggle_again;
+  int rc;
+  int error;
+  int arg=1;
+  enum sockmode mode = PASSIVE_LISTEN; /* default */
+  const char *addr = NULL;
+
+  while(argc>arg) {
+    if(!strcmp("--version", argv[arg])) {
+      printf("sockfilt IPv4%s\n",
+#ifdef ENABLE_IPV6
+             "/IPv6"
+#else
+             ""
+#endif
+             );
+      return 0;
+    }
+    else if(!strcmp("--verbose", argv[arg])) {
+      verbose = TRUE;
+      arg++;
+    }
+    else if(!strcmp("--pidfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        pidname = argv[arg++];
+    }
+    else if(!strcmp("--logfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        serverlogfile = argv[arg++];
+    }
+    else if(!strcmp("--ipv6", argv[arg])) {
+#ifdef ENABLE_IPV6
+      ipv_inuse = "IPv6";
+      use_ipv6 = TRUE;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--ipv4", argv[arg])) {
+      /* for completeness, we support this option as well */
+#ifdef ENABLE_IPV6
+      ipv_inuse = "IPv4";
+      use_ipv6 = FALSE;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--bindonly", argv[arg])) {
+      bind_only = TRUE;
+      arg++;
+    }
+    else if(!strcmp("--port", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        char *endptr;
+        unsigned long ulnum = strtoul(argv[arg], &endptr, 10);
+        if((endptr != argv[arg] + strlen(argv[arg])) ||
+           ((ulnum != 0UL) && ((ulnum < 1025UL) || (ulnum > 65535UL)))) {
+          fprintf(stderr, "sockfilt: invalid --port argument (%s)\n",
+                  argv[arg]);
+          return 0;
+        }
+        port = curlx_ultous(ulnum);
+        arg++;
+      }
+    }
+    else if(!strcmp("--connect", argv[arg])) {
+      /* Asked to actively connect to the specified local port instead of
+         doing a passive server-style listening. */
+      arg++;
+      if(argc>arg) {
+        char *endptr;
+        unsigned long ulnum = strtoul(argv[arg], &endptr, 10);
+        if((endptr != argv[arg] + strlen(argv[arg])) ||
+           (ulnum < 1025UL) || (ulnum > 65535UL)) {
+          fprintf(stderr, "sockfilt: invalid --connect argument (%s)\n",
+                  argv[arg]);
+          return 0;
+        }
+        connectport = curlx_ultous(ulnum);
+        arg++;
+      }
+    }
+    else if(!strcmp("--addr", argv[arg])) {
+      /* Set an IP address to use with --connect; otherwise use localhost */
+      arg++;
+      if(argc>arg) {
+        addr = argv[arg];
+        arg++;
+      }
+    }
+    else {
+      puts("Usage: sockfilt [option]\n"
+           " --version\n"
+           " --verbose\n"
+           " --logfile [file]\n"
+           " --pidfile [file]\n"
+           " --ipv4\n"
+           " --ipv6\n"
+           " --bindonly\n"
+           " --port [port]\n"
+           " --connect [port]\n"
+           " --addr [address]");
+      return 0;
+    }
+  }
+
+#ifdef WIN32
+  win32_init();
+  atexit(win32_cleanup);
+
+  setmode(fileno(stdin), O_BINARY);
+  setmode(fileno(stdout), O_BINARY);
+  setmode(fileno(stderr), O_BINARY);
+#endif
+
+  install_signal_handlers();
+
+#ifdef ENABLE_IPV6
+  if(!use_ipv6)
+#endif
+    sock = socket(AF_INET, SOCK_STREAM, 0);
+#ifdef ENABLE_IPV6
+  else
+    sock = socket(AF_INET6, SOCK_STREAM, 0);
+#endif
+
+  if(CURL_SOCKET_BAD == sock) {
+    error = SOCKERRNO;
+    logmsg("Error creating socket: (%d) %s",
+           error, strerror(error));
+    write_stdout("FAIL\n", 5);
+    goto sockfilt_cleanup;
+  }
+
+  if(connectport) {
+    /* Active mode, we should connect to the given port number */
+    mode = ACTIVE;
+#ifdef ENABLE_IPV6
+    if(!use_ipv6) {
+#endif
+      memset(&me.sa4, 0, sizeof(me.sa4));
+      me.sa4.sin_family = AF_INET;
+      me.sa4.sin_port = htons(connectport);
+      me.sa4.sin_addr.s_addr = INADDR_ANY;
+      if(!addr)
+        addr = "127.0.0.1";
+      Curl_inet_pton(AF_INET, addr, &me.sa4.sin_addr);
+
+      rc = connect(sock, &me.sa, sizeof(me.sa4));
+#ifdef ENABLE_IPV6
+    }
+    else {
+      memset(&me.sa6, 0, sizeof(me.sa6));
+      me.sa6.sin6_family = AF_INET6;
+      me.sa6.sin6_port = htons(connectport);
+      if(!addr)
+        addr = "::1";
+      Curl_inet_pton(AF_INET6, addr, &me.sa6.sin6_addr);
+
+      rc = connect(sock, &me.sa, sizeof(me.sa6));
+    }
+#endif /* ENABLE_IPV6 */
+    if(rc) {
+      error = SOCKERRNO;
+      logmsg("Error connecting to port %hu: (%d) %s",
+             connectport, error, strerror(error));
+      write_stdout("FAIL\n", 5);
+      goto sockfilt_cleanup;
+    }
+    logmsg("====> Client connect");
+    msgsock = sock; /* use this as stream */
+  }
+  else {
+    /* passive daemon style */
+    sock = sockdaemon(sock, &port);
+    if(CURL_SOCKET_BAD == sock) {
+      write_stdout("FAIL\n", 5);
+      goto sockfilt_cleanup;
+    }
+    msgsock = CURL_SOCKET_BAD; /* no stream socket yet */
+  }
+
+  logmsg("Running %s version", ipv_inuse);
+
+  if(connectport)
+    logmsg("Connected to port %hu", connectport);
+  else if(bind_only)
+    logmsg("Bound without listening on port %hu", port);
+  else
+    logmsg("Listening on port %hu", port);
+
+  wrotepidfile = write_pidfile(pidname);
+  if(!wrotepidfile) {
+    write_stdout("FAIL\n", 5);
+    goto sockfilt_cleanup;
+  }
+
+  do {
+    juggle_again = juggle(&msgsock, sock, &mode);
+  } while(juggle_again);
+
+sockfilt_cleanup:
+
+  if((msgsock != sock) && (msgsock != CURL_SOCKET_BAD))
+    sclose(msgsock);
+
+  if(sock != CURL_SOCKET_BAD)
+    sclose(sock);
+
+  if(wrotepidfile)
+    unlink(pidname);
+
+  restore_signal_handlers();
+
+  if(got_exit_signal) {
+    logmsg("============> sockfilt exits with signal (%d)", exit_signal);
+    /*
+     * To properly set the return status of the process we
+     * must raise the same signal SIGINT or SIGTERM that we
+     * caught and let the old handler take care of it.
+     */
+    raise(exit_signal);
+  }
+
+  logmsg("============> sockfilt quits");
+  return 0;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/sws.c b/ap/lib/libcurl/curl-7.54.1/tests/server/sws.c
new file mode 100644
index 0000000..163fe8b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/sws.c
@@ -0,0 +1,2396 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+/* sws.c: simple (silly?) web server
+
+   This code was originally graciously donated to the project by Juergen
+   Wilke. Thanks a bunch!
+
+ */
+
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_ARPA_INET_H
+#include <arpa/inet.h>
+#endif
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+#ifdef HAVE_NETINET_TCP_H
+#include <netinet/tcp.h> /* for TCP_NODELAY */
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+#include "getpart.h"
+#include "inet_pton.h"
+#include "util.h"
+#include "server_sockaddr.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+#ifdef USE_WINSOCK
+#undef  EINTR
+#define EINTR    4 /* errno.h value */
+#undef  EAGAIN
+#define EAGAIN  11 /* errno.h value */
+#undef  ERANGE
+#define ERANGE  34 /* errno.h value */
+#endif
+
+static enum {
+  socket_domain_inet = AF_INET
+#ifdef ENABLE_IPV6
+  , socket_domain_inet6 = AF_INET6
+#endif
+#ifdef USE_UNIX_SOCKETS
+  , socket_domain_unix = AF_UNIX
+#endif
+} socket_domain = AF_INET;
+static bool use_gopher = FALSE;
+static int serverlogslocked = 0;
+static bool is_proxy = FALSE;
+
+#define REQBUFSIZ 150000
+#define REQBUFSIZ_TXT "149999"
+
+static long prevtestno=-1;    /* previous test number we served */
+static long prevpartno=-1;    /* previous part number we served */
+static bool prevbounce=FALSE; /* instructs the server to increase the part
+                                 number for a test in case the identical
+                                 testno+partno request shows up again */
+
+#define RCMD_NORMALREQ 0 /* default request, use the tests file normally */
+#define RCMD_IDLE      1 /* told to sit idle */
+#define RCMD_STREAM    2 /* told to stream */
+
+struct httprequest {
+  char reqbuf[REQBUFSIZ]; /* buffer area for the incoming request */
+  bool connect_request; /* if a CONNECT */
+  unsigned short connect_port; /* the port number CONNECT used */
+  size_t checkindex; /* where to start checking of the request */
+  size_t offset;     /* size of the incoming request */
+  long testno;       /* test number found in the request */
+  long partno;       /* part number found in the request */
+  bool open;      /* keep connection open info, as found in the request */
+  bool auth_req;  /* authentication required, don't wait for body unless
+                     there's an Authorization header */
+  bool auth;      /* Authorization header present in the incoming request */
+  size_t cl;      /* Content-Length of the incoming request */
+  bool digest;    /* Authorization digest header found */
+  bool ntlm;      /* Authorization ntlm header found */
+  int writedelay; /* if non-zero, delay this number of seconds between
+                     writes in the response */
+  int pipe;       /* if non-zero, expect this many requests to do a "piped"
+                     request/response */
+  int skip;       /* if non-zero, the server is instructed to not read this
+                     many bytes from a PUT/POST request. Ie the client sends N
+                     bytes said in Content-Length, but the server only reads N
+                     - skip bytes. */
+  int rcmd;       /* doing a special command, see defines above */
+  int prot_version;  /* HTTP version * 10 */
+  bool pipelining;   /* true if request is pipelined */
+  int callcount;  /* times ProcessRequest() gets called */
+  bool connmon;   /* monitor the state of the connection, log disconnects */
+  bool upgrade;   /* test case allows upgrade to http2 */
+  bool upgrade_request; /* upgrade request found and allowed */
+  int done_processing;
+};
+
+#define MAX_SOCKETS 1024
+
+static curl_socket_t all_sockets[MAX_SOCKETS];
+static size_t num_sockets = 0;
+
+static int ProcessRequest(struct httprequest *req);
+static void storerequest(const char *reqbuf, size_t totalsize);
+
+#define DEFAULT_PORT 8999
+
+#ifndef DEFAULT_LOGFILE
+#define DEFAULT_LOGFILE "log/sws.log"
+#endif
+
+const char *serverlogfile = DEFAULT_LOGFILE;
+
+#define SWSVERSION "curl test suite HTTP server/0.1"
+
+#define REQUEST_DUMP  "log/server.input"
+#define RESPONSE_DUMP "log/server.response"
+
+/* when told to run as proxy, we store the logs in different files so that
+   they can co-exist with the same program running as a "server" */
+#define REQUEST_PROXY_DUMP  "log/proxy.input"
+#define RESPONSE_PROXY_DUMP "log/proxy.response"
+
+/* very-big-path support */
+#define MAXDOCNAMELEN 140000
+#define MAXDOCNAMELEN_TXT "139999"
+
+#define REQUEST_KEYWORD_SIZE 256
+#define REQUEST_KEYWORD_SIZE_TXT "255"
+
+#define CMD_AUTH_REQUIRED "auth_required"
+
+/* 'idle' means that it will accept the request fine but never respond
+   any data. Just keep the connection alive. */
+#define CMD_IDLE "idle"
+
+/* 'stream' means to send a never-ending stream of data */
+#define CMD_STREAM "stream"
+
+/* 'connection-monitor' will output when a server/proxy connection gets
+   disconnected as for some cases it is important that it gets done at the
+   proper point - like with NTLM */
+#define CMD_CONNECTIONMONITOR "connection-monitor"
+
+/* upgrade to http2 */
+#define CMD_UPGRADE "upgrade"
+
+#define END_OF_HEADERS "\r\n\r\n"
+
+enum {
+  DOCNUMBER_NOTHING = -4,
+  DOCNUMBER_QUIT    = -3,
+  DOCNUMBER_WERULEZ = -2,
+  DOCNUMBER_404     = -1
+};
+
+static const char *end_of_headers = END_OF_HEADERS;
+
+/* sent as reply to a QUIT */
+static const char *docquit =
+"HTTP/1.1 200 Goodbye" END_OF_HEADERS;
+
+/* send back this on 404 file not found */
+static const char *doc404 = "HTTP/1.1 404 Not Found\r\n"
+    "Server: " SWSVERSION "\r\n"
+    "Connection: close\r\n"
+    "Content-Type: text/html"
+    END_OF_HEADERS
+    "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n"
+    "<HTML><HEAD>\n"
+    "<TITLE>404 Not Found</TITLE>\n"
+    "</HEAD><BODY>\n"
+    "<H1>Not Found</H1>\n"
+    "The requested URL was not found on this server.\n"
+    "<P><HR><ADDRESS>" SWSVERSION "</ADDRESS>\n" "</BODY></HTML>\n";
+
+/* do-nothing macro replacement for systems which lack siginterrupt() */
+
+#ifndef HAVE_SIGINTERRUPT
+#define siginterrupt(x,y) do {} while(0)
+#endif
+
+/* vars used to keep around previous signal handlers */
+
+typedef RETSIGTYPE (*SIGHANDLER_T)(int);
+
+#ifdef SIGHUP
+static SIGHANDLER_T old_sighup_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGPIPE
+static SIGHANDLER_T old_sigpipe_handler = SIG_ERR;
+#endif
+
+#ifdef SIGALRM
+static SIGHANDLER_T old_sigalrm_handler = SIG_ERR;
+#endif
+
+#ifdef SIGINT
+static SIGHANDLER_T old_sigint_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGTERM
+static SIGHANDLER_T old_sigterm_handler = SIG_ERR;
+#endif
+
+#if defined(SIGBREAK) && defined(WIN32)
+static SIGHANDLER_T old_sigbreak_handler = SIG_ERR;
+#endif
+
+/* var which if set indicates that the program should finish execution */
+
+SIG_ATOMIC_T got_exit_signal = 0;
+
+/* if next is set indicates the first signal handled in exit_signal_handler */
+
+static volatile int exit_signal = 0;
+
+/* signal handler that will be triggered to indicate that the program
+  should finish its execution in a controlled manner as soon as possible.
+  The first time this is called it will set got_exit_signal to one and
+  store in exit_signal the signal that triggered its execution. */
+
+static RETSIGTYPE exit_signal_handler(int signum)
+{
+  int old_errno = errno;
+  if(got_exit_signal == 0) {
+    got_exit_signal = 1;
+    exit_signal = signum;
+  }
+  (void)signal(signum, exit_signal_handler);
+  errno = old_errno;
+}
+
+static void install_signal_handlers(void)
+{
+#ifdef SIGHUP
+  /* ignore SIGHUP signal */
+  old_sighup_handler = signal(SIGHUP, SIG_IGN);
+  if(old_sighup_handler == SIG_ERR)
+    logmsg("cannot install SIGHUP handler: %s", strerror(errno));
+#endif
+#ifdef SIGPIPE
+  /* ignore SIGPIPE signal */
+  old_sigpipe_handler = signal(SIGPIPE, SIG_IGN);
+  if(old_sigpipe_handler == SIG_ERR)
+    logmsg("cannot install SIGPIPE handler: %s", strerror(errno));
+#endif
+#ifdef SIGALRM
+  /* ignore SIGALRM signal */
+  old_sigalrm_handler = signal(SIGALRM, SIG_IGN);
+  if(old_sigalrm_handler == SIG_ERR)
+    logmsg("cannot install SIGALRM handler: %s", strerror(errno));
+#endif
+#ifdef SIGINT
+  /* handle SIGINT signal with our exit_signal_handler */
+  old_sigint_handler = signal(SIGINT, exit_signal_handler);
+  if(old_sigint_handler == SIG_ERR)
+    logmsg("cannot install SIGINT handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGINT, 1);
+#endif
+#ifdef SIGTERM
+  /* handle SIGTERM signal with our exit_signal_handler */
+  old_sigterm_handler = signal(SIGTERM, exit_signal_handler);
+  if(old_sigterm_handler == SIG_ERR)
+    logmsg("cannot install SIGTERM handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGTERM, 1);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  /* handle SIGBREAK signal with our exit_signal_handler */
+  old_sigbreak_handler = signal(SIGBREAK, exit_signal_handler);
+  if(old_sigbreak_handler == SIG_ERR)
+    logmsg("cannot install SIGBREAK handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGBREAK, 1);
+#endif
+}
+
+static void restore_signal_handlers(void)
+{
+#ifdef SIGHUP
+  if(SIG_ERR != old_sighup_handler)
+    (void)signal(SIGHUP, old_sighup_handler);
+#endif
+#ifdef SIGPIPE
+  if(SIG_ERR != old_sigpipe_handler)
+    (void)signal(SIGPIPE, old_sigpipe_handler);
+#endif
+#ifdef SIGALRM
+  if(SIG_ERR != old_sigalrm_handler)
+    (void)signal(SIGALRM, old_sigalrm_handler);
+#endif
+#ifdef SIGINT
+  if(SIG_ERR != old_sigint_handler)
+    (void)signal(SIGINT, old_sigint_handler);
+#endif
+#ifdef SIGTERM
+  if(SIG_ERR != old_sigterm_handler)
+    (void)signal(SIGTERM, old_sigterm_handler);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  if(SIG_ERR != old_sigbreak_handler)
+    (void)signal(SIGBREAK, old_sigbreak_handler);
+#endif
+}
+
+/* returns true if the current socket is an IP one */
+static bool socket_domain_is_ip(void)
+{
+  switch(socket_domain) {
+  case AF_INET:
+#ifdef ENABLE_IPV6
+  case AF_INET6:
+#endif
+    return true;
+  default:
+  /* case AF_UNIX: */
+    return false;
+  }
+}
+
+/* based on the testno, parse the correct server commands */
+static int parse_servercmd(struct httprequest *req)
+{
+  FILE *stream;
+  char *filename;
+  int error;
+
+  filename = test2file(req->testno);
+
+  stream=fopen(filename, "rb");
+  if(!stream) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("  [1] Error opening file: %s", filename);
+    logmsg("  Couldn't open test file %ld", req->testno);
+    req->open = FALSE; /* closes connection */
+    return 1; /* done */
+  }
+  else {
+    char *orgcmd = NULL;
+    char *cmd = NULL;
+    size_t cmdsize = 0;
+    int num=0;
+
+    /* get the custom server control "commands" */
+    error = getpart(&orgcmd, &cmdsize, "reply", "servercmd", stream);
+    fclose(stream);
+    if(error) {
+      logmsg("getpart() failed with error: %d", error);
+      req->open = FALSE; /* closes connection */
+      return 1; /* done */
+    }
+
+    req->connmon = FALSE;
+
+    cmd = orgcmd;
+    while(cmd && cmdsize) {
+      char *check;
+
+      if(!strncmp(CMD_AUTH_REQUIRED, cmd, strlen(CMD_AUTH_REQUIRED))) {
+        logmsg("instructed to require authorization header");
+        req->auth_req = TRUE;
+      }
+      else if(!strncmp(CMD_IDLE, cmd, strlen(CMD_IDLE))) {
+        logmsg("instructed to idle");
+        req->rcmd = RCMD_IDLE;
+        req->open = TRUE;
+      }
+      else if(!strncmp(CMD_STREAM, cmd, strlen(CMD_STREAM))) {
+        logmsg("instructed to stream");
+        req->rcmd = RCMD_STREAM;
+      }
+      else if(!strncmp(CMD_CONNECTIONMONITOR, cmd,
+                       strlen(CMD_CONNECTIONMONITOR))) {
+        logmsg("enabled connection monitoring");
+        req->connmon = TRUE;
+      }
+      else if(!strncmp(CMD_UPGRADE, cmd, strlen(CMD_UPGRADE))) {
+        logmsg("enabled upgrade to http2");
+        req->upgrade = TRUE;
+      }
+      else if(1 == sscanf(cmd, "pipe: %d", &num)) {
+        logmsg("instructed to allow a pipe size of %d", num);
+        if(num < 0)
+          logmsg("negative pipe size ignored");
+        else if(num > 0)
+          req->pipe = num-1; /* decrease by one since we don't count the
+                                first request in this number */
+      }
+      else if(1 == sscanf(cmd, "skip: %d", &num)) {
+        logmsg("instructed to skip this number of bytes %d", num);
+        req->skip = num;
+      }
+      else if(1 == sscanf(cmd, "writedelay: %d", &num)) {
+        logmsg("instructed to delay %d secs between packets", num);
+        req->writedelay = num;
+      }
+      else {
+        logmsg("Unknown <servercmd> instruction found: %s", cmd);
+      }
+      /* try to deal with CRLF or just LF */
+      check = strchr(cmd, '\r');
+      if(!check)
+        check = strchr(cmd, '\n');
+
+      if(check) {
+        /* get to the letter following the newline */
+        while((*check == '\r') || (*check == '\n'))
+          check++;
+
+        if(!*check)
+          /* if we reached a zero, get out */
+          break;
+        cmd = check;
+      }
+      else
+        break;
+    }
+    free(orgcmd);
+  }
+
+  return 0; /* OK! */
+}
+
+static int ProcessRequest(struct httprequest *req)
+{
+  char *line=&req->reqbuf[req->checkindex];
+  bool chunked = FALSE;
+  static char request[REQUEST_KEYWORD_SIZE];
+  static char doc[MAXDOCNAMELEN];
+  char logbuf[456];
+  int prot_major, prot_minor;
+  char *end = strstr(line, end_of_headers);
+
+  req->callcount++;
+
+  logmsg("Process %d bytes request%s", req->offset,
+         req->callcount > 1?" [CONTINUED]":"");
+
+  /* try to figure out the request characteristics as soon as possible, but
+     only once! */
+
+  if(use_gopher &&
+     (req->testno == DOCNUMBER_NOTHING) &&
+     !strncmp("/verifiedserver", line, 15)) {
+    logmsg("Are-we-friendly question received");
+    req->testno = DOCNUMBER_WERULEZ;
+    return 1; /* done */
+  }
+
+  else if((req->testno == DOCNUMBER_NOTHING) &&
+     sscanf(line,
+            "%" REQUEST_KEYWORD_SIZE_TXT"s %" MAXDOCNAMELEN_TXT "s HTTP/%d.%d",
+            request,
+            doc,
+            &prot_major,
+            &prot_minor) == 4) {
+    char *ptr;
+
+    req->prot_version = prot_major*10 + prot_minor;
+
+    /* find the last slash */
+    ptr = strrchr(doc, '/');
+
+    /* get the number after it */
+    if(ptr) {
+      if((strlen(doc) + strlen(request)) < 400)
+        snprintf(logbuf, sizeof(logbuf), "Got request: %s %s HTTP/%d.%d",
+                 request, doc, prot_major, prot_minor);
+      else
+        snprintf(logbuf, sizeof(logbuf), "Got a *HUGE* request HTTP/%d.%d",
+                 prot_major, prot_minor);
+      logmsg("%s", logbuf);
+
+      if(!strncmp("/verifiedserver", ptr, 15)) {
+        logmsg("Are-we-friendly question received");
+        req->testno = DOCNUMBER_WERULEZ;
+        return 1; /* done */
+      }
+
+      if(!strncmp("/quit", ptr, 5)) {
+        logmsg("Request-to-quit received");
+        req->testno = DOCNUMBER_QUIT;
+        return 1; /* done */
+      }
+
+      ptr++; /* skip the slash */
+
+      /* skip all non-numericals following the slash */
+      while(*ptr && !ISDIGIT(*ptr))
+        ptr++;
+
+      req->testno = strtol(ptr, &ptr, 10);
+
+      if(req->testno > 10000) {
+        req->partno = req->testno % 10000;
+        req->testno /= 10000;
+      }
+      else
+        req->partno = 0;
+
+      if(req->testno) {
+
+        snprintf(logbuf, sizeof(logbuf), "Requested test number %ld part %ld",
+                 req->testno, req->partno);
+        logmsg("%s", logbuf);
+
+        /* find and parse <servercmd> for this test */
+        parse_servercmd(req);
+      }
+      else
+        req->testno = DOCNUMBER_NOTHING;
+
+    }
+
+    if(req->testno == DOCNUMBER_NOTHING) {
+      /* didn't find any in the first scan, try alternative test case
+         number placements */
+
+      if(sscanf(req->reqbuf, "CONNECT %" MAXDOCNAMELEN_TXT "s HTTP/%d.%d",
+                doc, &prot_major, &prot_minor) == 3) {
+        char *portp = NULL;
+        unsigned long part=0;
+
+        snprintf(logbuf, sizeof(logbuf),
+                 "Received a CONNECT %s HTTP/%d.%d request",
+                 doc, prot_major, prot_minor);
+        logmsg("%s", logbuf);
+
+        req->connect_request = TRUE;
+
+        if(req->prot_version == 10)
+          req->open = FALSE; /* HTTP 1.0 closes connection by default */
+
+        if(doc[0] == '[') {
+          char *p = &doc[1];
+          /* scan through the hexgroups and store the value of the last group
+             in the 'part' variable and use as test case number!! */
+          while(*p && (ISXDIGIT(*p) || (*p == ':') || (*p == '.'))) {
+            char *endp;
+            part = strtoul(p, &endp, 16);
+            if(ISXDIGIT(*p))
+              p = endp;
+            else
+              p++;
+          }
+          if(*p != ']')
+            logmsg("Invalid CONNECT IPv6 address format");
+          else if(*(p+1) != ':')
+            logmsg("Invalid CONNECT IPv6 port format");
+          else
+            portp = p+1;
+
+          req->testno = part;
+        }
+        else
+          portp = strchr(doc, ':');
+
+        if(portp && (*(portp+1) != '\0') && ISDIGIT(*(portp+1))) {
+          unsigned long ulnum = strtoul(portp+1, NULL, 10);
+          if(!ulnum || (ulnum > 65535UL))
+            logmsg("Invalid CONNECT port received");
+          else
+            req->connect_port = curlx_ultous(ulnum);
+
+        }
+        logmsg("Port number: %d, test case number: %ld",
+               req->connect_port, req->testno);
+      }
+    }
+
+    if(req->testno == DOCNUMBER_NOTHING) {
+      /* Still no test case number. Try to get the the number off the last dot
+         instead, IE we consider the TLD to be the test number. Test 123 can
+         then be written as "example.com.123". */
+
+      /* find the last dot */
+      ptr = strrchr(doc, '.');
+
+      /* get the number after it */
+      if(ptr) {
+        ptr++; /* skip the dot */
+
+        req->testno = strtol(ptr, &ptr, 10);
+
+        if(req->testno > 10000) {
+          req->partno = req->testno % 10000;
+          req->testno /= 10000;
+
+          logmsg("found test %d in requested host name", req->testno);
+
+        }
+        else
+          req->partno = 0;
+
+        snprintf(logbuf, sizeof(logbuf),
+                 "Requested test number %ld part %ld (from host name)",
+                 req->testno, req->partno);
+        logmsg("%s", logbuf);
+
+      }
+
+      if(!req->testno) {
+        logmsg("Did not find test number in PATH");
+        req->testno = DOCNUMBER_404;
+      }
+      else
+        parse_servercmd(req);
+    }
+  }
+  else if((req->offset >= 3) && (req->testno == DOCNUMBER_NOTHING)) {
+    logmsg("** Unusual request. Starts with %02x %02x %02x",
+           line[0], line[1], line[2]);
+  }
+
+  if(!end) {
+    /* we don't have a complete request yet! */
+    logmsg("request not complete yet");
+    return 0; /* not complete yet */
+  }
+  logmsg("- request found to be complete");
+
+  if(use_gopher) {
+    /* when using gopher we cannot check the request until the entire
+       thing has been received */
+    char *ptr;
+
+    /* find the last slash in the line */
+    ptr = strrchr(line, '/');
+
+    if(ptr) {
+      ptr++; /* skip the slash */
+
+      /* skip all non-numericals following the slash */
+      while(*ptr && !ISDIGIT(*ptr))
+        ptr++;
+
+      req->testno = strtol(ptr, &ptr, 10);
+
+      if(req->testno > 10000) {
+        req->partno = req->testno % 10000;
+        req->testno /= 10000;
+      }
+      else
+        req->partno = 0;
+
+      snprintf(logbuf, sizeof(logbuf),
+               "Requested GOPHER test number %ld part %ld",
+               req->testno, req->partno);
+      logmsg("%s", logbuf);
+    }
+  }
+
+  if(req->pipe)
+    /* we do have a full set, advance the checkindex to after the end of the
+       headers, for the pipelining case mostly */
+    req->checkindex += (end - line) + strlen(end_of_headers);
+
+  /* **** Persistence ****
+   *
+   * If the request is a HTTP/1.0 one, we close the connection unconditionally
+   * when we're done.
+   *
+   * If the request is a HTTP/1.1 one, we MUST check for a "Connection:"
+   * header that might say "close". If it does, we close a connection when
+   * this request is processed. Otherwise, we keep the connection alive for X
+   * seconds.
+   */
+
+  do {
+    if(got_exit_signal)
+      return 1; /* done */
+
+    if((req->cl==0) && strncasecompare("Content-Length:", line, 15)) {
+      /* If we don't ignore content-length, we read it and we read the whole
+         request including the body before we return. If we've been told to
+         ignore the content-length, we will return as soon as all headers
+         have been received */
+      char *endptr;
+      char *ptr = line + 15;
+      unsigned long clen = 0;
+      while(*ptr && ISSPACE(*ptr))
+        ptr++;
+      endptr = ptr;
+      errno = 0;
+      clen = strtoul(ptr, &endptr, 10);
+      if((ptr == endptr) || !ISSPACE(*endptr) || (ERANGE == errno)) {
+        /* this assumes that a zero Content-Length is valid */
+        logmsg("Found invalid Content-Length: (%s) in the request", ptr);
+        req->open = FALSE; /* closes connection */
+        return 1; /* done */
+      }
+      req->cl = clen - req->skip;
+
+      logmsg("Found Content-Length: %lu in the request", clen);
+      if(req->skip)
+        logmsg("... but will abort after %zu bytes", req->cl);
+      break;
+    }
+    else if(strncasecompare("Transfer-Encoding: chunked", line,
+                            strlen("Transfer-Encoding: chunked"))) {
+      /* chunked data coming in */
+      chunked = TRUE;
+    }
+
+    if(chunked) {
+      if(strstr(req->reqbuf, "\r\n0\r\n\r\n"))
+        /* end of chunks reached */
+        return 1; /* done */
+      else
+        return 0; /* not done */
+    }
+
+    line = strchr(line, '\n');
+    if(line)
+      line++;
+
+  } while(line);
+
+  if(!req->auth && strstr(req->reqbuf, "Authorization:")) {
+    req->auth = TRUE; /* Authorization: header present! */
+    if(req->auth_req)
+      logmsg("Authorization header found, as required");
+  }
+
+  if(!req->digest && strstr(req->reqbuf, "Authorization: Digest")) {
+    /* If the client is passing this Digest-header, we set the part number
+       to 1000. Not only to spice up the complexity of this, but to make
+       Digest stuff to work in the test suite. */
+    req->partno += 1000;
+    req->digest = TRUE; /* header found */
+    logmsg("Received Digest request, sending back data %ld", req->partno);
+  }
+  else if(!req->ntlm &&
+          strstr(req->reqbuf, "Authorization: NTLM TlRMTVNTUAAD")) {
+    /* If the client is passing this type-3 NTLM header */
+    req->partno += 1002;
+    req->ntlm = TRUE; /* NTLM found */
+    logmsg("Received NTLM type-3, sending back data %ld", req->partno);
+    if(req->cl) {
+      logmsg("  Expecting %zu POSTed bytes", req->cl);
+    }
+  }
+  else if(!req->ntlm &&
+          strstr(req->reqbuf, "Authorization: NTLM TlRMTVNTUAAB")) {
+    /* If the client is passing this type-1 NTLM header */
+    req->partno += 1001;
+    req->ntlm = TRUE; /* NTLM found */
+    logmsg("Received NTLM type-1, sending back data %ld", req->partno);
+  }
+  else if((req->partno >= 1000) &&
+          strstr(req->reqbuf, "Authorization: Basic")) {
+    /* If the client is passing this Basic-header and the part number is
+       already >=1000, we add 1 to the part number.  This allows simple Basic
+       authentication negotiation to work in the test suite. */
+    req->partno += 1;
+    logmsg("Received Basic request, sending back data %ld", req->partno);
+  }
+  if(strstr(req->reqbuf, "Connection: close"))
+    req->open = FALSE; /* close connection after this request */
+
+  if(!req->pipe &&
+     req->open &&
+     req->prot_version >= 11 &&
+     end &&
+     req->reqbuf + req->offset > end + strlen(end_of_headers) &&
+     !req->cl &&
+     (!strncmp(req->reqbuf, "GET", strlen("GET")) ||
+      !strncmp(req->reqbuf, "HEAD", strlen("HEAD")))) {
+    /* If we have a persistent connection, HTTP version >= 1.1
+       and GET/HEAD request, enable pipelining. */
+    req->checkindex = (end - req->reqbuf) + strlen(end_of_headers);
+    req->pipelining = TRUE;
+  }
+
+  while(req->pipe) {
+    if(got_exit_signal)
+      return 1; /* done */
+    /* scan for more header ends within this chunk */
+    line = &req->reqbuf[req->checkindex];
+    end = strstr(line, end_of_headers);
+    if(!end)
+      break;
+    req->checkindex += (end - line) + strlen(end_of_headers);
+    req->pipe--;
+  }
+
+  /* If authentication is required and no auth was provided, end now. This
+     makes the server NOT wait for PUT/POST data and you can then make the
+     test case send a rejection before any such data has been sent. Test case
+     154 uses this.*/
+  if(req->auth_req && !req->auth) {
+    logmsg("Return early due to auth requested by none provided");
+    return 1; /* done */
+  }
+
+  if(req->upgrade && strstr(req->reqbuf, "Upgrade:")) {
+    /* we allow upgrade and there was one! */
+    logmsg("Found Upgrade: in request and allows it");
+    req->upgrade_request = TRUE;
+  }
+
+  if(req->cl > 0) {
+    if(req->cl <= req->offset - (end - req->reqbuf) - strlen(end_of_headers))
+      return 1; /* done */
+    else
+      return 0; /* not complete yet */
+  }
+
+  return 1; /* done */
+}
+
+/* store the entire request in a file */
+static void storerequest(const char *reqbuf, size_t totalsize)
+{
+  int res;
+  int error = 0;
+  size_t written;
+  size_t writeleft;
+  FILE *dump;
+  const char *dumpfile=is_proxy?REQUEST_PROXY_DUMP:REQUEST_DUMP;
+
+  if(reqbuf == NULL)
+    return;
+  if(totalsize == 0)
+    return;
+
+  do {
+    dump = fopen(dumpfile, "ab");
+  } while((dump == NULL) && ((error = errno) == EINTR));
+  if(dump == NULL) {
+    logmsg("[2] Error opening file %s error: %d %s",
+           dumpfile, error, strerror(error));
+    logmsg("Failed to write request input ");
+    return;
+  }
+
+  writeleft = totalsize;
+  do {
+    written = fwrite(&reqbuf[totalsize-writeleft],
+                     1, writeleft, dump);
+    if(got_exit_signal)
+      goto storerequest_cleanup;
+    if(written > 0)
+      writeleft -= written;
+  } while((writeleft > 0) && ((error = errno) == EINTR));
+
+  if(writeleft == 0)
+    logmsg("Wrote request (%zu bytes) input to %s", totalsize, dumpfile);
+  else if(writeleft > 0) {
+    logmsg("Error writing file %s error: %d %s",
+           dumpfile, error, strerror(error));
+    logmsg("Wrote only (%zu bytes) of (%zu bytes) request input to %s",
+           totalsize-writeleft, totalsize, dumpfile);
+  }
+
+storerequest_cleanup:
+
+  do {
+    res = fclose(dump);
+  } while(res && ((error = errno) == EINTR));
+  if(res)
+    logmsg("Error closing file %s error: %d %s",
+           dumpfile, error, strerror(error));
+}
+
+static void init_httprequest(struct httprequest *req)
+{
+  /* Pipelining is already set, so do not initialize it here. Only initialize
+     checkindex and offset if pipelining is not set, since in a pipeline they
+     need to be inherited from the previous request. */
+  if(!req->pipelining) {
+    req->checkindex = 0;
+    req->offset = 0;
+  }
+  req->testno = DOCNUMBER_NOTHING;
+  req->partno = 0;
+  req->connect_request = FALSE;
+  req->open = TRUE;
+  req->auth_req = FALSE;
+  req->auth = FALSE;
+  req->cl = 0;
+  req->digest = FALSE;
+  req->ntlm = FALSE;
+  req->pipe = 0;
+  req->skip = 0;
+  req->writedelay = 0;
+  req->rcmd = RCMD_NORMALREQ;
+  req->prot_version = 0;
+  req->callcount = 0;
+  req->connect_port = 0;
+  req->done_processing = 0;
+  req->upgrade = 0;
+  req->upgrade_request = 0;
+}
+
+/* returns 1 if the connection should be serviced again immediately, 0 if there
+   is no data waiting, or < 0 if it should be closed */
+static int get_request(curl_socket_t sock, struct httprequest *req)
+{
+  int error;
+  int fail = 0;
+  char *reqbuf = req->reqbuf;
+  ssize_t got = 0;
+  int overflow = 0;
+
+  char *pipereq = NULL;
+  size_t pipereq_length = 0;
+
+  if(req->pipelining) {
+    pipereq = reqbuf + req->checkindex;
+    pipereq_length = req->offset - req->checkindex;
+
+    /* Now that we've got the pipelining info we can reset the
+       pipelining-related vars which were skipped in init_httprequest */
+    req->pipelining = FALSE;
+    req->checkindex = 0;
+    req->offset = 0;
+  }
+
+  if(req->offset >= REQBUFSIZ-1) {
+    /* buffer is already full; do nothing */
+    overflow = 1;
+  }
+  else {
+    if(pipereq_length && pipereq) {
+      memmove(reqbuf, pipereq, pipereq_length);
+      got = curlx_uztosz(pipereq_length);
+      pipereq_length = 0;
+    }
+    else {
+      if(req->skip)
+        /* we are instructed to not read the entire thing, so we make sure to
+           only read what we're supposed to and NOT read the enire thing the
+           client wants to send! */
+        got = sread(sock, reqbuf + req->offset, req->cl);
+      else
+        got = sread(sock, reqbuf + req->offset, REQBUFSIZ-1 - req->offset);
+    }
+    if(got_exit_signal)
+      return -1;
+    if(got == 0) {
+      logmsg("Connection closed by client");
+      fail = 1;
+    }
+    else if(got < 0) {
+      error = SOCKERRNO;
+      if(EAGAIN == error || EWOULDBLOCK == error) {
+        /* nothing to read at the moment */
+        return 0;
+      }
+      logmsg("recv() returned error: (%d) %s", error, strerror(error));
+      fail = 1;
+    }
+    if(fail) {
+      /* dump the request received so far to the external file */
+      reqbuf[req->offset] = '\0';
+      storerequest(reqbuf, req->offset);
+      return -1;
+    }
+
+    logmsg("Read %zd bytes", got);
+
+    req->offset += (size_t)got;
+    reqbuf[req->offset] = '\0';
+
+    req->done_processing = ProcessRequest(req);
+    if(got_exit_signal)
+      return -1;
+    if(req->done_processing && req->pipe) {
+      logmsg("Waiting for another piped request");
+      req->done_processing = 0;
+      req->pipe--;
+    }
+  }
+
+  if(overflow || (req->offset == REQBUFSIZ-1 && got > 0)) {
+    logmsg("Request would overflow buffer, closing connection");
+    /* dump request received so far to external file anyway */
+    reqbuf[REQBUFSIZ-1] = '\0';
+    fail = 1;
+  }
+  else if(req->offset > REQBUFSIZ-1) {
+    logmsg("Request buffer overflow, closing connection");
+    /* dump request received so far to external file anyway */
+    reqbuf[REQBUFSIZ-1] = '\0';
+    fail = 1;
+  }
+  else
+    reqbuf[req->offset] = '\0';
+
+  /* at the end of a request dump it to an external file */
+  if(fail || req->done_processing)
+    storerequest(reqbuf, req->pipelining ? req->checkindex : req->offset);
+  if(got_exit_signal)
+    return -1;
+
+  return fail ? -1 : 1;
+}
+
+/* returns -1 on failure */
+static int send_doc(curl_socket_t sock, struct httprequest *req)
+{
+  ssize_t written;
+  size_t count;
+  const char *buffer;
+  char *ptr=NULL;
+  FILE *stream;
+  char *cmd=NULL;
+  size_t cmdsize=0;
+  FILE *dump;
+  bool persistant = TRUE;
+  bool sendfailure = FALSE;
+  size_t responsesize;
+  int error = 0;
+  int res;
+  const char *responsedump = is_proxy?RESPONSE_PROXY_DUMP:RESPONSE_DUMP;
+  static char weare[256];
+
+  switch(req->rcmd) {
+  default:
+  case RCMD_NORMALREQ:
+    break; /* continue with business as usual */
+  case RCMD_STREAM:
+#define STREAMTHIS "a string to stream 01234567890\n"
+    count = strlen(STREAMTHIS);
+    for(;;) {
+      written = swrite(sock, STREAMTHIS, count);
+      if(got_exit_signal)
+        return -1;
+      if(written != (ssize_t)count) {
+        logmsg("Stopped streaming");
+        break;
+      }
+    }
+    return -1;
+  case RCMD_IDLE:
+    /* Do nothing. Sit idle. Pretend it rains. */
+    return 0;
+  }
+
+  req->open = FALSE;
+
+  if(req->testno < 0) {
+    size_t msglen;
+    char msgbuf[64];
+
+    switch(req->testno) {
+    case DOCNUMBER_QUIT:
+      logmsg("Replying to QUIT");
+      buffer = docquit;
+      break;
+    case DOCNUMBER_WERULEZ:
+      /* we got a "friends?" question, reply back that we sure are */
+      logmsg("Identifying ourselves as friends");
+      snprintf(msgbuf, sizeof(msgbuf), "WE ROOLZ: %ld\r\n", (long)getpid());
+      msglen = strlen(msgbuf);
+      if(use_gopher)
+        snprintf(weare, sizeof(weare), "%s", msgbuf);
+      else
+        snprintf(weare, sizeof(weare),
+                 "HTTP/1.1 200 OK\r\nContent-Length: %zu\r\n\r\n%s",
+                 msglen, msgbuf);
+      buffer = weare;
+      break;
+    case DOCNUMBER_404:
+    default:
+      logmsg("Replying to with a 404");
+      buffer = doc404;
+      break;
+    }
+
+    count = strlen(buffer);
+  }
+  else {
+    char partbuf[80];
+    char *filename = test2file(req->testno);
+
+    /* select the <data> tag for "normal" requests and the <connect> one
+       for CONNECT requests (within the <reply> section) */
+    const char *section= req->connect_request?"connect":"data";
+
+    if(req->partno)
+      snprintf(partbuf, sizeof(partbuf), "%s%ld", section, req->partno);
+    else
+      snprintf(partbuf, sizeof(partbuf), "%s", section);
+
+    logmsg("Send response test%ld section <%s>", req->testno, partbuf);
+
+    stream=fopen(filename, "rb");
+    if(!stream) {
+      error = errno;
+      logmsg("fopen() failed with error: %d %s", error, strerror(error));
+      logmsg("  [3] Error opening file: %s", filename);
+      return 0;
+    }
+    else {
+      error = getpart(&ptr, &count, "reply", partbuf, stream);
+      fclose(stream);
+      if(error) {
+        logmsg("getpart() failed with error: %d", error);
+        return 0;
+      }
+      buffer = ptr;
+    }
+
+    if(got_exit_signal) {
+      free(ptr);
+      return -1;
+    }
+
+    /* re-open the same file again */
+    stream=fopen(filename, "rb");
+    if(!stream) {
+      error = errno;
+      logmsg("fopen() failed with error: %d %s", error, strerror(error));
+      logmsg("  [4] Error opening file: %s", filename);
+      free(ptr);
+      return 0;
+    }
+    else {
+      /* get the custom server control "commands" */
+      error = getpart(&cmd, &cmdsize, "reply", "postcmd", stream);
+      fclose(stream);
+      if(error) {
+        logmsg("getpart() failed with error: %d", error);
+        free(ptr);
+        return 0;
+      }
+    }
+  }
+
+  if(got_exit_signal) {
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  /* If the word 'swsclose' is present anywhere in the reply chunk, the
+     connection will be closed after the data has been sent to the requesting
+     client... */
+  if(strstr(buffer, "swsclose") || !count) {
+    persistant = FALSE;
+    logmsg("connection close instruction \"swsclose\" found in response");
+  }
+  if(strstr(buffer, "swsbounce")) {
+    prevbounce = TRUE;
+    logmsg("enable \"swsbounce\" in the next request");
+  }
+  else
+    prevbounce = FALSE;
+
+  dump = fopen(responsedump, "ab");
+  if(!dump) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("  [5] Error opening file: %s", responsedump);
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  responsesize = count;
+  do {
+    /* Ok, we send no more than 200 bytes at a time, just to make sure that
+       larger chunks are split up so that the client will need to do multiple
+       recv() calls to get it and thus we exercise that code better */
+    size_t num = count;
+    if(num > 200)
+      num = 200;
+
+    retry:
+    written = swrite(sock, buffer, num);
+    if(written < 0) {
+      if((EWOULDBLOCK == SOCKERRNO) || (EAGAIN == SOCKERRNO)) {
+        wait_ms(10);
+        goto retry;
+      }
+      sendfailure = TRUE;
+      break;
+    }
+    else {
+      logmsg("Sent off %zd bytes", written);
+    }
+
+    /* write to file as well */
+    fwrite(buffer, 1, (size_t)written, dump);
+
+    count -= written;
+    buffer += written;
+
+    if(req->writedelay) {
+      int quarters = req->writedelay * 4;
+      logmsg("Pausing %d seconds", req->writedelay);
+      while((quarters > 0) && !got_exit_signal) {
+        quarters--;
+        wait_ms(250);
+      }
+    }
+  } while((count > 0) && !got_exit_signal);
+
+  do {
+    res = fclose(dump);
+  } while(res && ((error = errno) == EINTR));
+  if(res)
+    logmsg("Error closing file %s error: %d %s",
+           responsedump, error, strerror(error));
+
+  if(got_exit_signal) {
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  if(sendfailure) {
+    logmsg("Sending response failed. Only (%zu bytes) of (%zu bytes) "
+           "were sent",
+           responsesize-count, responsesize);
+    free(ptr);
+    free(cmd);
+    return -1;
+  }
+
+  logmsg("Response sent (%zu bytes) and written to %s",
+         responsesize, responsedump);
+  free(ptr);
+
+  if(cmdsize > 0) {
+    char command[32];
+    int quarters;
+    int num;
+    ptr=cmd;
+    do {
+      if(2 == sscanf(ptr, "%31s %d", command, &num)) {
+        if(!strcmp("wait", command)) {
+          logmsg("Told to sleep for %d seconds", num);
+          quarters = num * 4;
+          while((quarters > 0) && !got_exit_signal) {
+            quarters--;
+            res = wait_ms(250);
+            if(res) {
+              /* should not happen */
+              error = errno;
+              logmsg("wait_ms() failed with error: (%d) %s",
+                     error, strerror(error));
+              break;
+            }
+          }
+          if(!quarters)
+            logmsg("Continuing after sleeping %d seconds", num);
+        }
+        else
+          logmsg("Unknown command in reply command section");
+      }
+      ptr = strchr(ptr, '\n');
+      if(ptr)
+        ptr++;
+      else
+        ptr = NULL;
+    } while(ptr && *ptr);
+  }
+  free(cmd);
+  req->open = use_gopher?FALSE:persistant;
+
+  prevtestno = req->testno;
+  prevpartno = req->partno;
+
+  return 0;
+}
+
+static curl_socket_t connect_to(const char *ipaddr, unsigned short port)
+{
+  srvr_sockaddr_union_t serveraddr;
+  curl_socket_t serverfd;
+  int error;
+  int rc = 0;
+  const char *op_br = "";
+  const char *cl_br = "";
+
+#ifdef ENABLE_IPV6
+  if(socket_domain == AF_INET6) {
+    op_br = "[";
+    cl_br = "]";
+  }
+#endif
+
+  if(!ipaddr)
+    return CURL_SOCKET_BAD;
+
+  logmsg("about to connect to %s%s%s:%hu",
+         op_br, ipaddr, cl_br, port);
+
+
+  serverfd = socket(socket_domain, SOCK_STREAM, 0);
+  if(CURL_SOCKET_BAD == serverfd) {
+    error = SOCKERRNO;
+    logmsg("Error creating socket for server conection: (%d) %s",
+           error, strerror(error));
+    return CURL_SOCKET_BAD;
+  }
+
+#ifdef TCP_NODELAY
+  if(socket_domain_is_ip()) {
+    /* Disable the Nagle algorithm */
+    curl_socklen_t flag = 1;
+    if(0 != setsockopt(serverfd, IPPROTO_TCP, TCP_NODELAY,
+                       (void *)&flag, sizeof(flag)))
+      logmsg("====> TCP_NODELAY for server conection failed");
+  }
+#endif
+
+  switch(socket_domain) {
+  case AF_INET:
+    memset(&serveraddr.sa4, 0, sizeof(serveraddr.sa4));
+    serveraddr.sa4.sin_family = AF_INET;
+    serveraddr.sa4.sin_port = htons(port);
+    if(Curl_inet_pton(AF_INET, ipaddr, &serveraddr.sa4.sin_addr) < 1) {
+      logmsg("Error inet_pton failed AF_INET conversion of '%s'", ipaddr);
+      sclose(serverfd);
+      return CURL_SOCKET_BAD;
+    }
+
+    rc = connect(serverfd, &serveraddr.sa, sizeof(serveraddr.sa4));
+    break;
+#ifdef ENABLE_IPV6
+  case AF_INET6:
+    memset(&serveraddr.sa6, 0, sizeof(serveraddr.sa6));
+    serveraddr.sa6.sin6_family = AF_INET6;
+    serveraddr.sa6.sin6_port = htons(port);
+    if(Curl_inet_pton(AF_INET6, ipaddr, &serveraddr.sa6.sin6_addr) < 1) {
+      logmsg("Error inet_pton failed AF_INET6 conversion of '%s'", ipaddr);
+      sclose(serverfd);
+      return CURL_SOCKET_BAD;
+    }
+
+    rc = connect(serverfd, &serveraddr.sa, sizeof(serveraddr.sa6));
+    break;
+#endif /* ENABLE_IPV6 */
+#ifdef USE_UNIX_SOCKETS
+  case AF_UNIX:
+    logmsg("Proxying through Unix socket is not (yet?) supported.");
+    return CURL_SOCKET_BAD;
+#endif /* USE_UNIX_SOCKETS */
+  }
+
+  if(got_exit_signal) {
+    sclose(serverfd);
+    return CURL_SOCKET_BAD;
+  }
+
+  if(rc) {
+    error = SOCKERRNO;
+    logmsg("Error connecting to server port %hu: (%d) %s",
+           port, error, strerror(error));
+    sclose(serverfd);
+    return CURL_SOCKET_BAD;
+  }
+
+  logmsg("connected fine to %s%s%s:%hu, now tunnel",
+         op_br, ipaddr, cl_br, port);
+
+  return serverfd;
+}
+
+/*
+ * A CONNECT has been received, a CONNECT response has been sent.
+ *
+ * This function needs to connect to the server, and then pass data between
+ * the client and the server back and forth until the connection is closed by
+ * either end.
+ *
+ * When doing FTP through a CONNECT proxy, we expect that the data connection
+ * will be setup while the first connect is still being kept up. Therefor we
+ * must accept a new connection and deal with it appropriately.
+ */
+
+#define data_or_ctrl(x) ((x)?"DATA":"CTRL")
+
+#define CTRL  0
+#define DATA  1
+
+static void http_connect(curl_socket_t *infdp,
+                         curl_socket_t rootfd,
+                         const char *ipaddr,
+                         unsigned short ipport)
+{
+  curl_socket_t serverfd[2] = {CURL_SOCKET_BAD, CURL_SOCKET_BAD};
+  curl_socket_t clientfd[2] = {CURL_SOCKET_BAD, CURL_SOCKET_BAD};
+  ssize_t toc[2] = {0, 0}; /* number of bytes to client */
+  ssize_t tos[2] = {0, 0}; /* number of bytes to server */
+  char readclient[2][256];
+  char readserver[2][256];
+  bool poll_client_rd[2] = { TRUE, TRUE };
+  bool poll_server_rd[2] = { TRUE, TRUE };
+  bool poll_client_wr[2] = { TRUE, TRUE };
+  bool poll_server_wr[2] = { TRUE, TRUE };
+  bool primary = FALSE;
+  bool secondary = FALSE;
+  int max_tunnel_idx; /* CTRL or DATA */
+  int loop;
+  int i;
+  int timeout_count=0;
+
+  /* primary tunnel client endpoint already connected */
+  clientfd[CTRL] = *infdp;
+
+  /* Sleep here to make sure the client reads CONNECT response's
+     'end of headers' separate from the server data that follows.
+     This is done to prevent triggering libcurl known bug #39. */
+  for(loop = 2; (loop > 0) && !got_exit_signal; loop--)
+    wait_ms(250);
+  if(got_exit_signal)
+    goto http_connect_cleanup;
+
+  serverfd[CTRL] = connect_to(ipaddr, ipport);
+  if(serverfd[CTRL] == CURL_SOCKET_BAD)
+    goto http_connect_cleanup;
+
+  /* Primary tunnel socket endpoints are now connected. Tunnel data back and
+     forth over the primary tunnel until client or server breaks the primary
+     tunnel, simultaneously allowing establishment, operation and teardown of
+     a secondary tunnel that may be used for passive FTP data connection. */
+
+  max_tunnel_idx = CTRL;
+  primary = TRUE;
+
+  while(!got_exit_signal) {
+
+    fd_set input;
+    fd_set output;
+    struct timeval timeout = {1, 0}; /* 1000 ms */
+    ssize_t rc;
+    curl_socket_t maxfd = (curl_socket_t)-1;
+
+    FD_ZERO(&input);
+    FD_ZERO(&output);
+
+    if((clientfd[DATA] == CURL_SOCKET_BAD) &&
+       (serverfd[DATA] == CURL_SOCKET_BAD) &&
+       poll_client_rd[CTRL] && poll_client_wr[CTRL] &&
+       poll_server_rd[CTRL] && poll_server_wr[CTRL]) {
+      /* listener socket is monitored to allow client to establish
+         secondary tunnel only when this tunnel is not established
+         and primary one is fully operational */
+      FD_SET(rootfd, &input);
+      maxfd = rootfd;
+    }
+
+    /* set tunnel sockets to wait for */
+    for(i = 0; i <= max_tunnel_idx; i++) {
+      /* client side socket monitoring */
+      if(clientfd[i] != CURL_SOCKET_BAD) {
+        if(poll_client_rd[i]) {
+          /* unless told not to do so, monitor readability */
+          FD_SET(clientfd[i], &input);
+          if(clientfd[i] > maxfd)
+            maxfd = clientfd[i];
+        }
+        if(poll_client_wr[i] && toc[i]) {
+          /* unless told not to do so, monitor writability
+             if there is data ready to be sent to client */
+          FD_SET(clientfd[i], &output);
+          if(clientfd[i] > maxfd)
+            maxfd = clientfd[i];
+        }
+      }
+      /* server side socket monitoring */
+      if(serverfd[i] != CURL_SOCKET_BAD) {
+        if(poll_server_rd[i]) {
+          /* unless told not to do so, monitor readability */
+          FD_SET(serverfd[i], &input);
+          if(serverfd[i] > maxfd)
+            maxfd = serverfd[i];
+        }
+        if(poll_server_wr[i] && tos[i]) {
+          /* unless told not to do so, monitor writability
+             if there is data ready to be sent to server */
+          FD_SET(serverfd[i], &output);
+          if(serverfd[i] > maxfd)
+            maxfd = serverfd[i];
+        }
+      }
+    }
+    if(got_exit_signal)
+      break;
+
+    rc = select((int)maxfd + 1, &input, &output, NULL, &timeout);
+
+    if(rc > 0) {
+      /* socket action */
+      bool tcp_fin_wr;
+      timeout_count=0;
+
+      if(got_exit_signal)
+        break;
+
+      tcp_fin_wr = FALSE;
+
+      /* ---------------------------------------------------------- */
+
+      /* passive mode FTP may establish a secondary tunnel */
+      if((clientfd[DATA] == CURL_SOCKET_BAD) &&
+         (serverfd[DATA] == CURL_SOCKET_BAD) && FD_ISSET(rootfd, &input)) {
+        /* a new connection on listener socket (most likely from client) */
+        curl_socket_t datafd = accept(rootfd, NULL, NULL);
+        if(datafd != CURL_SOCKET_BAD) {
+          struct httprequest req2;
+          int err = 0;
+          memset(&req2, 0, sizeof(req2));
+          logmsg("====> Client connect DATA");
+#ifdef TCP_NODELAY
+          if(socket_domain_is_ip()) {
+            /* Disable the Nagle algorithm */
+            curl_socklen_t flag = 1;
+            if(0 != setsockopt(datafd, IPPROTO_TCP, TCP_NODELAY,
+                               (void *)&flag, sizeof(flag)))
+              logmsg("====> TCP_NODELAY for client DATA conection failed");
+          }
+#endif
+          req2.pipelining = FALSE;
+          init_httprequest(&req2);
+          while(!req2.done_processing) {
+            err = get_request(datafd, &req2);
+            if(err < 0) {
+              /* this socket must be closed, done or not */
+              break;
+            }
+          }
+
+          /* skip this and close the socket if err < 0 */
+          if(err >= 0) {
+            err = send_doc(datafd, &req2);
+            if(!err && req2.connect_request) {
+              /* sleep to prevent triggering libcurl known bug #39. */
+              for(loop = 2; (loop > 0) && !got_exit_signal; loop--)
+                wait_ms(250);
+              if(!got_exit_signal) {
+                /* connect to the server */
+                serverfd[DATA] = connect_to(ipaddr, req2.connect_port);
+                if(serverfd[DATA] != CURL_SOCKET_BAD) {
+                  /* secondary tunnel established, now we have two
+                     connections */
+                  poll_client_rd[DATA] = TRUE;
+                  poll_client_wr[DATA] = TRUE;
+                  poll_server_rd[DATA] = TRUE;
+                  poll_server_wr[DATA] = TRUE;
+                  max_tunnel_idx = DATA;
+                  secondary = TRUE;
+                  toc[DATA] = 0;
+                  tos[DATA] = 0;
+                  clientfd[DATA] = datafd;
+                  datafd = CURL_SOCKET_BAD;
+                }
+              }
+            }
+          }
+          if(datafd != CURL_SOCKET_BAD) {
+            /* secondary tunnel not established */
+            shutdown(datafd, SHUT_RDWR);
+            sclose(datafd);
+          }
+        }
+        if(got_exit_signal)
+          break;
+      }
+
+      /* ---------------------------------------------------------- */
+
+      /* react to tunnel endpoint readable/writable notifications */
+      for(i = 0; i <= max_tunnel_idx; i++) {
+        size_t len;
+        if(clientfd[i] != CURL_SOCKET_BAD) {
+          len = sizeof(readclient[i]) - tos[i];
+          if(len && FD_ISSET(clientfd[i], &input)) {
+            /* read from client */
+            rc = sread(clientfd[i], &readclient[i][tos[i]], len);
+            if(rc <= 0) {
+              logmsg("[%s] got %zd, STOP READING client", data_or_ctrl(i), rc);
+              shutdown(clientfd[i], SHUT_RD);
+              poll_client_rd[i] = FALSE;
+            }
+            else {
+              logmsg("[%s] READ %zd bytes from client", data_or_ctrl(i), rc);
+              logmsg("[%s] READ \"%s\"", data_or_ctrl(i),
+                     data_to_hex(&readclient[i][tos[i]], rc));
+              tos[i] += rc;
+            }
+          }
+        }
+        if(serverfd[i] != CURL_SOCKET_BAD) {
+          len = sizeof(readserver[i])-toc[i];
+          if(len && FD_ISSET(serverfd[i], &input)) {
+            /* read from server */
+            rc = sread(serverfd[i], &readserver[i][toc[i]], len);
+            if(rc <= 0) {
+              logmsg("[%s] got %zd, STOP READING server", data_or_ctrl(i), rc);
+              shutdown(serverfd[i], SHUT_RD);
+              poll_server_rd[i] = FALSE;
+            }
+            else {
+              logmsg("[%s] READ %zd bytes from server", data_or_ctrl(i), rc);
+              logmsg("[%s] READ \"%s\"", data_or_ctrl(i),
+                     data_to_hex(&readserver[i][toc[i]], rc));
+              toc[i] += rc;
+            }
+          }
+        }
+        if(clientfd[i] != CURL_SOCKET_BAD) {
+          if(toc[i] && FD_ISSET(clientfd[i], &output)) {
+            /* write to client */
+            rc = swrite(clientfd[i], readserver[i], toc[i]);
+            if(rc <= 0) {
+              logmsg("[%s] got %zd, STOP WRITING client", data_or_ctrl(i), rc);
+              shutdown(clientfd[i], SHUT_WR);
+              poll_client_wr[i] = FALSE;
+              tcp_fin_wr = TRUE;
+            }
+            else {
+              logmsg("[%s] SENT %zd bytes to client", data_or_ctrl(i), rc);
+              logmsg("[%s] SENT \"%s\"", data_or_ctrl(i),
+                     data_to_hex(readserver[i], rc));
+              if(toc[i] - rc)
+                memmove(&readserver[i][0], &readserver[i][rc], toc[i]-rc);
+              toc[i] -= rc;
+            }
+          }
+        }
+        if(serverfd[i] != CURL_SOCKET_BAD) {
+          if(tos[i] && FD_ISSET(serverfd[i], &output)) {
+            /* write to server */
+            rc = swrite(serverfd[i], readclient[i], tos[i]);
+            if(rc <= 0) {
+              logmsg("[%s] got %zd, STOP WRITING server", data_or_ctrl(i), rc);
+              shutdown(serverfd[i], SHUT_WR);
+              poll_server_wr[i] = FALSE;
+              tcp_fin_wr = TRUE;
+            }
+            else {
+              logmsg("[%s] SENT %zd bytes to server", data_or_ctrl(i), rc);
+              logmsg("[%s] SENT \"%s\"", data_or_ctrl(i),
+                     data_to_hex(readclient[i], rc));
+              if(tos[i] - rc)
+                memmove(&readclient[i][0], &readclient[i][rc], tos[i]-rc);
+              tos[i] -= rc;
+            }
+          }
+        }
+      }
+      if(got_exit_signal)
+        break;
+
+      /* ---------------------------------------------------------- */
+
+      /* endpoint read/write disabling, endpoint closing and tunnel teardown */
+      for(i = 0; i <= max_tunnel_idx; i++) {
+        for(loop = 2; loop > 0; loop--) {
+          /* loop twice to satisfy condition interdependencies without
+             having to await select timeout or another socket event */
+          if(clientfd[i] != CURL_SOCKET_BAD) {
+            if(poll_client_rd[i] && !poll_server_wr[i]) {
+              logmsg("[%s] DISABLED READING client", data_or_ctrl(i));
+              shutdown(clientfd[i], SHUT_RD);
+              poll_client_rd[i] = FALSE;
+            }
+            if(poll_client_wr[i] && !poll_server_rd[i] && !toc[i]) {
+              logmsg("[%s] DISABLED WRITING client", data_or_ctrl(i));
+              shutdown(clientfd[i], SHUT_WR);
+              poll_client_wr[i] = FALSE;
+              tcp_fin_wr = TRUE;
+            }
+          }
+          if(serverfd[i] != CURL_SOCKET_BAD) {
+            if(poll_server_rd[i] && !poll_client_wr[i]) {
+              logmsg("[%s] DISABLED READING server", data_or_ctrl(i));
+              shutdown(serverfd[i], SHUT_RD);
+              poll_server_rd[i] = FALSE;
+            }
+            if(poll_server_wr[i] && !poll_client_rd[i] && !tos[i]) {
+              logmsg("[%s] DISABLED WRITING server", data_or_ctrl(i));
+              shutdown(serverfd[i], SHUT_WR);
+              poll_server_wr[i] = FALSE;
+              tcp_fin_wr = TRUE;
+            }
+          }
+        }
+      }
+
+      if(tcp_fin_wr)
+        /* allow kernel to place FIN bit packet on the wire */
+        wait_ms(250);
+
+      /* socket clearing */
+      for(i = 0; i <= max_tunnel_idx; i++) {
+        for(loop = 2; loop > 0; loop--) {
+          if(clientfd[i] != CURL_SOCKET_BAD) {
+            if(!poll_client_wr[i] && !poll_client_rd[i]) {
+              logmsg("[%s] CLOSING client socket", data_or_ctrl(i));
+              sclose(clientfd[i]);
+              clientfd[i] = CURL_SOCKET_BAD;
+              if(serverfd[i] == CURL_SOCKET_BAD) {
+                logmsg("[%s] ENDING", data_or_ctrl(i));
+                if(i == DATA)
+                  secondary = FALSE;
+                else
+                  primary = FALSE;
+              }
+            }
+          }
+          if(serverfd[i] != CURL_SOCKET_BAD) {
+            if(!poll_server_wr[i] && !poll_server_rd[i]) {
+              logmsg("[%s] CLOSING server socket", data_or_ctrl(i));
+              sclose(serverfd[i]);
+              serverfd[i] = CURL_SOCKET_BAD;
+              if(clientfd[i] == CURL_SOCKET_BAD) {
+                logmsg("[%s] ENDING", data_or_ctrl(i));
+                if(i == DATA)
+                  secondary = FALSE;
+                else
+                  primary = FALSE;
+              }
+            }
+          }
+        }
+      }
+
+      /* ---------------------------------------------------------- */
+
+      max_tunnel_idx = secondary ? DATA : CTRL;
+
+      if(!primary)
+        /* exit loop upon primary tunnel teardown */
+        break;
+
+    } /* (rc > 0) */
+    else {
+      timeout_count++;
+      if(timeout_count > 5) {
+        logmsg("CONNECT proxy timeout after %d idle seconds!", timeout_count);
+        break;
+      }
+    }
+  }
+
+http_connect_cleanup:
+
+  for(i = DATA; i >= CTRL; i--) {
+    if(serverfd[i] != CURL_SOCKET_BAD) {
+      logmsg("[%s] CLOSING server socket (cleanup)", data_or_ctrl(i));
+      shutdown(serverfd[i], SHUT_RDWR);
+      sclose(serverfd[i]);
+    }
+    if(clientfd[i] != CURL_SOCKET_BAD) {
+      logmsg("[%s] CLOSING client socket (cleanup)", data_or_ctrl(i));
+      shutdown(clientfd[i], SHUT_RDWR);
+      sclose(clientfd[i]);
+    }
+    if((serverfd[i] != CURL_SOCKET_BAD) ||
+       (clientfd[i] != CURL_SOCKET_BAD)) {
+      logmsg("[%s] ABORTING", data_or_ctrl(i));
+    }
+  }
+
+  *infdp = CURL_SOCKET_BAD;
+}
+
+static void http2(struct httprequest *req)
+{
+  (void)req;
+  logmsg("switched to http2");
+  /* left to implement */
+}
+
+
+/* returns a socket handle, or 0 if there are no more waiting sockets,
+   or < 0 if there was an error */
+static curl_socket_t accept_connection(curl_socket_t sock)
+{
+  curl_socket_t msgsock = CURL_SOCKET_BAD;
+  int error;
+  int flag = 1;
+
+  if(MAX_SOCKETS == num_sockets) {
+    logmsg("Too many open sockets!");
+    return CURL_SOCKET_BAD;
+  }
+
+  msgsock = accept(sock, NULL, NULL);
+
+  if(got_exit_signal) {
+    if(CURL_SOCKET_BAD != msgsock)
+      sclose(msgsock);
+    return CURL_SOCKET_BAD;
+  }
+
+  if(CURL_SOCKET_BAD == msgsock) {
+    error = SOCKERRNO;
+    if(EAGAIN == error || EWOULDBLOCK == error) {
+      /* nothing to accept */
+      return 0;
+    }
+    logmsg("MAJOR ERROR: accept() failed with error: (%d) %s",
+           error, strerror(error));
+    return CURL_SOCKET_BAD;
+  }
+
+  if(0 != curlx_nonblock(msgsock, TRUE)) {
+    error = SOCKERRNO;
+    logmsg("curlx_nonblock failed with error: (%d) %s",
+           error, strerror(error));
+    sclose(msgsock);
+    return CURL_SOCKET_BAD;
+  }
+
+  if(0 != setsockopt(msgsock, SOL_SOCKET, SO_KEEPALIVE,
+                     (void *)&flag, sizeof(flag))) {
+    error = SOCKERRNO;
+    logmsg("setsockopt(SO_KEEPALIVE) failed with error: (%d) %s",
+           error, strerror(error));
+    sclose(msgsock);
+    return CURL_SOCKET_BAD;
+  }
+
+  /*
+  ** As soon as this server accepts a connection from the test harness it
+  ** must set the server logs advisor read lock to indicate that server
+  ** logs should not be read until this lock is removed by this server.
+  */
+
+  if(!serverlogslocked)
+    set_advisor_read_lock(SERVERLOGS_LOCK);
+  serverlogslocked += 1;
+
+  logmsg("====> Client connect");
+
+  all_sockets[num_sockets] = msgsock;
+  num_sockets += 1;
+
+#ifdef TCP_NODELAY
+  if(socket_domain_is_ip()) {
+    /*
+     * Disable the Nagle algorithm to make it easier to send out a large
+     * response in many small segments to torture the clients more.
+     */
+    if(0 != setsockopt(msgsock, IPPROTO_TCP, TCP_NODELAY,
+                       (void *)&flag, sizeof(flag)))
+      logmsg("====> TCP_NODELAY failed");
+  }
+#endif
+
+  return msgsock;
+}
+
+/* returns 1 if the connection should be serviced again immediately, 0 if there
+   is no data waiting, or < 0 if it should be closed */
+static int service_connection(curl_socket_t msgsock, struct httprequest *req,
+                              curl_socket_t listensock,
+                              const char *connecthost)
+{
+  if(got_exit_signal)
+    return -1;
+
+  while(!req->done_processing) {
+    int rc = get_request(msgsock, req);
+    if(rc <= 0) {
+      /* Nothing further to read now, possibly because the socket was closed */
+      return rc;
+    }
+  }
+
+  if(prevbounce) {
+    /* bounce treatment requested */
+    if((req->testno == prevtestno) &&
+       (req->partno == prevpartno)) {
+      req->partno++;
+      logmsg("BOUNCE part number to %ld", req->partno);
+    }
+    else {
+      prevbounce = FALSE;
+      prevtestno = -1;
+      prevpartno = -1;
+    }
+  }
+
+  send_doc(msgsock, req);
+  if(got_exit_signal)
+    return -1;
+
+  if(req->testno < 0) {
+    logmsg("special request received, no persistency");
+    return -1;
+  }
+  if(!req->open) {
+    logmsg("instructed to close connection after server-reply");
+    return -1;
+  }
+
+  if(req->connect_request) {
+    /* a CONNECT request, setup and talk the tunnel */
+    if(!is_proxy) {
+      logmsg("received CONNECT but isn't running as proxy!");
+      return 1;
+    }
+    else {
+      http_connect(&msgsock, listensock, connecthost, req->connect_port);
+      return -1;
+    }
+  }
+
+  if(req->upgrade_request) {
+    /* an upgrade request, switch to http2 here */
+    http2(req);
+    return -1;
+  }
+
+  /* if we got a CONNECT, loop and get another request as well! */
+
+  if(req->open) {
+    logmsg("=> persistant connection request ended, awaits new request\n");
+    return 1;
+  }
+
+  return -1;
+}
+
+int main(int argc, char *argv[])
+{
+  srvr_sockaddr_union_t me;
+  curl_socket_t sock = CURL_SOCKET_BAD;
+  int wrotepidfile = 0;
+  int flag;
+  unsigned short port = DEFAULT_PORT;
+#ifdef USE_UNIX_SOCKETS
+  const char *unix_socket = NULL;
+  bool unlink_socket = false;
+#endif
+  const char *pidname = ".http.pid";
+  struct httprequest req;
+  int rc = 0;
+  int error;
+  int arg=1;
+  long pid;
+  const char *connecthost = "127.0.0.1";
+  const char *socket_type = "IPv4";
+  char port_str[11];
+  const char *location_str = port_str;
+
+  /* a default CONNECT port is basically pointless but still ... */
+  size_t socket_idx;
+
+  memset(&req, 0, sizeof(req));
+
+  while(argc>arg) {
+    if(!strcmp("--version", argv[arg])) {
+      puts("sws IPv4"
+#ifdef ENABLE_IPV6
+             "/IPv6"
+#endif
+#ifdef USE_UNIX_SOCKETS
+             "/unix"
+#endif
+          );
+      return 0;
+    }
+    else if(!strcmp("--pidfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        pidname = argv[arg++];
+    }
+    else if(!strcmp("--logfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        serverlogfile = argv[arg++];
+    }
+    else if(!strcmp("--gopher", argv[arg])) {
+      arg++;
+      use_gopher = TRUE;
+      end_of_headers = "\r\n"; /* gopher style is much simpler */
+    }
+    else if(!strcmp("--ipv4", argv[arg])) {
+      socket_type = "IPv4";
+      socket_domain = AF_INET;
+      location_str = port_str;
+      arg++;
+    }
+    else if(!strcmp("--ipv6", argv[arg])) {
+#ifdef ENABLE_IPV6
+      socket_type = "IPv6";
+      socket_domain = AF_INET6;
+      location_str = port_str;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--unix-socket", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+#ifdef USE_UNIX_SOCKETS
+        unix_socket = argv[arg];
+        if(strlen(unix_socket) >= sizeof(me.sau.sun_path)) {
+          fprintf(stderr, "sws: socket path must be shorter than %zu chars\n",
+                  sizeof(me.sau.sun_path));
+          return 0;
+        }
+        socket_type = "unix";
+        socket_domain = AF_UNIX;
+        location_str = unix_socket;
+#endif
+        arg++;
+      }
+    }
+    else if(!strcmp("--port", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        char *endptr;
+        unsigned long ulnum = strtoul(argv[arg], &endptr, 10);
+        if((endptr != argv[arg] + strlen(argv[arg])) ||
+           (ulnum < 1025UL) || (ulnum > 65535UL)) {
+          fprintf(stderr, "sws: invalid --port argument (%s)\n",
+                  argv[arg]);
+          return 0;
+        }
+        port = curlx_ultous(ulnum);
+        arg++;
+      }
+    }
+    else if(!strcmp("--srcdir", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        path = argv[arg];
+        arg++;
+      }
+    }
+    else if(!strcmp("--connect", argv[arg])) {
+      /* The connect host IP number that the proxy will connect to no matter
+         what the client asks for, but also use this as a hint that we run as
+         a proxy and do a few different internal choices */
+      arg++;
+      if(argc>arg) {
+        connecthost = argv[arg];
+        arg++;
+        is_proxy = TRUE;
+        logmsg("Run as proxy, CONNECT to host %s", connecthost);
+      }
+    }
+    else {
+      puts("Usage: sws [option]\n"
+           " --version\n"
+           " --logfile [file]\n"
+           " --pidfile [file]\n"
+           " --ipv4\n"
+           " --ipv6\n"
+           " --unix-socket [file]\n"
+           " --port [port]\n"
+           " --srcdir [path]\n"
+           " --connect [ip4-addr]\n"
+           " --gopher");
+      return 0;
+    }
+  }
+
+  snprintf(port_str, sizeof(port_str), "port %hu", port);
+
+#ifdef WIN32
+  win32_init();
+  atexit(win32_cleanup);
+#endif
+
+  install_signal_handlers();
+
+  pid = (long)getpid();
+
+  sock = socket(socket_domain, SOCK_STREAM, 0);
+
+  all_sockets[0] = sock;
+  num_sockets = 1;
+
+  if(CURL_SOCKET_BAD == sock) {
+    error = SOCKERRNO;
+    logmsg("Error creating socket: (%d) %s",
+           error, strerror(error));
+    goto sws_cleanup;
+  }
+
+  flag = 1;
+  if(0 != setsockopt(sock, SOL_SOCKET, SO_REUSEADDR,
+                     (void *)&flag, sizeof(flag))) {
+    error = SOCKERRNO;
+    logmsg("setsockopt(SO_REUSEADDR) failed with error: (%d) %s",
+           error, strerror(error));
+    goto sws_cleanup;
+  }
+  if(0 != curlx_nonblock(sock, TRUE)) {
+    error = SOCKERRNO;
+    logmsg("curlx_nonblock failed with error: (%d) %s",
+           error, strerror(error));
+    goto sws_cleanup;
+  }
+
+  switch(socket_domain) {
+  case AF_INET:
+    memset(&me.sa4, 0, sizeof(me.sa4));
+    me.sa4.sin_family = AF_INET;
+    me.sa4.sin_addr.s_addr = INADDR_ANY;
+    me.sa4.sin_port = htons(port);
+    rc = bind(sock, &me.sa, sizeof(me.sa4));
+    break;
+#ifdef ENABLE_IPV6
+  case AF_INET6:
+    memset(&me.sa6, 0, sizeof(me.sa6));
+    me.sa6.sin6_family = AF_INET6;
+    me.sa6.sin6_addr = in6addr_any;
+    me.sa6.sin6_port = htons(port);
+    rc = bind(sock, &me.sa, sizeof(me.sa6));
+    break;
+#endif /* ENABLE_IPV6 */
+#ifdef USE_UNIX_SOCKETS
+  case AF_UNIX:
+    memset(&me.sau, 0, sizeof(me.sau));
+    me.sau.sun_family = AF_UNIX;
+    strncpy(me.sau.sun_path, unix_socket, sizeof(me.sau.sun_path));
+    rc = bind(sock, &me.sa, sizeof(me.sau));
+    if(0 != rc && errno == EADDRINUSE) {
+      struct stat statbuf;
+      /* socket already exists. Perhaps it is stale? */
+      int unixfd = socket(AF_UNIX, SOCK_STREAM, 0);
+      if(CURL_SOCKET_BAD == unixfd) {
+        error = SOCKERRNO;
+        logmsg("Error binding socket, failed to create socket at %s: (%d) %s",
+               unix_socket, error, strerror(error));
+        goto sws_cleanup;
+      }
+      /* check whether the server is alive */
+      rc = connect(unixfd, &me.sa, sizeof(me.sau));
+      error = errno;
+      close(unixfd);
+      if(ECONNREFUSED != error) {
+        logmsg("Error binding socket, failed to connect to %s: (%d) %s",
+               unix_socket, error, strerror(error));
+        goto sws_cleanup;
+      }
+      /* socket server is not alive, now check if it was actually a socket.
+       * Systems which have Unix sockets will also have lstat */
+      rc = lstat(unix_socket, &statbuf);
+      if(0 != rc) {
+        logmsg("Error binding socket, failed to stat %s: (%d) %s",
+               unix_socket, errno, strerror(errno));
+        goto sws_cleanup;
+      }
+      if((statbuf.st_mode & S_IFSOCK) != S_IFSOCK) {
+        logmsg("Error binding socket, failed to stat %s: (%d) %s",
+               unix_socket, error, strerror(error));
+        goto sws_cleanup;
+      }
+      /* dead socket, cleanup and retry bind */
+      rc = unlink(unix_socket);
+      if(0 != rc) {
+        logmsg("Error binding socket, failed to unlink %s: (%d) %s",
+               unix_socket, errno, strerror(errno));
+        goto sws_cleanup;
+      }
+      /* stale socket is gone, retry bind */
+      rc = bind(sock, &me.sa, sizeof(me.sau));
+    }
+    break;
+#endif /* USE_UNIX_SOCKETS */
+  }
+  if(0 != rc) {
+    error = SOCKERRNO;
+    logmsg("Error binding socket on %s: (%d) %s",
+           location_str, error, strerror(error));
+    goto sws_cleanup;
+  }
+
+  logmsg("Running %s %s version on %s",
+         use_gopher?"GOPHER":"HTTP", socket_type, location_str);
+
+  /* start accepting connections */
+  rc = listen(sock, 5);
+  if(0 != rc) {
+    error = SOCKERRNO;
+    logmsg("listen() failed with error: (%d) %s",
+           error, strerror(error));
+    goto sws_cleanup;
+  }
+
+#ifdef USE_UNIX_SOCKETS
+  /* listen succeeds, so let's assume a valid listening Unix socket */
+  unlink_socket = true;
+#endif
+
+  /*
+  ** As soon as this server writes its pid file the test harness will
+  ** attempt to connect to this server and initiate its verification.
+  */
+
+  wrotepidfile = write_pidfile(pidname);
+  if(!wrotepidfile)
+    goto sws_cleanup;
+
+  /* initialization of httprequest struct is done before get_request(), but
+     the pipelining struct field must be initialized previously to FALSE
+     every time a new connection arrives. */
+
+  req.pipelining = FALSE;
+  init_httprequest(&req);
+
+  for(;;) {
+    fd_set input;
+    fd_set output;
+    struct timeval timeout = {0, 250000L}; /* 250 ms */
+    curl_socket_t maxfd = (curl_socket_t)-1;
+
+    /* Clear out closed sockets */
+    for(socket_idx = num_sockets - 1; socket_idx >= 1; --socket_idx) {
+      if(CURL_SOCKET_BAD == all_sockets[socket_idx]) {
+        char *dst = (char *) (all_sockets + socket_idx);
+        char *src = (char *) (all_sockets + socket_idx + 1);
+        char *end = (char *) (all_sockets + num_sockets);
+        memmove(dst, src, end - src);
+        num_sockets -= 1;
+      }
+    }
+
+    if(got_exit_signal)
+      goto sws_cleanup;
+
+    /* Set up for select */
+    FD_ZERO(&input);
+    FD_ZERO(&output);
+
+    for(socket_idx = 0; socket_idx < num_sockets; ++socket_idx) {
+      /* Listen on all sockets */
+      FD_SET(all_sockets[socket_idx], &input);
+      if(all_sockets[socket_idx] > maxfd)
+        maxfd = all_sockets[socket_idx];
+    }
+
+    if(got_exit_signal)
+      goto sws_cleanup;
+
+    rc = select((int)maxfd + 1, &input, &output, NULL, &timeout);
+    if(rc < 0) {
+      error = SOCKERRNO;
+      logmsg("select() failed with error: (%d) %s",
+             error, strerror(error));
+      goto sws_cleanup;
+    }
+
+    if(got_exit_signal)
+      goto sws_cleanup;
+
+    if(rc == 0) {
+      /* Timed out - try again */
+      continue;
+    }
+
+    /* Check if the listening socket is ready to accept */
+    if(FD_ISSET(all_sockets[0], &input)) {
+      /* Service all queued connections */
+      curl_socket_t msgsock;
+      do {
+        msgsock = accept_connection(sock);
+        logmsg("accept_connection %d returned %d", sock, msgsock);
+        if(CURL_SOCKET_BAD == msgsock)
+          goto sws_cleanup;
+      } while(msgsock > 0);
+    }
+
+    /* Service all connections that are ready */
+    for(socket_idx = 1; socket_idx < num_sockets; ++socket_idx) {
+      if(FD_ISSET(all_sockets[socket_idx], &input)) {
+        if(got_exit_signal)
+          goto sws_cleanup;
+
+        /* Service this connection until it has nothing available */
+        do {
+          rc = service_connection(all_sockets[socket_idx], &req, sock,
+                                  connecthost);
+          if(got_exit_signal)
+            goto sws_cleanup;
+
+          if(rc < 0) {
+            logmsg("====> Client disconnect %d", req.connmon);
+
+            if(req.connmon) {
+              const char *keepopen="[DISCONNECT]\n";
+              storerequest(keepopen, strlen(keepopen));
+            }
+
+            if(!req.open)
+              /* When instructed to close connection after server-reply we
+                 wait a very small amount of time before doing so. If this
+                 is not done client might get an ECONNRESET before reading
+                 a single byte of server-reply. */
+              wait_ms(50);
+
+            if(all_sockets[socket_idx] != CURL_SOCKET_BAD) {
+              sclose(all_sockets[socket_idx]);
+              all_sockets[socket_idx] = CURL_SOCKET_BAD;
+            }
+
+            serverlogslocked -= 1;
+            if(!serverlogslocked)
+              clear_advisor_read_lock(SERVERLOGS_LOCK);
+
+            if(req.testno == DOCNUMBER_QUIT)
+              goto sws_cleanup;
+          }
+
+          /* Reset the request, unless we're still in the middle of reading */
+          if(rc != 0)
+            init_httprequest(&req);
+        } while(rc > 0);
+      }
+    }
+
+    if(got_exit_signal)
+      goto sws_cleanup;
+  }
+
+sws_cleanup:
+
+  for(socket_idx = 1; socket_idx < num_sockets; ++socket_idx)
+    if((all_sockets[socket_idx] != sock) &&
+     (all_sockets[socket_idx] != CURL_SOCKET_BAD))
+      sclose(all_sockets[socket_idx]);
+
+  if(sock != CURL_SOCKET_BAD)
+    sclose(sock);
+
+#ifdef USE_UNIX_SOCKETS
+  if(unlink_socket && socket_domain == AF_UNIX) {
+    rc = unlink(unix_socket);
+    logmsg("unlink(%s) = %d (%s)", unix_socket, rc, strerror(rc));
+  }
+#endif
+
+  if(got_exit_signal)
+    logmsg("signalled to die");
+
+  if(wrotepidfile)
+    unlink(pidname);
+
+  if(serverlogslocked) {
+    serverlogslocked = 0;
+    clear_advisor_read_lock(SERVERLOGS_LOCK);
+  }
+
+  restore_signal_handlers();
+
+  if(got_exit_signal) {
+    logmsg("========> %s sws (%s pid: %ld) exits with signal (%d)",
+           socket_type, location_str, pid, exit_signal);
+    /*
+     * To properly set the return status of the process we
+     * must raise the same signal SIGINT or SIGTERM that we
+     * caught and let the old handler take care of it.
+     */
+    raise(exit_signal);
+  }
+
+  logmsg("========> sws quits");
+  return 0;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/testpart.c b/ap/lib/libcurl/curl-7.54.1/tests/server/testpart.c
new file mode 100644
index 0000000..79869e2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/testpart.c
@@ -0,0 +1,50 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+#include "getpart.h"
+
+#include "curl_printf.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+int main(int argc, char **argv)
+{
+  int rc;
+  char  *part;
+  size_t partlen, i;
+
+  if(argc< 3) {
+    printf("./testpart main sub\n");
+  }
+  else {
+    rc = getpart(&part, &partlen, argv[1], argv[2], stdin);
+    if(rc)
+      return rc;
+    for(i = 0; i < partlen; i++)
+      printf("%c", part[i]);
+    free(part);
+  }
+  return 0;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/tftp.h b/ap/lib/libcurl/curl-7.54.1/tests/server/tftp.h
new file mode 100644
index 0000000..3cdd6e6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/tftp.h
@@ -0,0 +1,61 @@
+#ifndef HEADER_CURL_SERVER_TFTP_H
+#define HEADER_CURL_SERVER_TFTP_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+/* This file is a rewrite/clone of the arpa/tftp.h file for systems without
+   it. */
+
+#define SEGSIZE 512 /* data segment size */
+
+#if defined(__GNUC__) && ((__GNUC__ >= 3) || \
+  ((__GNUC__ == 2) && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ >= 7)))
+#  define PACKED_STRUCT __attribute__((__packed__))
+#else
+#  define PACKED_STRUCT /*NOTHING*/
+#endif
+
+/* Using a packed struct as binary in a program is begging for problems, but
+   the tftpd server was written like this so we have this struct here to make
+   things build. */
+
+struct tftphdr {
+  short th_opcode;         /* packet type */
+  unsigned short th_block; /* all sorts of things */
+  char th_data[1];         /* data or error string */
+} PACKED_STRUCT;
+
+#define th_stuff th_block
+#define th_code  th_block
+#define th_msg   th_data
+
+#define EUNDEF    0
+#define ENOTFOUND 1
+#define EACCESS   2
+#define ENOSPACE  3
+#define EBADOP    4
+#define EBADID    5
+#define EEXISTS   6
+#define ENOUSER   7
+
+#endif /* HEADER_CURL_SERVER_TFTP_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/tftpd.c b/ap/lib/libcurl/curl-7.54.1/tests/server/tftpd.c
new file mode 100644
index 0000000..df01eb7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/tftpd.c
@@ -0,0 +1,1434 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ *
+ * Trivial file transfer protocol server.
+ *
+ * This code includes many modifications by Jim Guyton <guyton@rand-unix>
+ *
+ * This source file was started based on netkit-tftpd 0.17
+ * Heavily modified for curl's test suite
+ */
+
+/*
+ * Copyright (c) 1983, 2016 Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *      This product includes software developed by the University of
+ *      California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include "server_setup.h"
+
+#ifdef HAVE_SYS_IOCTL_H
+#include <sys/ioctl.h>
+#endif
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_ARPA_INET_H
+#include <arpa/inet.h>
+#endif
+#ifdef HAVE_ARPA_TFTP_H
+#include <arpa/tftp.h>
+#else
+#include "tftp.h"
+#endif
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+#ifdef HAVE_SYS_FILIO_H
+/* FIONREAD on Solaris 7 */
+#include <sys/filio.h>
+#endif
+
+#include <setjmp.h>
+
+#ifdef HAVE_PWD_H
+#include <pwd.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+#include "getpart.h"
+#include "util.h"
+#include "server_sockaddr.h"
+
+/* include memdebug.h last */
+#include "memdebug.h"
+
+/*****************************************************************************
+*                      STRUCT DECLARATIONS AND DEFINES                       *
+*****************************************************************************/
+
+#ifndef PKTSIZE
+#define PKTSIZE (SEGSIZE + 4)  /* SEGSIZE defined in arpa/tftp.h */
+#endif
+
+struct testcase {
+  char *buffer;   /* holds the file data to send to the client */
+  size_t bufsize; /* size of the data in buffer */
+  char *rptr;     /* read pointer into the buffer */
+  size_t rcount;  /* amount of data left to read of the file */
+  long testno;    /* test case number */
+  int ofile;      /* file descriptor for output file when uploading to us */
+
+  int writedelay; /* number of seconds between each packet */
+};
+
+struct formats {
+  const char *f_mode;
+  int f_convert;
+};
+
+struct errmsg {
+  int e_code;
+  const char *e_msg;
+};
+
+typedef union {
+  struct tftphdr hdr;
+  char storage[PKTSIZE];
+} tftphdr_storage_t;
+
+/*
+ * bf.counter values in range [-1 .. SEGSIZE] represents size of data in the
+ * bf.buf buffer. Additionally it can also hold flags BF_ALLOC or BF_FREE.
+ */
+
+struct bf {
+  int counter;            /* size of data in buffer, or flag */
+  tftphdr_storage_t buf;  /* room for data packet */
+};
+
+#define BF_ALLOC -3       /* alloc'd but not yet filled */
+#define BF_FREE  -2       /* free */
+
+#define opcode_RRQ   1
+#define opcode_WRQ   2
+#define opcode_DATA  3
+#define opcode_ACK   4
+#define opcode_ERROR 5
+
+#define TIMEOUT      5
+
+#undef MIN
+#define MIN(x,y) ((x)<(y)?(x):(y))
+
+#ifndef DEFAULT_LOGFILE
+#define DEFAULT_LOGFILE "log/tftpd.log"
+#endif
+
+#define REQUEST_DUMP  "log/server.input"
+
+#define DEFAULT_PORT 8999 /* UDP */
+
+/*****************************************************************************
+*                              GLOBAL VARIABLES                              *
+*****************************************************************************/
+
+static struct errmsg errmsgs[] = {
+  { EUNDEF,       "Undefined error code" },
+  { ENOTFOUND,    "File not found" },
+  { EACCESS,      "Access violation" },
+  { ENOSPACE,     "Disk full or allocation exceeded" },
+  { EBADOP,       "Illegal TFTP operation" },
+  { EBADID,       "Unknown transfer ID" },
+  { EEXISTS,      "File already exists" },
+  { ENOUSER,      "No such user" },
+  { -1,           0 }
+};
+
+static struct formats formata[] = {
+  { "netascii",   1 },
+  { "octet",      0 },
+  { NULL,         0 }
+};
+
+static struct bf bfs[2];
+
+static int nextone;     /* index of next buffer to use */
+static int current;     /* index of buffer in use */
+
+                           /* control flags for crlf conversions */
+static int newline = 0;    /* fillbuf: in middle of newline expansion */
+static int prevchar = -1;  /* putbuf: previous char (cr check) */
+
+static tftphdr_storage_t buf;
+static tftphdr_storage_t ackbuf;
+
+static srvr_sockaddr_union_t from;
+static curl_socklen_t fromlen;
+
+static curl_socket_t peer = CURL_SOCKET_BAD;
+
+static unsigned int timeout;
+static unsigned int maxtimeout = 5 * TIMEOUT;
+
+#ifdef ENABLE_IPV6
+static bool use_ipv6 = FALSE;
+#endif
+static const char *ipv_inuse = "IPv4";
+
+const  char *serverlogfile = DEFAULT_LOGFILE;
+static const char *pidname = ".tftpd.pid";
+static int serverlogslocked = 0;
+static int wrotepidfile = 0;
+
+#ifdef HAVE_SIGSETJMP
+static sigjmp_buf timeoutbuf;
+#endif
+
+#if defined(HAVE_ALARM) && defined(SIGALRM)
+static const unsigned int rexmtval = TIMEOUT;
+#endif
+
+/* do-nothing macro replacement for systems which lack siginterrupt() */
+
+#ifndef HAVE_SIGINTERRUPT
+#define siginterrupt(x,y) do {} while(0)
+#endif
+
+/* vars used to keep around previous signal handlers */
+
+typedef RETSIGTYPE (*SIGHANDLER_T)(int);
+
+#ifdef SIGHUP
+static SIGHANDLER_T old_sighup_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGPIPE
+static SIGHANDLER_T old_sigpipe_handler = SIG_ERR;
+#endif
+
+#ifdef SIGINT
+static SIGHANDLER_T old_sigint_handler  = SIG_ERR;
+#endif
+
+#ifdef SIGTERM
+static SIGHANDLER_T old_sigterm_handler = SIG_ERR;
+#endif
+
+#if defined(SIGBREAK) && defined(WIN32)
+static SIGHANDLER_T old_sigbreak_handler = SIG_ERR;
+#endif
+
+/* var which if set indicates that the program should finish execution */
+
+SIG_ATOMIC_T got_exit_signal = 0;
+
+/* if next is set indicates the first signal handled in exit_signal_handler */
+
+static volatile int exit_signal = 0;
+
+/*****************************************************************************
+*                            FUNCTION PROTOTYPES                             *
+*****************************************************************************/
+
+static struct tftphdr *rw_init(int);
+
+static struct tftphdr *w_init(void);
+
+static struct tftphdr *r_init(void);
+
+static void read_ahead(struct testcase *test, int convert);
+
+static ssize_t write_behind(struct testcase *test, int convert);
+
+static int synchnet(curl_socket_t);
+
+static int do_tftp(struct testcase *test, struct tftphdr *tp, ssize_t size);
+
+static int validate_access(struct testcase *test, const char *fname, int mode);
+
+static void sendtftp(struct testcase *test, struct formats *pf);
+
+static void recvtftp(struct testcase *test, struct formats *pf);
+
+static void nak(int error);
+
+#if defined(HAVE_ALARM) && defined(SIGALRM)
+
+static void mysignal(int sig, void (*handler)(int));
+
+static void timer(int signum);
+
+static void justtimeout(int signum);
+
+#endif /* HAVE_ALARM && SIGALRM */
+
+static RETSIGTYPE exit_signal_handler(int signum);
+
+static void install_signal_handlers(void);
+
+static void restore_signal_handlers(void);
+
+/*****************************************************************************
+*                          FUNCTION IMPLEMENTATIONS                          *
+*****************************************************************************/
+
+#if defined(HAVE_ALARM) && defined(SIGALRM)
+
+/*
+ * Like signal(), but with well-defined semantics.
+ */
+static void mysignal(int sig, void (*handler)(int))
+{
+  struct sigaction sa;
+  memset(&sa, 0, sizeof(sa));
+  sa.sa_handler = handler;
+  sigaction(sig, &sa, NULL);
+}
+
+static void timer(int signum)
+{
+  (void)signum;
+
+  logmsg("alarm!");
+
+  timeout += rexmtval;
+  if(timeout >= maxtimeout) {
+    if(wrotepidfile) {
+      wrotepidfile = 0;
+      unlink(pidname);
+    }
+    if(serverlogslocked) {
+      serverlogslocked = 0;
+      clear_advisor_read_lock(SERVERLOGS_LOCK);
+    }
+    exit(1);
+  }
+#ifdef HAVE_SIGSETJMP
+  siglongjmp(timeoutbuf, 1);
+#endif
+}
+
+static void justtimeout(int signum)
+{
+  (void)signum;
+}
+
+#endif /* HAVE_ALARM && SIGALRM */
+
+/* signal handler that will be triggered to indicate that the program
+  should finish its execution in a controlled manner as soon as possible.
+  The first time this is called it will set got_exit_signal to one and
+  store in exit_signal the signal that triggered its execution. */
+
+static RETSIGTYPE exit_signal_handler(int signum)
+{
+  int old_errno = errno;
+  if(got_exit_signal == 0) {
+    got_exit_signal = 1;
+    exit_signal = signum;
+  }
+  (void)signal(signum, exit_signal_handler);
+  errno = old_errno;
+}
+
+static void install_signal_handlers(void)
+{
+#ifdef SIGHUP
+  /* ignore SIGHUP signal */
+  old_sighup_handler = signal(SIGHUP, SIG_IGN);
+  if(old_sighup_handler == SIG_ERR)
+    logmsg("cannot install SIGHUP handler: %s", strerror(errno));
+#endif
+#ifdef SIGPIPE
+  /* ignore SIGPIPE signal */
+  old_sigpipe_handler = signal(SIGPIPE, SIG_IGN);
+  if(old_sigpipe_handler == SIG_ERR)
+    logmsg("cannot install SIGPIPE handler: %s", strerror(errno));
+#endif
+#ifdef SIGINT
+  /* handle SIGINT signal with our exit_signal_handler */
+  old_sigint_handler = signal(SIGINT, exit_signal_handler);
+  if(old_sigint_handler == SIG_ERR)
+    logmsg("cannot install SIGINT handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGINT, 1);
+#endif
+#ifdef SIGTERM
+  /* handle SIGTERM signal with our exit_signal_handler */
+  old_sigterm_handler = signal(SIGTERM, exit_signal_handler);
+  if(old_sigterm_handler == SIG_ERR)
+    logmsg("cannot install SIGTERM handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGTERM, 1);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  /* handle SIGBREAK signal with our exit_signal_handler */
+  old_sigbreak_handler = signal(SIGBREAK, exit_signal_handler);
+  if(old_sigbreak_handler == SIG_ERR)
+    logmsg("cannot install SIGBREAK handler: %s", strerror(errno));
+  else
+    siginterrupt(SIGBREAK, 1);
+#endif
+}
+
+static void restore_signal_handlers(void)
+{
+#ifdef SIGHUP
+  if(SIG_ERR != old_sighup_handler)
+    (void)signal(SIGHUP, old_sighup_handler);
+#endif
+#ifdef SIGPIPE
+  if(SIG_ERR != old_sigpipe_handler)
+    (void)signal(SIGPIPE, old_sigpipe_handler);
+#endif
+#ifdef SIGINT
+  if(SIG_ERR != old_sigint_handler)
+    (void)signal(SIGINT, old_sigint_handler);
+#endif
+#ifdef SIGTERM
+  if(SIG_ERR != old_sigterm_handler)
+    (void)signal(SIGTERM, old_sigterm_handler);
+#endif
+#if defined(SIGBREAK) && defined(WIN32)
+  if(SIG_ERR != old_sigbreak_handler)
+    (void)signal(SIGBREAK, old_sigbreak_handler);
+#endif
+}
+
+/*
+ * init for either read-ahead or write-behind.
+ * zero for write-behind, one for read-head.
+ */
+static struct tftphdr *rw_init(int x)
+{
+  newline = 0;                    /* init crlf flag */
+  prevchar = -1;
+  bfs[0].counter =  BF_ALLOC;     /* pass out the first buffer */
+  current = 0;
+  bfs[1].counter = BF_FREE;
+  nextone = x;                    /* ahead or behind? */
+  return &bfs[0].buf.hdr;
+}
+
+static struct tftphdr *w_init(void)
+{
+  return rw_init(0); /* write-behind */
+}
+
+static struct tftphdr *r_init(void)
+{
+  return rw_init(1); /* read-ahead */
+}
+
+/* Have emptied current buffer by sending to net and getting ack.
+   Free it and return next buffer filled with data.
+ */
+static int readit(struct testcase *test, struct tftphdr **dpp,
+                  int convert /* if true, convert to ascii */)
+{
+  struct bf *b;
+
+  bfs[current].counter = BF_FREE; /* free old one */
+  current = !current;             /* "incr" current */
+
+  b = &bfs[current];              /* look at new buffer */
+  if(b->counter == BF_FREE)      /* if it's empty */
+    read_ahead(test, convert);    /* fill it */
+
+  *dpp = &b->buf.hdr;             /* set caller's ptr */
+  return b->counter;
+}
+
+/*
+ * fill the input buffer, doing ascii conversions if requested
+ * conversions are  lf -> cr, lf  and cr -> cr, nul
+ */
+static void read_ahead(struct testcase *test,
+                       int convert /* if true, convert to ascii */)
+{
+  int i;
+  char *p;
+  int c;
+  struct bf *b;
+  struct tftphdr *dp;
+
+  b = &bfs[nextone];              /* look at "next" buffer */
+  if(b->counter != BF_FREE)      /* nop if not free */
+    return;
+  nextone = !nextone;             /* "incr" next buffer ptr */
+
+  dp = &b->buf.hdr;
+
+  if(convert == 0) {
+    /* The former file reading code did this:
+       b->counter = read(fileno(file), dp->th_data, SEGSIZE); */
+    size_t copy_n = MIN(SEGSIZE, test->rcount);
+    memcpy(dp->th_data, test->rptr, copy_n);
+
+    /* decrease amount, advance pointer */
+    test->rcount -= copy_n;
+    test->rptr += copy_n;
+    b->counter = (int)copy_n;
+    return;
+  }
+
+  p = dp->th_data;
+  for(i = 0 ; i < SEGSIZE; i++) {
+    if(newline) {
+      if(prevchar == '\n')
+        c = '\n';       /* lf to cr,lf */
+      else
+        c = '\0';       /* cr to cr,nul */
+      newline = 0;
+    }
+    else {
+      if(test->rcount) {
+        c=test->rptr[0];
+        test->rptr++;
+        test->rcount--;
+      }
+      else
+        break;
+      if(c == '\n' || c == '\r') {
+        prevchar = c;
+        c = '\r';
+        newline = 1;
+      }
+    }
+    *p++ = (char)c;
+  }
+  b->counter = (int)(p - dp->th_data);
+}
+
+/* Update count associated with the buffer, get new buffer from the queue.
+   Calls write_behind only if next buffer not available.
+ */
+static int writeit(struct testcase *test, struct tftphdr * volatile *dpp,
+                   int ct, int convert)
+{
+  bfs[current].counter = ct;      /* set size of data to write */
+  current = !current;             /* switch to other buffer */
+  if(bfs[current].counter != BF_FREE)     /* if not free */
+    write_behind(test, convert);     /* flush it */
+  bfs[current].counter = BF_ALLOC;        /* mark as alloc'd */
+  *dpp =  &bfs[current].buf.hdr;
+  return ct;                      /* this is a lie of course */
+}
+
+/*
+ * Output a buffer to a file, converting from netascii if requested.
+ * CR, NUL -> CR  and CR, LF => LF.
+ * Note spec is undefined if we get CR as last byte of file or a
+ * CR followed by anything else.  In this case we leave it alone.
+ */
+static ssize_t write_behind(struct testcase *test, int convert)
+{
+  char *writebuf;
+  int count;
+  int ct;
+  char *p;
+  int c;                          /* current character */
+  struct bf *b;
+  struct tftphdr *dp;
+
+  b = &bfs[nextone];
+  if(b->counter < -1)            /* anything to flush? */
+    return 0;                     /* just nop if nothing to do */
+
+  if(!test->ofile) {
+    char outfile[256];
+    snprintf(outfile, sizeof(outfile), "log/upload.%ld", test->testno);
+#ifdef WIN32
+    test->ofile=open(outfile, O_CREAT|O_RDWR|O_BINARY, 0777);
+#else
+    test->ofile=open(outfile, O_CREAT|O_RDWR, 0777);
+#endif
+    if(test->ofile == -1) {
+      logmsg("Couldn't create and/or open file %s for upload!", outfile);
+      return -1; /* failure! */
+    }
+  }
+
+  count = b->counter;             /* remember byte count */
+  b->counter = BF_FREE;           /* reset flag */
+  dp = &b->buf.hdr;
+  nextone = !nextone;             /* incr for next time */
+  writebuf = dp->th_data;
+
+  if(count <= 0)
+    return -1;                    /* nak logic? */
+
+  if(convert == 0)
+    return write(test->ofile, writebuf, count);
+
+  p = writebuf;
+  ct = count;
+  while(ct--) {                   /* loop over the buffer */
+    c = *p++;                     /* pick up a character */
+    if(prevchar == '\r') {        /* if prev char was cr */
+      if(c == '\n')               /* if have cr,lf then just */
+        lseek(test->ofile, -1, SEEK_CUR); /* smash lf on top of the cr */
+      else
+        if(c == '\0')             /* if have cr,nul then */
+          goto skipit;            /* just skip over the putc */
+      /* else just fall through and allow it */
+    }
+    /* formerly
+       putc(c, file); */
+    if(1 != write(test->ofile, &c, 1))
+      break;
+    skipit:
+    prevchar = c;
+  }
+  return count;
+}
+
+/* When an error has occurred, it is possible that the two sides are out of
+ * synch.  Ie: that what I think is the other side's response to packet N is
+ * really their response to packet N-1.
+ *
+ * So, to try to prevent that, we flush all the input queued up for us on the
+ * network connection on our host.
+ *
+ * We return the number of packets we flushed (mostly for reporting when trace
+ * is active).
+ */
+
+static int synchnet(curl_socket_t f /* socket to flush */)
+{
+
+#if defined(HAVE_IOCTLSOCKET)
+  unsigned long i;
+#else
+  int i;
+#endif
+  int j = 0;
+  char rbuf[PKTSIZE];
+  srvr_sockaddr_union_t fromaddr;
+  curl_socklen_t fromaddrlen;
+
+  for(;;) {
+#if defined(HAVE_IOCTLSOCKET)
+    (void) ioctlsocket(f, FIONREAD, &i);
+#else
+    (void) ioctl(f, FIONREAD, &i);
+#endif
+    if(i) {
+      j++;
+#ifdef ENABLE_IPV6
+      if(!use_ipv6)
+#endif
+        fromaddrlen = sizeof(fromaddr.sa4);
+#ifdef ENABLE_IPV6
+      else
+        fromaddrlen = sizeof(fromaddr.sa6);
+#endif
+      (void) recvfrom(f, rbuf, sizeof(rbuf), 0,
+                      &fromaddr.sa, &fromaddrlen);
+    }
+    else
+      break;
+  }
+  return j;
+}
+
+int main(int argc, char **argv)
+{
+  srvr_sockaddr_union_t me;
+  struct tftphdr *tp;
+  ssize_t n = 0;
+  int arg = 1;
+  unsigned short port = DEFAULT_PORT;
+  curl_socket_t sock = CURL_SOCKET_BAD;
+  int flag;
+  int rc;
+  int error;
+  long pid;
+  struct testcase test;
+  int result = 0;
+
+  memset(&test, 0, sizeof(test));
+
+  while(argc>arg) {
+    if(!strcmp("--version", argv[arg])) {
+      printf("tftpd IPv4%s\n",
+#ifdef ENABLE_IPV6
+             "/IPv6"
+#else
+             ""
+#endif
+             );
+      return 0;
+    }
+    else if(!strcmp("--pidfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        pidname = argv[arg++];
+    }
+    else if(!strcmp("--logfile", argv[arg])) {
+      arg++;
+      if(argc>arg)
+        serverlogfile = argv[arg++];
+    }
+    else if(!strcmp("--ipv4", argv[arg])) {
+#ifdef ENABLE_IPV6
+      ipv_inuse = "IPv4";
+      use_ipv6 = FALSE;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--ipv6", argv[arg])) {
+#ifdef ENABLE_IPV6
+      ipv_inuse = "IPv6";
+      use_ipv6 = TRUE;
+#endif
+      arg++;
+    }
+    else if(!strcmp("--port", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        char *endptr;
+        unsigned long ulnum = strtoul(argv[arg], &endptr, 10);
+        if((endptr != argv[arg] + strlen(argv[arg])) ||
+           (ulnum < 1025UL) || (ulnum > 65535UL)) {
+          fprintf(stderr, "tftpd: invalid --port argument (%s)\n",
+                  argv[arg]);
+          return 0;
+        }
+        port = curlx_ultous(ulnum);
+        arg++;
+      }
+    }
+    else if(!strcmp("--srcdir", argv[arg])) {
+      arg++;
+      if(argc>arg) {
+        path = argv[arg];
+        arg++;
+      }
+    }
+    else {
+      puts("Usage: tftpd [option]\n"
+           " --version\n"
+           " --logfile [file]\n"
+           " --pidfile [file]\n"
+           " --ipv4\n"
+           " --ipv6\n"
+           " --port [port]\n"
+           " --srcdir [path]");
+      return 0;
+    }
+  }
+
+#ifdef WIN32
+  win32_init();
+  atexit(win32_cleanup);
+#endif
+
+  install_signal_handlers();
+
+  pid = (long)getpid();
+
+#ifdef ENABLE_IPV6
+  if(!use_ipv6)
+#endif
+    sock = socket(AF_INET, SOCK_DGRAM, 0);
+#ifdef ENABLE_IPV6
+  else
+    sock = socket(AF_INET6, SOCK_DGRAM, 0);
+#endif
+
+  if(CURL_SOCKET_BAD == sock) {
+    error = SOCKERRNO;
+    logmsg("Error creating socket: (%d) %s",
+           error, strerror(error));
+    result = 1;
+    goto tftpd_cleanup;
+  }
+
+  flag = 1;
+  if(0 != setsockopt(sock, SOL_SOCKET, SO_REUSEADDR,
+            (void *)&flag, sizeof(flag))) {
+    error = SOCKERRNO;
+    logmsg("setsockopt(SO_REUSEADDR) failed with error: (%d) %s",
+           error, strerror(error));
+    result = 1;
+    goto tftpd_cleanup;
+  }
+
+#ifdef ENABLE_IPV6
+  if(!use_ipv6) {
+#endif
+    memset(&me.sa4, 0, sizeof(me.sa4));
+    me.sa4.sin_family = AF_INET;
+    me.sa4.sin_addr.s_addr = INADDR_ANY;
+    me.sa4.sin_port = htons(port);
+    rc = bind(sock, &me.sa, sizeof(me.sa4));
+#ifdef ENABLE_IPV6
+  }
+  else {
+    memset(&me.sa6, 0, sizeof(me.sa6));
+    me.sa6.sin6_family = AF_INET6;
+    me.sa6.sin6_addr = in6addr_any;
+    me.sa6.sin6_port = htons(port);
+    rc = bind(sock, &me.sa, sizeof(me.sa6));
+  }
+#endif /* ENABLE_IPV6 */
+  if(0 != rc) {
+    error = SOCKERRNO;
+    logmsg("Error binding socket on port %hu: (%d) %s",
+           port, error, strerror(error));
+    result = 1;
+    goto tftpd_cleanup;
+  }
+
+  wrotepidfile = write_pidfile(pidname);
+  if(!wrotepidfile) {
+    result = 1;
+    goto tftpd_cleanup;
+  }
+
+  logmsg("Running %s version on port UDP/%d", ipv_inuse, (int)port);
+
+  for(;;) {
+    fromlen = sizeof(from);
+#ifdef ENABLE_IPV6
+    if(!use_ipv6)
+#endif
+      fromlen = sizeof(from.sa4);
+#ifdef ENABLE_IPV6
+    else
+      fromlen = sizeof(from.sa6);
+#endif
+    n = (ssize_t)recvfrom(sock, &buf.storage[0], sizeof(buf.storage), 0,
+                          &from.sa, &fromlen);
+    if(got_exit_signal)
+      break;
+    if(n < 0) {
+      logmsg("recvfrom");
+      result = 3;
+      break;
+    }
+
+    set_advisor_read_lock(SERVERLOGS_LOCK);
+    serverlogslocked = 1;
+
+#ifdef ENABLE_IPV6
+    if(!use_ipv6) {
+#endif
+      from.sa4.sin_family = AF_INET;
+      peer = socket(AF_INET, SOCK_DGRAM, 0);
+      if(CURL_SOCKET_BAD == peer) {
+        logmsg("socket");
+        result = 2;
+        break;
+      }
+      if(connect(peer, &from.sa, sizeof(from.sa4)) < 0) {
+        logmsg("connect: fail");
+        result = 1;
+        break;
+      }
+#ifdef ENABLE_IPV6
+    }
+    else {
+      from.sa6.sin6_family = AF_INET6;
+      peer = socket(AF_INET6, SOCK_DGRAM, 0);
+      if(CURL_SOCKET_BAD == peer) {
+        logmsg("socket");
+        result = 2;
+        break;
+      }
+      if(connect(peer, &from.sa, sizeof(from.sa6)) < 0) {
+        logmsg("connect: fail");
+        result = 1;
+        break;
+      }
+    }
+#endif
+
+    maxtimeout = 5*TIMEOUT;
+
+    tp = &buf.hdr;
+    tp->th_opcode = ntohs(tp->th_opcode);
+    if(tp->th_opcode == opcode_RRQ || tp->th_opcode == opcode_WRQ) {
+      memset(&test, 0, sizeof(test));
+      if(do_tftp(&test, tp, n) < 0)
+        break;
+      free(test.buffer);
+    }
+    sclose(peer);
+    peer = CURL_SOCKET_BAD;
+
+    if(test.ofile > 0) {
+      close(test.ofile);
+      test.ofile = 0;
+    }
+
+    if(got_exit_signal)
+      break;
+
+    if(serverlogslocked) {
+      serverlogslocked = 0;
+      clear_advisor_read_lock(SERVERLOGS_LOCK);
+    }
+
+    logmsg("end of one transfer");
+
+  }
+
+tftpd_cleanup:
+
+  if(test.ofile > 0)
+    close(test.ofile);
+
+  if((peer != sock) && (peer != CURL_SOCKET_BAD))
+    sclose(peer);
+
+  if(sock != CURL_SOCKET_BAD)
+    sclose(sock);
+
+  if(got_exit_signal)
+    logmsg("signalled to die");
+
+  if(wrotepidfile)
+    unlink(pidname);
+
+  if(serverlogslocked) {
+    serverlogslocked = 0;
+    clear_advisor_read_lock(SERVERLOGS_LOCK);
+  }
+
+  restore_signal_handlers();
+
+  if(got_exit_signal) {
+    logmsg("========> %s tftpd (port: %d pid: %ld) exits with signal (%d)",
+           ipv_inuse, (int)port, pid, exit_signal);
+    /*
+     * To properly set the return status of the process we
+     * must raise the same signal SIGINT or SIGTERM that we
+     * caught and let the old handler take care of it.
+     */
+    raise(exit_signal);
+  }
+
+  logmsg("========> tftpd quits");
+  return result;
+}
+
+/*
+ * Handle initial connection protocol.
+ */
+static int do_tftp(struct testcase *test, struct tftphdr *tp, ssize_t size)
+{
+  char *cp;
+  int first = 1, ecode;
+  struct formats *pf;
+  char *filename, *mode = NULL;
+  int error;
+  FILE *server;
+#ifdef USE_WINSOCK
+  DWORD recvtimeout, recvtimeoutbak;
+#endif
+  const char *option = "mode"; /* mode is implicit */
+  int toggle = 1;
+
+  /* Open request dump file. */
+  server = fopen(REQUEST_DUMP, "ab");
+  if(!server) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("Error opening file: %s", REQUEST_DUMP);
+    return -1;
+  }
+
+  /* store input protocol */
+  fprintf(server, "opcode: %x\n", tp->th_opcode);
+
+  cp = (char *)&tp->th_stuff;
+  filename = cp;
+  do {
+    bool endofit = true;
+    while(cp < &buf.storage[size]) {
+      if(*cp == '\0') {
+        endofit = false;
+        break;
+      }
+      cp++;
+    }
+    if(endofit)
+      /* no more options */
+      break;
+
+    /* before increasing pointer, make sure it is still within the legal
+       space */
+    if((cp+1) < &buf.storage[size]) {
+      ++cp;
+      if(first) {
+        /* store the mode since we need it later */
+        mode = cp;
+        first = 0;
+      }
+      if(toggle)
+        /* name/value pair: */
+        fprintf(server, "%s: %s\n", option, cp);
+      else {
+        /* store the name pointer */
+        option = cp;
+      }
+      toggle ^= 1;
+    }
+    else
+      /* No more options */
+      break;
+  } while(1);
+
+  if(*cp) {
+    nak(EBADOP);
+    fclose(server);
+    return 3;
+  }
+
+  /* store input protocol */
+  fprintf(server, "filename: %s\n", filename);
+
+  for(cp = mode; cp && *cp; cp++)
+    if(ISUPPER(*cp))
+      *cp = (char)tolower((int)*cp);
+
+  /* store input protocol */
+  fclose(server);
+
+  for(pf = formata; pf->f_mode; pf++)
+    if(strcmp(pf->f_mode, mode) == 0)
+      break;
+  if(!pf->f_mode) {
+    nak(EBADOP);
+    return 2;
+  }
+  ecode = validate_access(test, filename, tp->th_opcode);
+  if(ecode) {
+    nak(ecode);
+    return 1;
+  }
+
+#ifdef USE_WINSOCK
+  recvtimeout = sizeof(recvtimeoutbak);
+  getsockopt(peer, SOL_SOCKET, SO_RCVTIMEO,
+             (char *)&recvtimeoutbak, (int *)&recvtimeout);
+  recvtimeout = TIMEOUT*1000;
+  setsockopt(peer, SOL_SOCKET, SO_RCVTIMEO,
+             (const char *)&recvtimeout, sizeof(recvtimeout));
+#endif
+
+  if(tp->th_opcode == opcode_WRQ)
+    recvtftp(test, pf);
+  else
+    sendtftp(test, pf);
+
+#ifdef USE_WINSOCK
+  recvtimeout = recvtimeoutbak;
+  setsockopt(peer, SOL_SOCKET, SO_RCVTIMEO,
+             (const char *)&recvtimeout, sizeof(recvtimeout));
+#endif
+
+  return 0;
+}
+
+/* Based on the testno, parse the correct server commands. */
+static int parse_servercmd(struct testcase *req)
+{
+  FILE *stream;
+  char *filename;
+  int error;
+
+  filename = test2file(req->testno);
+
+  stream=fopen(filename, "rb");
+  if(!stream) {
+    error = errno;
+    logmsg("fopen() failed with error: %d %s", error, strerror(error));
+    logmsg("  [1] Error opening file: %s", filename);
+    logmsg("  Couldn't open test file %ld", req->testno);
+    return 1; /* done */
+  }
+  else {
+    char *orgcmd = NULL;
+    char *cmd = NULL;
+    size_t cmdsize = 0;
+    int num=0;
+
+    /* get the custom server control "commands" */
+    error = getpart(&orgcmd, &cmdsize, "reply", "servercmd", stream);
+    fclose(stream);
+    if(error) {
+      logmsg("getpart() failed with error: %d", error);
+      return 1; /* done */
+    }
+
+    cmd = orgcmd;
+    while(cmd && cmdsize) {
+      char *check;
+      if(1 == sscanf(cmd, "writedelay: %d", &num)) {
+        logmsg("instructed to delay %d secs between packets", num);
+        req->writedelay = num;
+      }
+      else {
+        logmsg("Unknown <servercmd> instruction found: %s", cmd);
+      }
+      /* try to deal with CRLF or just LF */
+      check = strchr(cmd, '\r');
+      if(!check)
+        check = strchr(cmd, '\n');
+
+      if(check) {
+        /* get to the letter following the newline */
+        while((*check == '\r') || (*check == '\n'))
+          check++;
+
+        if(!*check)
+          /* if we reached a zero, get out */
+          break;
+        cmd = check;
+      }
+      else
+        break;
+    }
+    free(orgcmd);
+  }
+
+  return 0; /* OK! */
+}
+
+
+/*
+ * Validate file access.
+ */
+static int validate_access(struct testcase *test,
+                           const char *filename, int mode)
+{
+  char *ptr;
+  long testno, partno;
+  int error;
+  char partbuf[80]="data";
+
+  logmsg("trying to get file: %s mode %x", filename, mode);
+
+  if(!strncmp("verifiedserver", filename, 14)) {
+    char weare[128];
+    size_t count = snprintf(weare, sizeof(weare),
+                            "WE ROOLZ: %ld\r\n", (long)getpid());
+
+    logmsg("Are-we-friendly question received");
+    test->buffer = strdup(weare);
+    test->rptr = test->buffer; /* set read pointer */
+    test->bufsize = count;    /* set total count */
+    test->rcount = count;     /* set data left to read */
+    return 0; /* fine */
+  }
+
+  /* find the last slash */
+  ptr = strrchr(filename, '/');
+
+  if(ptr) {
+    char *file;
+
+    ptr++; /* skip the slash */
+
+    /* skip all non-numericals following the slash */
+    while(*ptr && !ISDIGIT(*ptr))
+      ptr++;
+
+    /* get the number */
+    testno = strtol(ptr, &ptr, 10);
+
+    if(testno > 10000) {
+      partno = testno % 10000;
+      testno /= 10000;
+    }
+    else
+      partno = 0;
+
+
+    logmsg("requested test number %ld part %ld", testno, partno);
+
+    test->testno = testno;
+
+    (void)parse_servercmd(test);
+
+    file = test2file(testno);
+
+    if(0 != partno)
+      snprintf(partbuf, sizeof(partbuf), "data%ld", partno);
+
+    if(file) {
+      FILE *stream=fopen(file, "rb");
+      if(!stream) {
+        error = errno;
+        logmsg("fopen() failed with error: %d %s", error, strerror(error));
+        logmsg("Error opening file: %s", file);
+        logmsg("Couldn't open test file: %s", file);
+        return EACCESS;
+      }
+      else {
+        size_t count;
+        error = getpart(&test->buffer, &count, "reply", partbuf, stream);
+        fclose(stream);
+        if(error) {
+          logmsg("getpart() failed with error: %d", error);
+          return EACCESS;
+        }
+        if(test->buffer) {
+          test->rptr = test->buffer; /* set read pointer */
+          test->bufsize = count;    /* set total count */
+          test->rcount = count;     /* set data left to read */
+        }
+        else
+          return EACCESS;
+      }
+
+    }
+    else
+      return EACCESS;
+  }
+  else {
+    logmsg("no slash found in path");
+    return EACCESS; /* failure */
+  }
+
+  logmsg("file opened and all is good");
+  return 0;
+}
+
+/*
+ * Send the requested file.
+ */
+static void sendtftp(struct testcase *test, struct formats *pf)
+{
+  int size;
+  ssize_t n;
+  /* These are volatile to live through a siglongjmp */
+  volatile unsigned short sendblock; /* block count */
+  struct tftphdr * volatile sdp = r_init(); /* data buffer */
+  struct tftphdr * const sap = &ackbuf.hdr; /* ack buffer */
+
+  sendblock = 1;
+#if defined(HAVE_ALARM) && defined(SIGALRM)
+  mysignal(SIGALRM, timer);
+#endif
+  do {
+    size = readit(test, (struct tftphdr **)&sdp, pf->f_convert);
+    if(size < 0) {
+      nak(errno + 100);
+      return;
+    }
+    sdp->th_opcode = htons((unsigned short)opcode_DATA);
+    sdp->th_block = htons(sendblock);
+    timeout = 0;
+#ifdef HAVE_SIGSETJMP
+    (void) sigsetjmp(timeoutbuf, 1);
+#endif
+    if(test->writedelay) {
+      logmsg("Pausing %d seconds before %d bytes", test->writedelay,
+             size);
+      wait_ms(1000*test->writedelay);
+    }
+
+    send_data:
+    if(swrite(peer, sdp, size + 4) != size + 4) {
+      logmsg("write");
+      return;
+    }
+    read_ahead(test, pf->f_convert);
+    for(;;) {
+#ifdef HAVE_ALARM
+      alarm(rexmtval);        /* read the ack */
+#endif
+      n = sread(peer, &ackbuf.storage[0], sizeof(ackbuf.storage));
+#ifdef HAVE_ALARM
+      alarm(0);
+#endif
+      if(got_exit_signal)
+        return;
+      if(n < 0) {
+        logmsg("read: fail");
+        return;
+      }
+      sap->th_opcode = ntohs((unsigned short)sap->th_opcode);
+      sap->th_block = ntohs(sap->th_block);
+
+      if(sap->th_opcode == opcode_ERROR) {
+        logmsg("got ERROR");
+        return;
+      }
+
+      if(sap->th_opcode == opcode_ACK) {
+        if(sap->th_block == sendblock) {
+          break;
+        }
+        /* Re-synchronize with the other side */
+        (void) synchnet(peer);
+        if(sap->th_block == (sendblock-1)) {
+          goto send_data;
+        }
+      }
+
+    }
+    sendblock++;
+  } while(size == SEGSIZE);
+}
+
+/*
+ * Receive a file.
+ */
+static void recvtftp(struct testcase *test, struct formats *pf)
+{
+  ssize_t n, size;
+  /* These are volatile to live through a siglongjmp */
+  volatile unsigned short recvblock; /* block count */
+  struct tftphdr * volatile rdp;     /* data buffer */
+  struct tftphdr *rap;      /* ack buffer */
+
+  recvblock = 0;
+  rdp = w_init();
+#if defined(HAVE_ALARM) && defined(SIGALRM)
+  mysignal(SIGALRM, timer);
+#endif
+  rap = &ackbuf.hdr;
+  do {
+    timeout = 0;
+    rap->th_opcode = htons((unsigned short)opcode_ACK);
+    rap->th_block = htons(recvblock);
+    recvblock++;
+#ifdef HAVE_SIGSETJMP
+    (void) sigsetjmp(timeoutbuf, 1);
+#endif
+send_ack:
+    if(swrite(peer, &ackbuf.storage[0], 4) != 4) {
+      logmsg("write: fail\n");
+      goto abort;
+    }
+    write_behind(test, pf->f_convert);
+    for(;;) {
+#ifdef HAVE_ALARM
+      alarm(rexmtval);
+#endif
+      n = sread(peer, rdp, PKTSIZE);
+#ifdef HAVE_ALARM
+      alarm(0);
+#endif
+      if(got_exit_signal)
+        goto abort;
+      if(n < 0) {                       /* really? */
+        logmsg("read: fail\n");
+        goto abort;
+      }
+      rdp->th_opcode = ntohs((unsigned short)rdp->th_opcode);
+      rdp->th_block = ntohs(rdp->th_block);
+      if(rdp->th_opcode == opcode_ERROR)
+        goto abort;
+      if(rdp->th_opcode == opcode_DATA) {
+        if(rdp->th_block == recvblock) {
+          break;                         /* normal */
+        }
+        /* Re-synchronize with the other side */
+        (void) synchnet(peer);
+        if(rdp->th_block == (recvblock-1))
+          goto send_ack;                 /* rexmit */
+      }
+    }
+
+    size = writeit(test, &rdp, (int)(n - 4), pf->f_convert);
+    if(size != (n-4)) {                 /* ahem */
+      if(size < 0)
+        nak(errno + 100);
+      else
+        nak(ENOSPACE);
+      goto abort;
+    }
+  } while(size == SEGSIZE);
+  write_behind(test, pf->f_convert);
+
+  rap->th_opcode = htons((unsigned short)opcode_ACK);  /* send the "final"
+                                                          ack */
+  rap->th_block = htons(recvblock);
+  (void) swrite(peer, &ackbuf.storage[0], 4);
+#if defined(HAVE_ALARM) && defined(SIGALRM)
+  mysignal(SIGALRM, justtimeout);        /* just abort read on timeout */
+  alarm(rexmtval);
+#endif
+  /* normally times out and quits */
+  n = sread(peer, &buf.storage[0], sizeof(buf.storage));
+#ifdef HAVE_ALARM
+  alarm(0);
+#endif
+  if(got_exit_signal)
+    goto abort;
+  if(n >= 4 &&                               /* if read some data */
+     rdp->th_opcode == opcode_DATA &&        /* and got a data block */
+     recvblock == rdp->th_block) {           /* then my last ack was lost */
+    (void) swrite(peer, &ackbuf.storage[0], 4);  /* resend final ack */
+  }
+abort:
+  return;
+}
+
+/*
+ * Send a nak packet (error message).  Error code passed in is one of the
+ * standard TFTP codes, or a Unix errno offset by 100.
+ */
+static void nak(int error)
+{
+  struct tftphdr *tp;
+  int length;
+  struct errmsg *pe;
+
+  tp = &buf.hdr;
+  tp->th_opcode = htons((unsigned short)opcode_ERROR);
+  tp->th_code = htons((unsigned short)error);
+  for(pe = errmsgs; pe->e_code >= 0; pe++)
+    if(pe->e_code == error)
+      break;
+  if(pe->e_code < 0) {
+    pe->e_msg = strerror(error - 100);
+    tp->th_code = EUNDEF;   /* set 'undef' errorcode */
+  }
+  length = (int)strlen(pe->e_msg);
+
+  /* we use memcpy() instead of strcpy() in order to avoid buffer overflow
+   * report from glibc with FORTIFY_SOURCE */
+  memcpy(tp->th_msg, pe->e_msg, length + 1);
+  length += 5;
+  if(swrite(peer, &buf.storage[0], length) != length)
+    logmsg("nak: fail\n");
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/util.c b/ap/lib/libcurl/curl-7.54.1/tests/server/util.c
new file mode 100644
index 0000000..a2340f4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/util.c
@@ -0,0 +1,399 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef _XOPEN_SOURCE_EXTENDED
+/* This define is "almost" required to build on HPUX 11 */
+#include <arpa/inet.h>
+#endif
+#ifdef HAVE_NETDB_H
+#include <netdb.h>
+#endif
+#ifdef HAVE_POLL_H
+#include <poll.h>
+#elif defined(HAVE_SYS_POLL_H)
+#include <sys/poll.h>
+#endif
+#ifdef __MINGW32__
+#include <w32api.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* make the curlx header define all printf() functions to use the curlx_*
+   versions instead */
+#include "curlx.h" /* from the private lib dir */
+#include "getpart.h"
+#include "util.h"
+#include "timeval.h"
+
+#ifdef USE_WINSOCK
+#undef  EINTR
+#define EINTR    4 /* errno.h value */
+#undef  EINVAL
+#define EINVAL  22 /* errno.h value */
+#endif
+
+/* MinGW with w32api version < 3.6 declared in6addr_any as extern,
+   but lacked the definition */
+#if defined(ENABLE_IPV6) && defined(__MINGW32__)
+#if (__W32API_MAJOR_VERSION < 3) || \
+    ((__W32API_MAJOR_VERSION == 3) && (__W32API_MINOR_VERSION < 6))
+const struct in6_addr in6addr_any = {{ IN6ADDR_ANY_INIT }};
+#endif /* w32api < 3.6 */
+#endif /* ENABLE_IPV6 && __MINGW32__*/
+
+/* This function returns a pointer to STATIC memory. It converts the given
+ * binary lump to a hex formatted string usable for output in logs or
+ * whatever.
+ */
+char *data_to_hex(char *data, size_t len)
+{
+  static char buf[256*3];
+  size_t i;
+  char *optr = buf;
+  char *iptr = data;
+
+  if(len > 255)
+    len = 255;
+
+  for(i=0; i < len; i++) {
+    if((data[i] >= 0x20) && (data[i] < 0x7f))
+      *optr++ = *iptr++;
+    else {
+      snprintf(optr, 4, "%%%02x", *iptr++);
+      optr+=3;
+    }
+  }
+  *optr=0; /* in case no sprintf was used */
+
+  return buf;
+}
+
+void logmsg(const char *msg, ...)
+{
+  va_list ap;
+  char buffer[2048 + 1];
+  FILE *logfp;
+  int error;
+  struct timeval tv;
+  time_t sec;
+  struct tm *now;
+  char timebuf[20];
+  static time_t epoch_offset;
+  static int    known_offset;
+
+  if(!serverlogfile) {
+    fprintf(stderr, "Error: serverlogfile not set\n");
+    return;
+  }
+
+  tv = curlx_tvnow();
+  if(!known_offset) {
+    epoch_offset = time(NULL) - tv.tv_sec;
+    known_offset = 1;
+  }
+  sec = epoch_offset + tv.tv_sec;
+  now = localtime(&sec); /* not thread safe but we don't care */
+
+  snprintf(timebuf, sizeof(timebuf), "%02d:%02d:%02d.%06ld",
+    (int)now->tm_hour, (int)now->tm_min, (int)now->tm_sec, (long)tv.tv_usec);
+
+  va_start(ap, msg);
+  vsnprintf(buffer, sizeof(buffer), msg, ap);
+  va_end(ap);
+
+  logfp = fopen(serverlogfile, "ab");
+  if(logfp) {
+    fprintf(logfp, "%s %s\n", timebuf, buffer);
+    fclose(logfp);
+  }
+  else {
+    error = errno;
+    fprintf(stderr, "fopen() failed with error: %d %s\n",
+            error, strerror(error));
+    fprintf(stderr, "Error opening file: %s\n", serverlogfile);
+    fprintf(stderr, "Msg not logged: %s %s\n", timebuf, buffer);
+  }
+}
+
+#ifdef WIN32
+/* use instead of perror() on generic windows */
+void win32_perror(const char *msg)
+{
+  char buf[512];
+  DWORD err = SOCKERRNO;
+
+  if(!FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, err,
+                    LANG_NEUTRAL, buf, sizeof(buf), NULL))
+     snprintf(buf, sizeof(buf), "Unknown error %lu (%#lx)", err, err);
+  if(msg)
+    fprintf(stderr, "%s: ", msg);
+  fprintf(stderr, "%s\n", buf);
+}
+#endif  /* WIN32 */
+
+#ifdef USE_WINSOCK
+void win32_init(void)
+{
+  WORD wVersionRequested;
+  WSADATA wsaData;
+  int err;
+  wVersionRequested = MAKEWORD(USE_WINSOCK, USE_WINSOCK);
+
+  err = WSAStartup(wVersionRequested, &wsaData);
+
+  if(err != 0) {
+    perror("Winsock init failed");
+    logmsg("Error initialising winsock -- aborting");
+    exit(1);
+  }
+
+  if(LOBYTE(wsaData.wVersion) != USE_WINSOCK ||
+     HIBYTE(wsaData.wVersion) != USE_WINSOCK) {
+    WSACleanup();
+    perror("Winsock init failed");
+    logmsg("No suitable winsock.dll found -- aborting");
+    exit(1);
+  }
+}
+
+void win32_cleanup(void)
+{
+  WSACleanup();
+}
+#endif  /* USE_WINSOCK */
+
+/* set by the main code to point to where the test dir is */
+const char *path=".";
+
+char *test2file(long testno)
+{
+  static char filename[256];
+  snprintf(filename, sizeof(filename), TEST_DATA_PATH, path, testno);
+  return filename;
+}
+
+/*
+ * Portable function used for waiting a specific amount of ms.
+ * Waiting indefinitely with this function is not allowed, a
+ * zero or negative timeout value will return immediately.
+ *
+ * Return values:
+ *   -1 = system call error, or invalid timeout value
+ *    0 = specified timeout has elapsed
+ */
+int wait_ms(int timeout_ms)
+{
+#if !defined(MSDOS) && !defined(USE_WINSOCK)
+#ifndef HAVE_POLL_FINE
+  struct timeval pending_tv;
+#endif
+  struct timeval initial_tv;
+  int pending_ms;
+  int error;
+#endif
+  int r = 0;
+
+  if(!timeout_ms)
+    return 0;
+  if(timeout_ms < 0) {
+    errno = EINVAL;
+    return -1;
+  }
+#if defined(MSDOS)
+  delay(timeout_ms);
+#elif defined(USE_WINSOCK)
+  Sleep(timeout_ms);
+#else
+  pending_ms = timeout_ms;
+  initial_tv = curlx_tvnow();
+  do {
+#if defined(HAVE_POLL_FINE)
+    r = poll(NULL, 0, pending_ms);
+#else
+    pending_tv.tv_sec = pending_ms / 1000;
+    pending_tv.tv_usec = (pending_ms % 1000) * 1000;
+    r = select(0, NULL, NULL, NULL, &pending_tv);
+#endif /* HAVE_POLL_FINE */
+    if(r != -1)
+      break;
+    error = errno;
+    if(error && (error != EINTR))
+      break;
+    pending_ms = timeout_ms - (int)curlx_tvdiff(curlx_tvnow(), initial_tv);
+    if(pending_ms <= 0)
+      break;
+  } while(r == -1);
+#endif /* USE_WINSOCK */
+  if(r)
+    r = -1;
+  return r;
+}
+
+int write_pidfile(const char *filename)
+{
+  FILE *pidfile;
+  long pid;
+
+  pid = (long)getpid();
+  pidfile = fopen(filename, "wb");
+  if(!pidfile) {
+    logmsg("Couldn't write pid file: %s %s", filename, strerror(errno));
+    return 0; /* fail */
+  }
+  fprintf(pidfile, "%ld\n", pid);
+  fclose(pidfile);
+  logmsg("Wrote pid %ld to %s", pid, filename);
+  return 1; /* success */
+}
+
+void set_advisor_read_lock(const char *filename)
+{
+  FILE *lockfile;
+  int error = 0;
+  int res;
+
+  do {
+    lockfile = fopen(filename, "wb");
+  } while((lockfile == NULL) && ((error = errno) == EINTR));
+  if(lockfile == NULL) {
+    logmsg("Error creating lock file %s error: %d %s",
+           filename, error, strerror(error));
+    return;
+  }
+
+  do {
+    res = fclose(lockfile);
+  } while(res && ((error = errno) == EINTR));
+  if(res)
+    logmsg("Error closing lock file %s error: %d %s",
+           filename, error, strerror(error));
+}
+
+void clear_advisor_read_lock(const char *filename)
+{
+  int error = 0;
+  int res;
+
+  /*
+  ** Log all removal failures. Even those due to file not existing.
+  ** This allows to detect if unexpectedly the file has already been
+  ** removed by a process different than the one that should do this.
+  */
+
+  do {
+    res = unlink(filename);
+  } while(res && ((error = errno) == EINTR));
+  if(res)
+    logmsg("Error removing lock file %s error: %d %s",
+           filename, error, strerror(error));
+}
+
+
+/* Portable, consistent toupper (remember EBCDIC). Do not use toupper() because
+   its behavior is altered by the current locale. */
+static char raw_toupper(char in)
+{
+#if !defined(CURL_DOES_CONVERSIONS)
+  if(in >= 'a' && in <= 'z')
+    return (char)('A' + in - 'a');
+#else
+  switch(in) {
+  case 'a':
+    return 'A';
+  case 'b':
+    return 'B';
+  case 'c':
+    return 'C';
+  case 'd':
+    return 'D';
+  case 'e':
+    return 'E';
+  case 'f':
+    return 'F';
+  case 'g':
+    return 'G';
+  case 'h':
+    return 'H';
+  case 'i':
+    return 'I';
+  case 'j':
+    return 'J';
+  case 'k':
+    return 'K';
+  case 'l':
+    return 'L';
+  case 'm':
+    return 'M';
+  case 'n':
+    return 'N';
+  case 'o':
+    return 'O';
+  case 'p':
+    return 'P';
+  case 'q':
+    return 'Q';
+  case 'r':
+    return 'R';
+  case 's':
+    return 'S';
+  case 't':
+    return 'T';
+  case 'u':
+    return 'U';
+  case 'v':
+    return 'V';
+  case 'w':
+    return 'W';
+  case 'x':
+    return 'X';
+  case 'y':
+    return 'Y';
+  case 'z':
+    return 'Z';
+  }
+#endif
+
+  return in;
+}
+
+int strncasecompare(const char *first, const char *second, size_t max)
+{
+  while(*first && *second && max) {
+    if(raw_toupper(*first) != raw_toupper(*second)) {
+      break;
+    }
+    max--;
+    first++;
+    second++;
+  }
+  if(0 == max)
+    return 1; /* they are equal this far */
+
+  return raw_toupper(*first) == raw_toupper(*second);
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/server/util.h b/ap/lib/libcurl/curl-7.54.1/tests/server/util.h
new file mode 100644
index 0000000..a2a56ba
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/server/util.h
@@ -0,0 +1,68 @@
+#ifndef HEADER_CURL_SERVER_UTIL_H
+#define HEADER_CURL_SERVER_UTIL_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "server_setup.h"
+
+char *data_to_hex(char *data, size_t len);
+void logmsg(const char *msg, ...);
+
+#define TEST_DATA_PATH "%s/data/test%ld"
+
+#define SERVERLOGS_LOCK "log/serverlogs.lock"
+
+/* global variable, where to find the 'data' dir */
+extern const char *path;
+
+/* global variable, log file name */
+extern const char *serverlogfile;
+
+#ifdef WIN32
+#include <process.h>
+#include <fcntl.h>
+
+#define sleep(sec)   Sleep ((sec)*1000)
+
+#undef perror
+#define perror(m) win32_perror(m)
+void win32_perror(const char *msg);
+#endif  /* WIN32 */
+
+#ifdef USE_WINSOCK
+void win32_init(void);
+void win32_cleanup(void);
+#endif  /* USE_WINSOCK */
+
+/* returns the path name to the test case file */
+char *test2file(long testno);
+
+int wait_ms(int timeout_ms);
+
+int write_pidfile(const char *filename);
+
+void set_advisor_read_lock(const char *filename);
+
+void clear_advisor_read_lock(const char *filename);
+
+int strncasecompare(const char *first, const char *second, size_t max);
+
+#endif  /* HEADER_CURL_SERVER_UTIL_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/serverhelp.pm b/ap/lib/libcurl/curl-7.54.1/tests/serverhelp.pm
new file mode 100644
index 0000000..d6a0650
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/serverhelp.pm
@@ -0,0 +1,247 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+package serverhelp;
+
+use strict;
+use warnings;
+use Exporter;
+
+
+#***************************************************************************
+# Global symbols allowed without explicit package name
+#
+use vars qw(
+    @ISA
+    @EXPORT_OK
+    );
+
+
+#***************************************************************************
+# Inherit Exporter's capabilities
+#
+@ISA = qw(Exporter);
+
+
+#***************************************************************************
+# Global symbols this module will export upon request
+#
+@EXPORT_OK = qw(
+    serverfactors
+    servername_id
+    servername_str
+    servername_canon
+    server_pidfilename
+    server_logfilename
+    server_cmdfilename
+    server_inputfilename
+    server_outputfilename
+    mainsockf_pidfilename
+    mainsockf_logfilename
+    datasockf_pidfilename
+    datasockf_logfilename
+    );
+
+
+#***************************************************************************
+# Just for convenience, test harness uses 'https' and 'httptls' literals as
+# values for 'proto' variable in order to differentiate different servers.
+# 'https' literal is used for stunnel based https test servers, and 'httptls'
+# is used for non-stunnel https test servers.
+
+
+#***************************************************************************
+# Return server characterization factors given a server id string.
+#
+sub serverfactors {
+    my $server = $_[0];
+    my $proto;
+    my $ipvnum;
+    my $idnum;
+
+    if($server =~
+        /^((ftp|http|imap|pop3|smtp|http-pipe)s?)(\d*)(-ipv6|)$/) {
+        $proto  = $1;
+        $idnum  = ($3 && ($3 > 1)) ? $3 : 1;
+        $ipvnum = ($4 && ($4 =~ /6$/)) ? 6 : 4;
+    }
+    elsif($server =~
+        /^(tftp|sftp|socks|ssh|rtsp|gopher|httptls)(\d*)(-ipv6|)$/) {
+        $proto  = $1;
+        $idnum  = ($2 && ($2 > 1)) ? $2 : 1;
+        $ipvnum = ($3 && ($3 =~ /6$/)) ? 6 : 4;
+    }
+    else {
+        die "invalid server id: '$server'"
+    }
+    return($proto, $ipvnum, $idnum);
+}
+
+
+#***************************************************************************
+# Return server name string formatted for presentation purposes
+#
+sub servername_str {
+    my ($proto, $ipver, $idnum) = @_;
+
+    $proto = uc($proto) if($proto);
+    die "unsupported protocol: '$proto'" unless($proto &&
+        ($proto =~ /^(((FTP|HTTP|HTTP\/2|IMAP|POP3|SMTP|HTTP-PIPE)S?)|(TFTP|SFTP|SOCKS|SSH|RTSP|GOPHER|HTTPTLS))$/));
+
+    $ipver = (not $ipver) ? 'ipv4' : lc($ipver);
+    die "unsupported IP version: '$ipver'" unless($ipver &&
+        ($ipver =~ /^(4|6|ipv4|ipv6|-ipv4|-ipv6|unix)$/));
+    $ipver = ($ipver =~ /6$/) ? '-IPv6' : (($ipver =~ /unix$/) ? '-unix' : '');
+
+    $idnum = 1 if(not $idnum);
+    die "unsupported ID number: '$idnum'" unless($idnum &&
+        ($idnum =~ /^(\d+)$/));
+    $idnum = '' unless($idnum > 1);
+
+    return "${proto}${idnum}${ipver}";
+}
+
+
+#***************************************************************************
+# Return server name string formatted for identification purposes
+#
+sub servername_id {
+    my ($proto, $ipver, $idnum) = @_;
+    return lc(servername_str($proto, $ipver, $idnum));
+}
+
+
+#***************************************************************************
+# Return server name string formatted for file name purposes
+#
+sub servername_canon {
+    my ($proto, $ipver, $idnum) = @_;
+    my $string = lc(servername_str($proto, $ipver, $idnum));
+    $string =~ tr/-/_/;
+    $string =~ s/\//_v/;
+    return $string;
+}
+
+
+#***************************************************************************
+# Return file name for server pid file.
+#
+sub server_pidfilename {
+    my ($proto, $ipver, $idnum) = @_;
+    my $trailer = '_server.pid';
+    return '.'. servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for server log file.
+#
+sub server_logfilename {
+    my ($logdir, $proto, $ipver, $idnum) = @_;
+    my $trailer = '_server.log';
+    $trailer = '_stunnel.log' if(lc($proto) =~ /^(ftp|http|imap|pop3|smtp)s$/);
+    return "${logdir}/". servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for server commands file.
+#
+sub server_cmdfilename {
+    my ($logdir, $proto, $ipver, $idnum) = @_;
+    my $trailer = '_server.cmd';
+    return "${logdir}/". servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for server input file.
+#
+sub server_inputfilename {
+    my ($logdir, $proto, $ipver, $idnum) = @_;
+    my $trailer = '_server.input';
+    return "${logdir}/". servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for server output file.
+#
+sub server_outputfilename {
+    my ($logdir, $proto, $ipver, $idnum) = @_;
+    my $trailer = '_server.output';
+    return "${logdir}/". servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for main or primary sockfilter pid file.
+#
+sub mainsockf_pidfilename {
+    my ($proto, $ipver, $idnum) = @_;
+    die "unsupported protocol: '$proto'" unless($proto &&
+        (lc($proto) =~ /^(ftp|imap|pop3|smtp)s?$/));
+    my $trailer = (lc($proto) =~ /^ftps?$/) ? '_sockctrl.pid':'_sockfilt.pid';
+    return '.'. servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for main or primary sockfilter log file.
+#
+sub mainsockf_logfilename {
+    my ($logdir, $proto, $ipver, $idnum) = @_;
+    die "unsupported protocol: '$proto'" unless($proto &&
+        (lc($proto) =~ /^(ftp|imap|pop3|smtp)s?$/));
+    my $trailer = (lc($proto) =~ /^ftps?$/) ? '_sockctrl.log':'_sockfilt.log';
+    return "${logdir}/". servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for data or secondary sockfilter pid file.
+#
+sub datasockf_pidfilename {
+    my ($proto, $ipver, $idnum) = @_;
+    die "unsupported protocol: '$proto'" unless($proto &&
+        (lc($proto) =~ /^ftps?$/));
+    my $trailer = '_sockdata.pid';
+    return '.'. servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# Return file name for data or secondary sockfilter log file.
+#
+sub datasockf_logfilename {
+    my ($logdir, $proto, $ipver, $idnum) = @_;
+    die "unsupported protocol: '$proto'" unless($proto &&
+        (lc($proto) =~ /^ftps?$/));
+    my $trailer = '_sockdata.log';
+    return "${logdir}/". servername_canon($proto, $ipver, $idnum) ."$trailer";
+}
+
+
+#***************************************************************************
+# End of library
+1;
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/sshhelp.pm b/ap/lib/libcurl/curl-7.54.1/tests/sshhelp.pm
new file mode 100644
index 0000000..c5618a1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/sshhelp.pm
@@ -0,0 +1,454 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+package sshhelp;
+
+use strict;
+use warnings;
+use Exporter;
+use File::Spec;
+
+
+#***************************************************************************
+# Global symbols allowed without explicit package name
+#
+use vars qw(
+    @ISA
+    @EXPORT_OK
+    $sshdexe
+    $sshexe
+    $sftpsrvexe
+    $sftpexe
+    $sshkeygenexe
+    $httptlssrvexe
+    $sshdconfig
+    $sshconfig
+    $sftpconfig
+    $knownhosts
+    $sshdlog
+    $sshlog
+    $sftplog
+    $sftpcmds
+    $hstprvkeyf
+    $hstpubkeyf
+    $cliprvkeyf
+    $clipubkeyf
+    @sftppath
+    @httptlssrvpath
+    );
+
+
+#***************************************************************************
+# Inherit Exporter's capabilities
+#
+@ISA = qw(Exporter);
+
+
+#***************************************************************************
+# Global symbols this module will export upon request
+#
+@EXPORT_OK = qw(
+    $sshdexe
+    $sshexe
+    $sftpsrvexe
+    $sftpexe
+    $sshkeygenexe
+    $sshdconfig
+    $sshconfig
+    $sftpconfig
+    $knownhosts
+    $sshdlog
+    $sshlog
+    $sftplog
+    $sftpcmds
+    $hstprvkeyf
+    $hstpubkeyf
+    $cliprvkeyf
+    $clipubkeyf
+    display_sshdconfig
+    display_sshconfig
+    display_sftpconfig
+    display_sshdlog
+    display_sshlog
+    display_sftplog
+    dump_array
+    exe_ext
+    find_sshd
+    find_ssh
+    find_sftpsrv
+    find_sftp
+    find_sshkeygen
+    find_httptlssrv
+    logmsg
+    sshversioninfo
+    );
+
+
+#***************************************************************************
+# Global variables initialization
+#
+$sshdexe         = 'sshd'        .exe_ext(); # base name and ext of ssh daemon
+$sshexe          = 'ssh'         .exe_ext(); # base name and ext of ssh client
+$sftpsrvexe      = 'sftp-server' .exe_ext(); # base name and ext of sftp-server
+$sftpexe         = 'sftp'        .exe_ext(); # base name and ext of sftp client
+$sshkeygenexe    = 'ssh-keygen'  .exe_ext(); # base name and ext of ssh-keygen
+$httptlssrvexe   = 'gnutls-serv' .exe_ext(); # base name and ext of gnutls-serv
+$sshdconfig      = 'curl_sshd_config';       # ssh daemon config file
+$sshconfig       = 'curl_ssh_config';        # ssh client config file
+$sftpconfig      = 'curl_sftp_config';       # sftp client config file
+$sshdlog         = undef;                    # ssh daemon log file
+$sshlog          = undef;                    # ssh client log file
+$sftplog         = undef;                    # sftp client log file
+$sftpcmds        = 'curl_sftp_cmds';         # sftp client commands batch file
+$knownhosts      = 'curl_client_knownhosts'; # ssh knownhosts file
+$hstprvkeyf      = 'curl_host_rsa_key';      # host private key file
+$hstpubkeyf      = 'curl_host_rsa_key.pub';  # host public key file
+$cliprvkeyf      = 'curl_client_key';        # client private key file
+$clipubkeyf      = 'curl_client_key.pub';    # client public key file
+
+
+#***************************************************************************
+# Absolute paths where to look for sftp-server plugin, when not in PATH
+#
+@sftppath = qw(
+    /usr/lib/openssh
+    /usr/libexec/openssh
+    /usr/libexec
+    /usr/local/libexec
+    /opt/local/libexec
+    /usr/lib/ssh
+    /usr/libexec/ssh
+    /usr/sbin
+    /usr/lib
+    /usr/lib/ssh/openssh
+    /usr/lib64/ssh
+    /usr/lib64/misc
+    /usr/lib/misc
+    /usr/local/sbin
+    /usr/freeware/bin
+    /usr/freeware/sbin
+    /usr/freeware/libexec
+    /opt/ssh/sbin
+    /opt/ssh/libexec
+    );
+
+
+#***************************************************************************
+# Absolute paths where to look for httptlssrv (gnutls-serv), when not in PATH
+#
+@httptlssrvpath = qw(
+    /usr/sbin
+    /usr/libexec
+    /usr/lib
+    /usr/lib/misc
+    /usr/lib64/misc
+    /usr/local/bin
+    /usr/local/sbin
+    /usr/local/libexec
+    /opt/local/bin
+    /opt/local/sbin
+    /opt/local/libexec
+    /usr/freeware/bin
+    /usr/freeware/sbin
+    /usr/freeware/libexec
+    /opt/gnutls/bin
+    /opt/gnutls/sbin
+    /opt/gnutls/libexec
+    );
+
+
+#***************************************************************************
+# Return file extension for executable files on this operating system
+#
+sub exe_ext {
+    if ($^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'msys' ||
+        $^O eq 'dos' || $^O eq 'os2') {
+        return '.exe';
+    }
+}
+
+
+#***************************************************************************
+# Create or overwrite the given file with lines from an array of strings
+#
+sub dump_array {
+    my ($filename, @arr) = @_;
+    my $error;
+
+    if(!$filename) {
+        $error = 'Error: Missing argument 1 for dump_array()';
+    }
+    elsif(open(TEXTFH, ">$filename")) {
+        foreach my $line (@arr) {
+            $line .= "\n" unless($line =~ /\n$/);
+            print TEXTFH $line;
+        }
+        if(!close(TEXTFH)) {
+            $error = "Error: cannot close file $filename";
+        }
+    }
+    else {
+        $error = "Error: cannot write file $filename";
+    }
+    return $error;
+}
+
+
+#***************************************************************************
+# Display a message
+#
+sub logmsg {
+    my ($line) = @_;
+    chomp $line if($line);
+    $line .= "\n";
+    print "$line";
+}
+
+
+#***************************************************************************
+# Display contents of the given file
+#
+sub display_file {
+    my $filename = $_[0];
+    print "=== Start of file $filename\n";
+    if(open(DISPLAYFH, "<$filename")) {
+        while(my $line = <DISPLAYFH>) {
+            print "$line";
+        }
+        close DISPLAYFH;
+    }
+    print "=== End of file $filename\n";
+}
+
+
+#***************************************************************************
+# Display contents of the ssh daemon config file
+#
+sub display_sshdconfig {
+    display_file($sshdconfig);
+}
+
+
+#***************************************************************************
+# Display contents of the ssh client config file
+#
+sub display_sshconfig {
+    display_file($sshconfig);
+}
+
+
+#***************************************************************************
+# Display contents of the sftp client config file
+#
+sub display_sftpconfig {
+    display_file($sftpconfig);
+}
+
+
+#***************************************************************************
+# Display contents of the ssh daemon log file
+#
+sub display_sshdlog {
+    die "error: \$sshdlog uninitialized" if(not defined $sshdlog);
+    display_file($sshdlog);
+}
+
+
+#***************************************************************************
+# Display contents of the ssh client log file
+#
+sub display_sshlog {
+    die "error: \$sshlog uninitialized" if(not defined $sshlog);
+    display_file($sshlog);
+}
+
+
+#***************************************************************************
+# Display contents of the sftp client log file
+#
+sub display_sftplog {
+    die "error: \$sftplog uninitialized" if(not defined $sftplog);
+    display_file($sftplog);
+}
+
+
+#***************************************************************************
+# Find a file somewhere in the given path
+#
+sub find_file {
+    my $fn = $_[0];
+    shift;
+    my @path = @_;
+    foreach (@path) {
+        my $file = File::Spec->catfile($_, $fn);
+        if(-e $file && ! -d $file) {
+            return $file;
+        }
+    }
+}
+
+
+#***************************************************************************
+# Find an executable file somewhere in the given path
+#
+sub find_exe_file {
+    my $fn = $_[0];
+    shift;
+    my @path = @_;
+    my $xext = exe_ext();
+    foreach (@path) {
+        my $file = File::Spec->catfile($_, $fn);
+        if(-e $file && ! -d $file) {
+            return $file if(-x $file);
+            return $file if(($xext) && (lc($file) =~ /\Q$xext\E$/));
+        }
+    }
+}
+
+
+#***************************************************************************
+# Find a file in environment path or in our sftppath
+#
+sub find_file_spath {
+    my $filename = $_[0];
+    my @spath;
+    push(@spath, File::Spec->path());
+    push(@spath, @sftppath);
+    return find_file($filename, @spath);
+}
+
+
+#***************************************************************************
+# Find an executable file in environment path or in our httptlssrvpath
+#
+sub find_exe_file_hpath {
+    my $filename = $_[0];
+    my @hpath;
+    push(@hpath, File::Spec->path());
+    push(@hpath, @httptlssrvpath);
+    return find_exe_file($filename, @hpath);
+}
+
+
+#***************************************************************************
+# Find ssh daemon and return canonical filename
+#
+sub find_sshd {
+    return find_file_spath($sshdexe);
+}
+
+
+#***************************************************************************
+# Find ssh client and return canonical filename
+#
+sub find_ssh {
+    return find_file_spath($sshexe);
+}
+
+
+#***************************************************************************
+# Find sftp-server plugin and return canonical filename
+#
+sub find_sftpsrv {
+    return find_file_spath($sftpsrvexe);
+}
+
+
+#***************************************************************************
+# Find sftp client and return canonical filename
+#
+sub find_sftp {
+    return find_file_spath($sftpexe);
+}
+
+
+#***************************************************************************
+# Find ssh-keygen and return canonical filename
+#
+sub find_sshkeygen {
+    return find_file_spath($sshkeygenexe);
+}
+
+
+#***************************************************************************
+# Find httptlssrv (gnutls-serv) and return canonical filename
+#
+sub find_httptlssrv {
+    return find_exe_file_hpath($httptlssrvexe);
+}
+
+
+#***************************************************************************
+# Return version info for the given ssh client or server binaries
+#
+sub sshversioninfo {
+    my $sshbin = $_[0]; # canonical filename
+    my $major;
+    my $minor;
+    my $patch;
+    my $sshid;
+    my $versnum;
+    my $versstr;
+    my $error;
+
+    if(!$sshbin) {
+        $error = 'Error: Missing argument 1 for sshversioninfo()';
+    }
+    elsif(! -x $sshbin) {
+        $error = "Error: cannot read or execute $sshbin";
+    }
+    else {
+        my $cmd = ($sshbin =~ /$sshdexe$/) ? "\"$sshbin\" -?" : "\"$sshbin\" -V";
+        $error = "$cmd\n";
+        foreach my $tmpstr (qx($cmd 2>&1)) {
+            if($tmpstr =~ /OpenSSH[_-](\d+)\.(\d+)(\.(\d+))*/i) {
+                $major = $1;
+                $minor = $2;
+                $patch = $4?$4:0;
+                $sshid = 'OpenSSH';
+                $versnum = (100*$major) + (10*$minor) + $patch;
+                $versstr = "$sshid $major.$minor.$patch";
+                $error = undef;
+                last;
+            }
+            if($tmpstr =~ /Sun[_-]SSH[_-](\d+)\.(\d+)(\.(\d+))*/i) {
+                $major = $1;
+                $minor = $2;
+                $patch = $4?$4:0;
+                $sshid = 'SunSSH';
+                $versnum = (100*$major) + (10*$minor) + $patch;
+                $versstr = "$sshid $major.$minor.$patch";
+                $error = undef;
+                last;
+            }
+            $error .= $tmpstr;
+        }
+        chomp $error if($error);
+    }
+    return ($sshid, $versnum, $versstr, $error);
+}
+
+
+#***************************************************************************
+# End of library
+1;
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/sshserver.pl b/ap/lib/libcurl/curl-7.54.1/tests/sshserver.pl
new file mode 100755
index 0000000..9b3d122
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/sshserver.pl
@@ -0,0 +1,1080 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+# Starts sshd for use in the SCP, SFTP and SOCKS curl test harness tests.
+# Also creates the ssh configuration files needed for these tests.
+
+use strict;
+use warnings;
+use Cwd;
+use Cwd 'abs_path';
+
+#***************************************************************************
+# Variables and subs imported from sshhelp module
+#
+use sshhelp qw(
+    $sshdexe
+    $sshexe
+    $sftpsrvexe
+    $sftpexe
+    $sshkeygenexe
+    $sshdconfig
+    $sshconfig
+    $sftpconfig
+    $knownhosts
+    $sshdlog
+    $sshlog
+    $sftplog
+    $sftpcmds
+    $hstprvkeyf
+    $hstpubkeyf
+    $cliprvkeyf
+    $clipubkeyf
+    display_sshdconfig
+    display_sshconfig
+    display_sftpconfig
+    display_sshdlog
+    display_sshlog
+    display_sftplog
+    dump_array
+    find_sshd
+    find_ssh
+    find_sftpsrv
+    find_sftp
+    find_sshkeygen
+    logmsg
+    sshversioninfo
+    );
+
+#***************************************************************************
+# Subs imported from serverhelp module
+#
+use serverhelp qw(
+    server_pidfilename
+    server_logfilename
+    );
+
+use pathhelp;
+
+#***************************************************************************
+
+my $verbose = 0;              # set to 1 for debugging
+my $debugprotocol = 0;        # set to 1 for protocol debugging
+my $port = 8999;              # our default SCP/SFTP server port
+my $socksport = $port + 1;    # our default SOCKS4/5 server port
+my $listenaddr = '127.0.0.1'; # default address on which to listen
+my $ipvnum = 4;               # default IP version of listener address
+my $idnum = 1;                # default ssh daemon instance number
+my $proto = 'ssh';            # protocol the ssh daemon speaks
+my $path = getcwd();          # current working directory
+my $logdir = $path .'/log';   # directory for log files
+my $username = $ENV{USER};    # default user
+my $pidfile;                  # ssh daemon pid file
+my $identity = 'curl_client_key'; # default identity file
+
+my $error;
+my @cfgarr;
+
+
+#***************************************************************************
+# Parse command line options
+#
+while(@ARGV) {
+    if($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    elsif($ARGV[0] eq '--debugprotocol') {
+        $verbose = 1;
+        $debugprotocol = 1;
+    }
+    elsif($ARGV[0] eq '--user') {
+        if($ARGV[1]) {
+            $username = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--id') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^(\d+)$/) {
+                $idnum = $1 if($1 > 0);
+                shift @ARGV;
+            }
+        }
+    }
+    elsif($ARGV[0] eq '--ipv4') {
+        $ipvnum = 4;
+        $listenaddr = '127.0.0.1' if($listenaddr eq '::1');
+    }
+    elsif($ARGV[0] eq '--ipv6') {
+        $ipvnum = 6;
+        $listenaddr = '::1' if($listenaddr eq '127.0.0.1');
+    }
+    elsif($ARGV[0] eq '--addr') {
+        if($ARGV[1]) {
+            my $tmpstr = $ARGV[1];
+            if($tmpstr =~ /^(\d\d?\d?)\.(\d\d?\d?)\.(\d\d?\d?)\.(\d\d?\d?)$/) {
+                $listenaddr = "$1.$2.$3.$4" if($ipvnum == 4);
+                shift @ARGV;
+            }
+            elsif($ipvnum == 6) {
+                $listenaddr = $tmpstr;
+                $listenaddr =~ s/^\[(.*)\]$/$1/;
+                shift @ARGV;
+            }
+        }
+    }
+    elsif($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = "$path/". $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--sshport') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^(\d+)$/) {
+                $port = $1;
+                shift @ARGV;
+            }
+        }
+    }
+    elsif($ARGV[0] eq '--socksport') {
+        if($ARGV[1]) {
+            if($ARGV[1] =~ /^(\d+)$/) {
+                $socksport = $1;
+                shift @ARGV;
+            }
+        }
+    }
+    else {
+        print STDERR "\nWarning: sshserver.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+
+#***************************************************************************
+# Default ssh daemon pid file name
+#
+if(!$pidfile) {
+    $pidfile = "$path/". server_pidfilename($proto, $ipvnum, $idnum);
+}
+
+
+#***************************************************************************
+# ssh, socks and sftp server log file names
+#
+$sshdlog = server_logfilename($logdir, 'ssh', $ipvnum, $idnum);
+$sftplog = server_logfilename($logdir, 'sftp', $ipvnum, $idnum);
+$sshlog  = server_logfilename($logdir, 'socks', $ipvnum, $idnum);
+
+
+#***************************************************************************
+# Logging level for ssh server and client
+#
+my $loglevel = $debugprotocol?'DEBUG3':'DEBUG2';
+
+
+#***************************************************************************
+# Validate username
+#
+if(!$username) {
+    $error = 'Will not run ssh server without a user name';
+}
+elsif($username eq 'root') {
+    $error = 'Will not run ssh server as root to mitigate security risks';
+}
+if($error) {
+    logmsg $error;
+    exit 1;
+}
+
+
+#***************************************************************************
+# Find out ssh daemon canonical file name
+#
+my $sshd = find_sshd();
+if(!$sshd) {
+    logmsg "cannot find $sshdexe";
+    exit 1;
+}
+
+
+#***************************************************************************
+# Find out ssh daemon version info
+#
+my ($sshdid, $sshdvernum, $sshdverstr, $sshderror) = sshversioninfo($sshd);
+if(!$sshdid) {
+    # Not an OpenSSH or SunSSH ssh daemon
+    logmsg $sshderror if($verbose);
+    logmsg 'SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later';
+    exit 1;
+}
+logmsg "ssh server found $sshd is $sshdverstr" if($verbose);
+
+
+#***************************************************************************
+#  ssh daemon command line options we might use and version support
+#
+#  -e:  log stderr           : OpenSSH 2.9.0 and later
+#  -f:  sshd config file     : OpenSSH 1.2.1 and later
+#  -D:  no daemon forking    : OpenSSH 2.5.0 and later
+#  -o:  command-line option  : OpenSSH 3.1.0 and later
+#  -t:  test config file     : OpenSSH 2.9.9 and later
+#  -?:  sshd version info    : OpenSSH 1.2.1 and later
+#
+#  -e:  log stderr           : SunSSH 1.0.0 and later
+#  -f:  sshd config file     : SunSSH 1.0.0 and later
+#  -D:  no daemon forking    : SunSSH 1.0.0 and later
+#  -o:  command-line option  : SunSSH 1.0.0 and later
+#  -t:  test config file     : SunSSH 1.0.0 and later
+#  -?:  sshd version info    : SunSSH 1.0.0 and later
+
+
+#***************************************************************************
+# Verify minimum ssh daemon version
+#
+if((($sshdid =~ /OpenSSH/) && ($sshdvernum < 299)) ||
+   (($sshdid =~ /SunSSH/)  && ($sshdvernum < 100))) {
+    logmsg 'SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later';
+    exit 1;
+}
+
+
+#***************************************************************************
+# Find out sftp server plugin canonical file name
+#
+my $sftpsrv = find_sftpsrv();
+if(!$sftpsrv) {
+    logmsg "cannot find $sftpsrvexe";
+    exit 1;
+}
+logmsg "sftp server plugin found $sftpsrv" if($verbose);
+
+
+#***************************************************************************
+# Find out sftp client canonical file name
+#
+my $sftp = find_sftp();
+if(!$sftp) {
+    logmsg "cannot find $sftpexe";
+    exit 1;
+}
+logmsg "sftp client found $sftp" if($verbose);
+
+
+#***************************************************************************
+# Find out ssh keygen canonical file name
+#
+my $sshkeygen = find_sshkeygen();
+if(!$sshkeygen) {
+    logmsg "cannot find $sshkeygenexe";
+    exit 1;
+}
+logmsg "ssh keygen found $sshkeygen" if($verbose);
+
+
+#***************************************************************************
+# Find out ssh client canonical file name
+#
+my $ssh = find_ssh();
+if(!$ssh) {
+    logmsg "cannot find $sshexe";
+    exit 1;
+}
+
+
+#***************************************************************************
+# Find out ssh client version info
+#
+my ($sshid, $sshvernum, $sshverstr, $ssherror) = sshversioninfo($ssh);
+if(!$sshid) {
+    # Not an OpenSSH or SunSSH ssh client
+    logmsg $ssherror if($verbose);
+    logmsg 'SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later';
+    exit 1;
+}
+logmsg "ssh client found $ssh is $sshverstr" if($verbose);
+
+
+#***************************************************************************
+#  ssh client command line options we might use and version support
+#
+#  -D:  dynamic app port forwarding  : OpenSSH 2.9.9 and later
+#  -F:  ssh config file              : OpenSSH 2.9.9 and later
+#  -N:  no shell/command             : OpenSSH 2.1.0 and later
+#  -p:  connection port              : OpenSSH 1.2.1 and later
+#  -v:  verbose messages             : OpenSSH 1.2.1 and later
+# -vv:  increase verbosity           : OpenSSH 2.3.0 and later
+#  -V:  ssh version info             : OpenSSH 1.2.1 and later
+#
+#  -D:  dynamic app port forwarding  : SunSSH 1.0.0 and later
+#  -F:  ssh config file              : SunSSH 1.0.0 and later
+#  -N:  no shell/command             : SunSSH 1.0.0 and later
+#  -p:  connection port              : SunSSH 1.0.0 and later
+#  -v:  verbose messages             : SunSSH 1.0.0 and later
+# -vv:  increase verbosity           : SunSSH 1.0.0 and later
+#  -V:  ssh version info             : SunSSH 1.0.0 and later
+
+
+#***************************************************************************
+# Verify minimum ssh client version
+#
+if((($sshid =~ /OpenSSH/) && ($sshvernum < 299)) ||
+   (($sshid =~ /SunSSH/)  && ($sshvernum < 100))) {
+    logmsg 'SCP, SFTP and SOCKS tests require OpenSSH 2.9.9 or later';
+    exit 1;
+}
+
+
+#***************************************************************************
+#  ssh keygen command line options we actually use and version support
+#
+#  -C:  identity comment : OpenSSH 1.2.1 and later
+#  -f:  key filename     : OpenSSH 1.2.1 and later
+#  -N:  new passphrase   : OpenSSH 1.2.1 and later
+#  -q:  quiet keygen     : OpenSSH 1.2.1 and later
+#  -t:  key type         : OpenSSH 2.5.0 and later
+#
+#  -C:  identity comment : SunSSH 1.0.0 and later
+#  -f:  key filename     : SunSSH 1.0.0 and later
+#  -N:  new passphrase   : SunSSH 1.0.0 and later
+#  -q:  quiet keygen     : SunSSH 1.0.0 and later
+#  -t:  key type         : SunSSH 1.0.0 and later
+
+
+#***************************************************************************
+# Generate host and client key files for curl's tests
+#
+if((! -e $hstprvkeyf) || (! -s $hstprvkeyf) ||
+   (! -e $hstpubkeyf) || (! -s $hstpubkeyf) ||
+   (! -e $cliprvkeyf) || (! -s $cliprvkeyf) ||
+   (! -e $clipubkeyf) || (! -s $clipubkeyf)) {
+    # Make sure all files are gone so ssh-keygen doesn't complain
+    unlink($hstprvkeyf, $hstpubkeyf, $cliprvkeyf, $clipubkeyf);
+    logmsg 'generating host keys...' if($verbose);
+    if(system "\"$sshkeygen\" -q -t rsa -f $hstprvkeyf -C 'curl test server' -N ''") {
+        logmsg 'Could not generate host key';
+        exit 1;
+    }
+    logmsg 'generating client keys...' if($verbose);
+    if(system "\"$sshkeygen\" -q -t rsa -f $cliprvkeyf -C 'curl test client' -N ''") {
+        logmsg 'Could not generate client key';
+        exit 1;
+    }
+}
+
+
+#***************************************************************************
+# Convert paths for curl's tests running on Windows with Cygwin/Msys OpenSSH
+#
+my $clipubkeyf_config = abs_path("$path/$clipubkeyf");
+my $hstprvkeyf_config = abs_path("$path/$hstprvkeyf");
+my $pidfile_config = $pidfile;
+my $sftpsrv_config = $sftpsrv;
+
+if ($^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'msys') {
+    # Ensure to use MinGW/Cygwin paths
+    $clipubkeyf_config = pathhelp::build_sys_abs_path($clipubkeyf_config);
+    $hstprvkeyf_config = pathhelp::build_sys_abs_path($hstprvkeyf_config);
+    $pidfile_config = pathhelp::build_sys_abs_path($pidfile_config);
+    $sftpsrv_config = "internal-sftp";
+}
+
+#***************************************************************************
+#  ssh daemon configuration file options we might use and version support
+#
+#  AFSTokenPassing                  : OpenSSH 1.2.1 and later [1]
+#  AcceptEnv                        : OpenSSH 3.9.0 and later
+#  AddressFamily                    : OpenSSH 4.0.0 and later
+#  AllowGroups                      : OpenSSH 1.2.1 and later
+#  AllowTcpForwarding               : OpenSSH 2.3.0 and later
+#  AllowUsers                       : OpenSSH 1.2.1 and later
+#  AuthorizedKeysFile               : OpenSSH 2.9.9 and later
+#  AuthorizedKeysFile2              : OpenSSH 2.9.9 and later
+#  Banner                           : OpenSSH 2.5.0 and later
+#  ChallengeResponseAuthentication  : OpenSSH 2.5.0 and later
+#  Ciphers                          : OpenSSH 2.1.0 and later [3]
+#  ClientAliveCountMax              : OpenSSH 2.9.0 and later
+#  ClientAliveInterval              : OpenSSH 2.9.0 and later
+#  Compression                      : OpenSSH 3.3.0 and later
+#  DenyGroups                       : OpenSSH 1.2.1 and later
+#  DenyUsers                        : OpenSSH 1.2.1 and later
+#  ForceCommand                     : OpenSSH 4.4.0 and later [3]
+#  GatewayPorts                     : OpenSSH 2.1.0 and later
+#  GSSAPIAuthentication             : OpenSSH 3.7.0 and later [1]
+#  GSSAPICleanupCredentials         : OpenSSH 3.8.0 and later [1]
+#  GSSAPIKeyExchange                :  SunSSH 1.0.0 and later [1]
+#  GSSAPIStoreDelegatedCredentials  :  SunSSH 1.0.0 and later [1]
+#  GSSCleanupCreds                  :  SunSSH 1.0.0 and later [1]
+#  GSSUseSessionCredCache           :  SunSSH 1.0.0 and later [1]
+#  HostbasedAuthentication          : OpenSSH 2.9.0 and later
+#  HostbasedUsesNameFromPacketOnly  : OpenSSH 2.9.0 and later
+#  HostKey                          : OpenSSH 1.2.1 and later
+#  IgnoreRhosts                     : OpenSSH 1.2.1 and later
+#  IgnoreUserKnownHosts             : OpenSSH 1.2.1 and later
+#  KbdInteractiveAuthentication     : OpenSSH 2.3.0 and later
+#  KeepAlive                        : OpenSSH 1.2.1 and later
+#  KerberosAuthentication           : OpenSSH 1.2.1 and later [1]
+#  KerberosGetAFSToken              : OpenSSH 3.8.0 and later [1]
+#  KerberosOrLocalPasswd            : OpenSSH 1.2.1 and later [1]
+#  KerberosTgtPassing               : OpenSSH 1.2.1 and later [1]
+#  KerberosTicketCleanup            : OpenSSH 1.2.1 and later [1]
+#  KeyRegenerationInterval          : OpenSSH 1.2.1 and later
+#  ListenAddress                    : OpenSSH 1.2.1 and later
+#  LoginGraceTime                   : OpenSSH 1.2.1 and later
+#  LogLevel                         : OpenSSH 1.2.1 and later
+#  LookupClientHostnames            :  SunSSH 1.0.0 and later
+#  MACs                             : OpenSSH 2.5.0 and later [3]
+#  Match                            : OpenSSH 4.4.0 and later [3]
+#  MaxAuthTries                     : OpenSSH 3.9.0 and later
+#  MaxStartups                      : OpenSSH 2.2.0 and later
+#  PAMAuthenticationViaKbdInt       : OpenSSH 2.9.0 and later [2]
+#  PasswordAuthentication           : OpenSSH 1.2.1 and later
+#  PermitEmptyPasswords             : OpenSSH 1.2.1 and later
+#  PermitOpen                       : OpenSSH 4.4.0 and later [3]
+#  PermitRootLogin                  : OpenSSH 1.2.1 and later
+#  PermitTunnel                     : OpenSSH 4.3.0 and later
+#  PermitUserEnvironment            : OpenSSH 3.5.0 and later
+#  PidFile                          : OpenSSH 2.1.0 and later
+#  Port                             : OpenSSH 1.2.1 and later
+#  PrintLastLog                     : OpenSSH 2.9.0 and later
+#  PrintMotd                        : OpenSSH 1.2.1 and later
+#  Protocol                         : OpenSSH 2.1.0 and later
+#  PubkeyAuthentication             : OpenSSH 2.5.0 and later
+#  RhostsAuthentication             : OpenSSH 1.2.1 and later
+#  RhostsRSAAuthentication          : OpenSSH 1.2.1 and later
+#  RSAAuthentication                : OpenSSH 1.2.1 and later
+#  ServerKeyBits                    : OpenSSH 1.2.1 and later
+#  SkeyAuthentication               : OpenSSH 1.2.1 and later [1]
+#  StrictModes                      : OpenSSH 1.2.1 and later
+#  Subsystem                        : OpenSSH 2.2.0 and later
+#  SyslogFacility                   : OpenSSH 1.2.1 and later
+#  TCPKeepAlive                     : OpenSSH 3.8.0 and later
+#  UseDNS                           : OpenSSH 3.7.0 and later
+#  UseLogin                         : OpenSSH 1.2.1 and later
+#  UsePAM                           : OpenSSH 3.7.0 and later [1][2]
+#  UsePrivilegeSeparation           : OpenSSH 3.2.2 and later
+#  VerifyReverseMapping             : OpenSSH 3.1.0 and later
+#  X11DisplayOffset                 : OpenSSH 1.2.1 and later [3]
+#  X11Forwarding                    : OpenSSH 1.2.1 and later
+#  X11UseLocalhost                  : OpenSSH 3.1.0 and later
+#  XAuthLocation                    : OpenSSH 2.1.1 and later [3]
+#
+#  [1] Option only available if activated at compile time
+#  [2] Option specific for portable versions
+#  [3] Option not used in our ssh server config file
+
+
+#***************************************************************************
+# Initialize sshd config with options actually supported in OpenSSH 2.9.9
+#
+logmsg 'generating ssh server config file...' if($verbose);
+@cfgarr = ();
+push @cfgarr, '# This is a generated file.  Do not edit.';
+push @cfgarr, "# $sshdverstr sshd configuration file for curl testing";
+push @cfgarr, '#';
+push @cfgarr, "DenyUsers !$username";
+push @cfgarr, "AllowUsers $username";
+push @cfgarr, 'DenyGroups';
+push @cfgarr, 'AllowGroups';
+push @cfgarr, '#';
+push @cfgarr, "AuthorizedKeysFile $clipubkeyf_config";
+push @cfgarr, "AuthorizedKeysFile2 $clipubkeyf_config";
+push @cfgarr, "HostKey $hstprvkeyf_config";
+push @cfgarr, "PidFile $pidfile_config";
+push @cfgarr, '#';
+push @cfgarr, "Port $port";
+push @cfgarr, "ListenAddress $listenaddr";
+push @cfgarr, 'Protocol 2';
+push @cfgarr, '#';
+push @cfgarr, 'AllowTcpForwarding yes';
+push @cfgarr, 'Banner none';
+push @cfgarr, 'ChallengeResponseAuthentication no';
+push @cfgarr, 'ClientAliveCountMax 3';
+push @cfgarr, 'ClientAliveInterval 0';
+push @cfgarr, 'GatewayPorts no';
+push @cfgarr, 'HostbasedAuthentication no';
+push @cfgarr, 'HostbasedUsesNameFromPacketOnly no';
+push @cfgarr, 'IgnoreRhosts yes';
+push @cfgarr, 'IgnoreUserKnownHosts yes';
+push @cfgarr, 'KeyRegenerationInterval 0';
+push @cfgarr, 'LoginGraceTime 30';
+push @cfgarr, "LogLevel $loglevel";
+push @cfgarr, 'MaxStartups 5';
+push @cfgarr, 'PasswordAuthentication no';
+push @cfgarr, 'PermitEmptyPasswords no';
+push @cfgarr, 'PermitRootLogin no';
+push @cfgarr, 'PrintLastLog no';
+push @cfgarr, 'PrintMotd no';
+push @cfgarr, 'PubkeyAuthentication yes';
+push @cfgarr, 'RhostsRSAAuthentication no';
+push @cfgarr, 'RSAAuthentication no';
+push @cfgarr, 'ServerKeyBits 768';
+push @cfgarr, 'StrictModes no';
+push @cfgarr, "Subsystem sftp \"$sftpsrv_config\"";
+push @cfgarr, 'SyslogFacility AUTH';
+push @cfgarr, 'UseLogin no';
+push @cfgarr, 'X11Forwarding no';
+push @cfgarr, '#';
+
+
+#***************************************************************************
+# Write out initial sshd configuration file for curl's tests
+#
+$error = dump_array($sshdconfig, @cfgarr);
+if($error) {
+    logmsg $error;
+    exit 1;
+}
+
+
+#***************************************************************************
+# Verifies at run time if sshd supports a given configuration file option
+#
+sub sshd_supports_opt {
+    my ($option, $value) = @_;
+    my $err;
+    #
+    if((($sshdid =~ /OpenSSH/) && ($sshdvernum >= 310)) ||
+        ($sshdid =~ /SunSSH/)) {
+        # ssh daemon supports command line options -t -f and -o
+        $err = grep /((Unsupported)|(Bad configuration)|(Deprecated)) option.*$option/,
+                    qx("$sshd" -t -f $sshdconfig -o "$option=$value" 2>&1);
+        return !$err;
+    }
+    if(($sshdid =~ /OpenSSH/) && ($sshdvernum >= 299)) {
+        # ssh daemon supports command line options -t and -f
+        $err = dump_array($sshdconfig, (@cfgarr, "$option $value"));
+        if($err) {
+            logmsg $err;
+            return 0;
+        }
+        $err = grep /((Unsupported)|(Bad configuration)|(Deprecated)) option.*$option/,
+                    qx("$sshd" -t -f $sshdconfig 2>&1);
+        unlink $sshdconfig;
+        return !$err;
+    }
+    return 0;
+}
+
+
+#***************************************************************************
+# Kerberos Authentication support may have not been built into sshd
+#
+if(sshd_supports_opt('KerberosAuthentication','no')) {
+    push @cfgarr, 'KerberosAuthentication no';
+}
+if(sshd_supports_opt('KerberosGetAFSToken','no')) {
+    push @cfgarr, 'KerberosGetAFSToken no';
+}
+if(sshd_supports_opt('KerberosOrLocalPasswd','no')) {
+    push @cfgarr, 'KerberosOrLocalPasswd no';
+}
+if(sshd_supports_opt('KerberosTgtPassing','no')) {
+    push @cfgarr, 'KerberosTgtPassing no';
+}
+if(sshd_supports_opt('KerberosTicketCleanup','yes')) {
+    push @cfgarr, 'KerberosTicketCleanup yes';
+}
+
+
+#***************************************************************************
+# Andrew File System support may have not been built into sshd
+#
+if(sshd_supports_opt('AFSTokenPassing','no')) {
+    push @cfgarr, 'AFSTokenPassing no';
+}
+
+
+#***************************************************************************
+# S/Key authentication support may have not been built into sshd
+#
+if(sshd_supports_opt('SkeyAuthentication','no')) {
+    push @cfgarr, 'SkeyAuthentication no';
+}
+
+
+#***************************************************************************
+# GSSAPI Authentication support may have not been built into sshd
+#
+my $sshd_builtwith_GSSAPI;
+if(sshd_supports_opt('GSSAPIAuthentication','no')) {
+    push @cfgarr, 'GSSAPIAuthentication no';
+    $sshd_builtwith_GSSAPI = 1;
+}
+if(sshd_supports_opt('GSSAPICleanupCredentials','yes')) {
+    push @cfgarr, 'GSSAPICleanupCredentials yes';
+}
+if(sshd_supports_opt('GSSAPIKeyExchange','no')) {
+    push @cfgarr, 'GSSAPIKeyExchange no';
+}
+if(sshd_supports_opt('GSSAPIStoreDelegatedCredentials','no')) {
+    push @cfgarr, 'GSSAPIStoreDelegatedCredentials no';
+}
+if(sshd_supports_opt('GSSCleanupCreds','yes')) {
+    push @cfgarr, 'GSSCleanupCreds yes';
+}
+if(sshd_supports_opt('GSSUseSessionCredCache','no')) {
+    push @cfgarr, 'GSSUseSessionCredCache no';
+}
+push @cfgarr, '#';
+
+
+#***************************************************************************
+# Options that might be supported or not in sshd OpenSSH 2.9.9 and later
+#
+if(sshd_supports_opt('AcceptEnv','')) {
+    push @cfgarr, 'AcceptEnv';
+}
+if(sshd_supports_opt('AddressFamily','any')) {
+    # Address family must be specified before ListenAddress
+    splice @cfgarr, 14, 0, 'AddressFamily any';
+}
+if(sshd_supports_opt('Compression','no')) {
+    push @cfgarr, 'Compression no';
+}
+if(sshd_supports_opt('KbdInteractiveAuthentication','no')) {
+    push @cfgarr, 'KbdInteractiveAuthentication no';
+}
+if(sshd_supports_opt('KeepAlive','no')) {
+    push @cfgarr, 'KeepAlive no';
+}
+if(sshd_supports_opt('LookupClientHostnames','no')) {
+    push @cfgarr, 'LookupClientHostnames no';
+}
+if(sshd_supports_opt('MaxAuthTries','10')) {
+    push @cfgarr, 'MaxAuthTries 10';
+}
+if(sshd_supports_opt('PAMAuthenticationViaKbdInt','no')) {
+    push @cfgarr, 'PAMAuthenticationViaKbdInt no';
+}
+if(sshd_supports_opt('PermitTunnel','no')) {
+    push @cfgarr, 'PermitTunnel no';
+}
+if(sshd_supports_opt('PermitUserEnvironment','no')) {
+    push @cfgarr, 'PermitUserEnvironment no';
+}
+if(sshd_supports_opt('RhostsAuthentication','no')) {
+    push @cfgarr, 'RhostsAuthentication no';
+}
+if(sshd_supports_opt('TCPKeepAlive','no')) {
+    push @cfgarr, 'TCPKeepAlive no';
+}
+if(sshd_supports_opt('UseDNS','no')) {
+    push @cfgarr, 'UseDNS no';
+}
+if(sshd_supports_opt('UsePAM','no')) {
+    push @cfgarr, 'UsePAM no';
+}
+
+if($sshdid =~ /OpenSSH/) {
+    # http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6492415
+    if(sshd_supports_opt('UsePrivilegeSeparation','no')) {
+        push @cfgarr, 'UsePrivilegeSeparation no';
+    }
+}
+
+if(sshd_supports_opt('VerifyReverseMapping','no')) {
+    push @cfgarr, 'VerifyReverseMapping no';
+}
+if(sshd_supports_opt('X11UseLocalhost','yes')) {
+    push @cfgarr, 'X11UseLocalhost yes';
+}
+push @cfgarr, '#';
+
+
+#***************************************************************************
+# Write out resulting sshd configuration file for curl's tests
+#
+$error = dump_array($sshdconfig, @cfgarr);
+if($error) {
+    logmsg $error;
+    exit 1;
+}
+
+
+#***************************************************************************
+# Verify that sshd actually supports our generated configuration file
+#
+if(system "\"$sshd\" -t -f $sshdconfig > $sshdlog 2>&1") {
+    logmsg "sshd configuration file $sshdconfig failed verification";
+    display_sshdlog();
+    display_sshdconfig();
+    exit 1;
+}
+
+
+#***************************************************************************
+# Generate ssh client host key database file for curl's tests
+#
+if((! -e $knownhosts) || (! -s $knownhosts)) {
+    logmsg 'generating ssh client known hosts file...' if($verbose);
+    unlink($knownhosts);
+    if(open(RSAKEYFILE, "<$hstpubkeyf")) {
+        my @rsahostkey = do { local $/ = ' '; <RSAKEYFILE> };
+        if(close(RSAKEYFILE)) {
+            if(open(KNOWNHOSTS, ">$knownhosts")) {
+                print KNOWNHOSTS "$listenaddr ssh-rsa $rsahostkey[1]\n";
+                if(!close(KNOWNHOSTS)) {
+                    $error = "Error: cannot close file $knownhosts";
+                }
+            }
+            else {
+                $error = "Error: cannot write file $knownhosts";
+            }
+        }
+        else {
+            $error = "Error: cannot close file $hstpubkeyf";
+        }
+    }
+    else {
+        $error = "Error: cannot read file $hstpubkeyf";
+    }
+    if($error) {
+        logmsg $error;
+        exit 1;
+    }
+}
+
+
+#***************************************************************************
+# Convert paths for curl's tests running on Windows using Cygwin OpenSSH
+#
+my $identity_config = abs_path("$path/$identity");
+my $knownhosts_config = abs_path("$path/$knownhosts");
+
+if ($^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'msys') {
+    # Ensure to use MinGW/Cygwin paths
+    $identity_config = pathhelp::build_sys_abs_path($identity_config);
+    $knownhosts_config = pathhelp::build_sys_abs_path($knownhosts_config);
+}
+
+
+#***************************************************************************
+#  ssh client configuration file options we might use and version support
+#
+#  AddressFamily                     : OpenSSH 3.7.0 and later
+#  BatchMode                         : OpenSSH 1.2.1 and later
+#  BindAddress                       : OpenSSH 2.9.9 and later
+#  ChallengeResponseAuthentication   : OpenSSH 2.5.0 and later
+#  CheckHostIP                       : OpenSSH 1.2.1 and later
+#  Cipher                            : OpenSSH 1.2.1 and later [3]
+#  Ciphers                           : OpenSSH 2.1.0 and later [3]
+#  ClearAllForwardings               : OpenSSH 2.9.9 and later
+#  Compression                       : OpenSSH 1.2.1 and later
+#  CompressionLevel                  : OpenSSH 1.2.1 and later [3]
+#  ConnectionAttempts                : OpenSSH 1.2.1 and later
+#  ConnectTimeout                    : OpenSSH 3.7.0 and later
+#  ControlMaster                     : OpenSSH 3.9.0 and later
+#  ControlPath                       : OpenSSH 3.9.0 and later
+#  DisableBanner                     :  SunSSH 1.2.0 and later
+#  DynamicForward                    : OpenSSH 2.9.0 and later
+#  EnableSSHKeysign                  : OpenSSH 3.6.0 and later
+#  EscapeChar                        : OpenSSH 1.2.1 and later [3]
+#  ExitOnForwardFailure              : OpenSSH 4.4.0 and later
+#  ForwardAgent                      : OpenSSH 1.2.1 and later
+#  ForwardX11                        : OpenSSH 1.2.1 and later
+#  ForwardX11Trusted                 : OpenSSH 3.8.0 and later
+#  GatewayPorts                      : OpenSSH 1.2.1 and later
+#  GlobalKnownHostsFile              : OpenSSH 1.2.1 and later
+#  GSSAPIAuthentication              : OpenSSH 3.7.0 and later [1]
+#  GSSAPIDelegateCredentials         : OpenSSH 3.7.0 and later [1]
+#  HashKnownHosts                    : OpenSSH 4.0.0 and later
+#  Host                              : OpenSSH 1.2.1 and later
+#  HostbasedAuthentication           : OpenSSH 2.9.0 and later
+#  HostKeyAlgorithms                 : OpenSSH 2.9.0 and later [3]
+#  HostKeyAlias                      : OpenSSH 2.5.0 and later [3]
+#  HostName                          : OpenSSH 1.2.1 and later
+#  IdentitiesOnly                    : OpenSSH 3.9.0 and later
+#  IdentityFile                      : OpenSSH 1.2.1 and later
+#  IgnoreIfUnknown                   :  SunSSH 1.2.0 and later
+#  KeepAlive                         : OpenSSH 1.2.1 and later
+#  KbdInteractiveAuthentication      : OpenSSH 2.3.0 and later
+#  KbdInteractiveDevices             : OpenSSH 2.3.0 and later [3]
+#  LocalCommand                      : OpenSSH 4.3.0 and later [3]
+#  LocalForward                      : OpenSSH 1.2.1 and later [3]
+#  LogLevel                          : OpenSSH 1.2.1 and later
+#  MACs                              : OpenSSH 2.5.0 and later [3]
+#  NoHostAuthenticationForLocalhost  : OpenSSH 3.0.0 and later
+#  NumberOfPasswordPrompts           : OpenSSH 1.2.1 and later
+#  PasswordAuthentication            : OpenSSH 1.2.1 and later
+#  PermitLocalCommand                : OpenSSH 4.3.0 and later
+#  Port                              : OpenSSH 1.2.1 and later
+#  PreferredAuthentications          : OpenSSH 2.5.2 and later
+#  Protocol                          : OpenSSH 2.1.0 and later
+#  ProxyCommand                      : OpenSSH 1.2.1 and later [3]
+#  PubkeyAuthentication              : OpenSSH 2.5.0 and later
+#  RekeyLimit                        : OpenSSH 3.7.0 and later
+#  RemoteForward                     : OpenSSH 1.2.1 and later [3]
+#  RhostsRSAAuthentication           : OpenSSH 1.2.1 and later
+#  RSAAuthentication                 : OpenSSH 1.2.1 and later
+#  SendEnv                           : OpenSSH 3.9.0 and later
+#  ServerAliveCountMax               : OpenSSH 3.8.0 and later
+#  ServerAliveInterval               : OpenSSH 3.8.0 and later
+#  SmartcardDevice                   : OpenSSH 2.9.9 and later [1][3]
+#  StrictHostKeyChecking             : OpenSSH 1.2.1 and later
+#  TCPKeepAlive                      : OpenSSH 3.8.0 and later
+#  Tunnel                            : OpenSSH 4.3.0 and later
+#  TunnelDevice                      : OpenSSH 4.3.0 and later [3]
+#  UsePAM                            : OpenSSH 3.7.0 and later [1][2][3]
+#  UsePrivilegedPort                 : OpenSSH 1.2.1 and later
+#  User                              : OpenSSH 1.2.1 and later
+#  UserKnownHostsFile                : OpenSSH 1.2.1 and later
+#  VerifyHostKeyDNS                  : OpenSSH 3.8.0 and later
+#  XAuthLocation                     : OpenSSH 2.1.1 and later [3]
+#
+#  [1] Option only available if activated at compile time
+#  [2] Option specific for portable versions
+#  [3] Option not used in our ssh client config file
+
+
+#***************************************************************************
+# Initialize ssh config with options actually supported in OpenSSH 2.9.9
+#
+logmsg 'generating ssh client config file...' if($verbose);
+@cfgarr = ();
+push @cfgarr, '# This is a generated file.  Do not edit.';
+push @cfgarr, "# $sshverstr ssh client configuration file for curl testing";
+push @cfgarr, '#';
+push @cfgarr, 'Host *';
+push @cfgarr, '#';
+push @cfgarr, "Port $port";
+push @cfgarr, "HostName $listenaddr";
+push @cfgarr, "User $username";
+push @cfgarr, 'Protocol 2';
+push @cfgarr, '#';
+push @cfgarr, "BindAddress $listenaddr";
+push @cfgarr, "DynamicForward $socksport";
+push @cfgarr, '#';
+push @cfgarr, "IdentityFile $identity_config";
+push @cfgarr, "UserKnownHostsFile $knownhosts_config";
+push @cfgarr, '#';
+push @cfgarr, 'BatchMode yes';
+push @cfgarr, 'ChallengeResponseAuthentication no';
+push @cfgarr, 'CheckHostIP no';
+push @cfgarr, 'ClearAllForwardings no';
+push @cfgarr, 'Compression no';
+push @cfgarr, 'ConnectionAttempts 3';
+push @cfgarr, 'ForwardAgent no';
+push @cfgarr, 'ForwardX11 no';
+push @cfgarr, 'GatewayPorts no';
+push @cfgarr, 'GlobalKnownHostsFile /dev/null';
+push @cfgarr, 'HostbasedAuthentication no';
+push @cfgarr, 'KbdInteractiveAuthentication no';
+push @cfgarr, "LogLevel $loglevel";
+push @cfgarr, 'NumberOfPasswordPrompts 0';
+push @cfgarr, 'PasswordAuthentication no';
+push @cfgarr, 'PreferredAuthentications publickey';
+push @cfgarr, 'PubkeyAuthentication yes';
+push @cfgarr, 'RhostsRSAAuthentication no';
+push @cfgarr, 'RSAAuthentication no';
+
+# Disabled StrictHostKeyChecking since it makes the tests fail on my
+# OpenSSH_6.0p1 on Debian Linux / Daniel
+push @cfgarr, 'StrictHostKeyChecking no';
+push @cfgarr, 'UsePrivilegedPort no';
+push @cfgarr, '#';
+
+
+#***************************************************************************
+# Options supported in ssh client newer than OpenSSH 2.9.9
+#
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 370)) {
+    push @cfgarr, 'AddressFamily any';
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum >= 370)) ||
+   (($sshid =~ /SunSSH/) && ($sshvernum >= 120))) {
+    push @cfgarr, 'ConnectTimeout 30';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 390)) {
+    push @cfgarr, 'ControlMaster no';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 420)) {
+    push @cfgarr, 'ControlPath none';
+}
+
+if(($sshid =~ /SunSSH/) && ($sshvernum >= 120)) {
+    push @cfgarr, 'DisableBanner yes';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 360)) {
+    push @cfgarr, 'EnableSSHKeysign no';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 440)) {
+    push @cfgarr, 'ExitOnForwardFailure yes';
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum >= 380)) ||
+   (($sshid =~ /SunSSH/) && ($sshvernum >= 120))) {
+    push @cfgarr, 'ForwardX11Trusted no';
+}
+
+if(($sshd_builtwith_GSSAPI) && ($sshdid eq $sshid) &&
+   ($sshdvernum == $sshvernum)) {
+    push @cfgarr, 'GSSAPIAuthentication no';
+    push @cfgarr, 'GSSAPIDelegateCredentials no';
+    if($sshid =~ /SunSSH/) {
+        push @cfgarr, 'GSSAPIKeyExchange no';
+    }
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum >= 400)) ||
+   (($sshid =~ /SunSSH/) && ($sshvernum >= 120))) {
+    push @cfgarr, 'HashKnownHosts no';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 390)) {
+    push @cfgarr, 'IdentitiesOnly yes';
+}
+
+if(($sshid =~ /SunSSH/) && ($sshvernum >= 120)) {
+    push @cfgarr, 'IgnoreIfUnknown no';
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum < 380)) ||
+    ($sshid =~ /SunSSH/)) {
+    push @cfgarr, 'KeepAlive no';
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum >= 300)) ||
+    ($sshid =~ /SunSSH/)) {
+    push @cfgarr, 'NoHostAuthenticationForLocalhost no';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 430)) {
+    push @cfgarr, 'PermitLocalCommand no';
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum >= 370)) ||
+   (($sshid =~ /SunSSH/) && ($sshvernum >= 120))) {
+    push @cfgarr, 'RekeyLimit 1G';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 390)) {
+    push @cfgarr, 'SendEnv';
+}
+
+if((($sshid =~ /OpenSSH/) && ($sshvernum >= 380)) ||
+   (($sshid =~ /SunSSH/) && ($sshvernum >= 120))) {
+    push @cfgarr, 'ServerAliveCountMax 3';
+    push @cfgarr, 'ServerAliveInterval 0';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 380)) {
+    push @cfgarr, 'TCPKeepAlive no';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 430)) {
+    push @cfgarr, 'Tunnel no';
+}
+
+if(($sshid =~ /OpenSSH/) && ($sshvernum >= 380)) {
+    push @cfgarr, 'VerifyHostKeyDNS no';
+}
+
+push @cfgarr, '#';
+
+
+#***************************************************************************
+# Write out resulting ssh client configuration file for curl's tests
+#
+$error = dump_array($sshconfig, @cfgarr);
+if($error) {
+    logmsg $error;
+    exit 1;
+}
+
+
+#***************************************************************************
+# Initialize client sftp config with options actually supported.
+#
+logmsg 'generating sftp client config file...' if($verbose);
+splice @cfgarr, 1, 1, "# $sshverstr sftp client configuration file for curl testing";
+#
+for(my $i = scalar(@cfgarr) - 1; $i > 0; $i--) {
+    if($cfgarr[$i] =~ /^DynamicForward/) {
+        splice @cfgarr, $i, 1;
+        next;
+    }
+    if($cfgarr[$i] =~ /^ClearAllForwardings/) {
+        splice @cfgarr, $i, 1, "ClearAllForwardings yes";
+        next;
+    }
+}
+
+
+#***************************************************************************
+# Write out resulting sftp client configuration file for curl's tests
+#
+$error = dump_array($sftpconfig, @cfgarr);
+if($error) {
+    logmsg $error;
+    exit 1;
+}
+@cfgarr = ();
+
+
+#***************************************************************************
+# Generate client sftp commands batch file for sftp server verification
+#
+logmsg 'generating sftp client commands file...' if($verbose);
+push @cfgarr, 'pwd';
+push @cfgarr, 'quit';
+$error = dump_array($sftpcmds, @cfgarr);
+if($error) {
+    logmsg $error;
+    exit 1;
+}
+@cfgarr = ();
+
+
+#***************************************************************************
+# Start the ssh server daemon without forking it
+#
+logmsg "SCP/SFTP server listening on port $port" if($verbose);
+my $rc = system "\"$sshd\" -e -D -f $sshdconfig > $sshdlog 2>&1";
+if($rc == -1) {
+    logmsg "\"$sshd\" failed with: $!";
+}
+elsif($rc & 127) {
+    logmsg sprintf("\"$sshd\" died with signal %d, and %s coredump",
+                   ($rc & 127), ($rc & 128)?'a':'no');
+}
+elsif($verbose && ($rc >> 8)) {
+    logmsg sprintf("\"$sshd\" exited with %d", $rc >> 8);
+}
+
+
+#***************************************************************************
+# Clean up once the server has stopped
+#
+unlink($hstprvkeyf, $hstpubkeyf, $cliprvkeyf, $clipubkeyf, $knownhosts);
+unlink($sshdconfig, $sshconfig, $sftpconfig);
+
+
+exit 0;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/stunnel.pem b/ap/lib/libcurl/curl-7.54.1/tests/stunnel.pem
new file mode 100644
index 0000000..d9b9679
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/stunnel.pem
@@ -0,0 +1,143 @@
+#
+#  This file contains a private key and a certificate used for stunnel.
+#  The certificate contains a number of extensions essentially being
+#  used in the 509 test. The certificate has been generated using
+#  openssl with the parameters listed below up to the line
+#  contain [something], after that you find the result.
+# 
+#
+extensions = x509v3
+[ x509v3 ]
+subjectAltName   = DNS:localhost
+nsCertType       = server
+nsComment       = "CURL stunnel server test certificate"
+keyUsage	= digitalSignature,keyEncipherment
+extendedKeyUsage = serverAuth
+basicConstraints = CA:false
+subjectKeyIdentifier = hash
+subjectInfoAccess = AD_DVCS;URI:"https://localhost:8433/509"
+authorityInfoAccess = AD_DVCS;URI:"https://localhost:8433/509"
+[ req ]
+default_bits                    = 1234
+distinguished_name              = req_DN
+default_md			= sha1
+string_mask			= pkix
+[ req_DN ]
+countryName                     = "1. Country Name             (2 letter code)"
+countryName_value             = SE
+stateOrProvinceName             = "2. State or Province Name   (full name)    "
+stateOrProvinceName_value     = Solna
+localityName                    = "3. Locality Name            (eg, city)     "
+localityName_value            = Mooo
+0.organizationName              = "4. Organization Name        (eg, company)  "
+0.organizationName_value      = Haxx
+organizationalUnitName          = "5. Organizational Unit Name (eg, section)  "
+organizationalUnitName_value  = Coolx
+commonName                      = "6. Common Name              (eg, FQDN)     "
+commonName_value              = "storbror"
+1.commonName                      = "6. Common Name              (eg, FQDN)     "
+1.commonName_value              = "localhost"
+[something]
+-----BEGIN RSA PRIVATE KEY-----
+MIIC1AIBAAKBmwNZN+oG6vJ8DAze+FvOKSS49X4xGMxALhKRLhQQb7qvM+7BcMgR
+v+RKxkX7SNgcxKPLcIHf7QQ6DBIlLXuAuVHQtWW9b06q64kBElkEwh6gP5Ia9JrR
+ysGbu2U6NRP+xBU33dVwZjF07ocN9Pp392W4VxEc+g3+FkRzUEaahDGOabmjgKuq
+DdlKdZLzgJj7+9sEKpb7+FdG56rZAgMBAAECgZsCkK1Z1XTUz5x3m7PMuHEiVaKS
+yk/B4ISq6pbO/gxpieARzhR038wNug6L+8VA8UDebXHBvGYYr9Mhb2OZUfIlr+nW
+h7kmHZ+T88M3eH/hQc3jtnvnu1dGmMlIXjTLQOrKgrAn6fYaw2HAGPdGKjpatAy/
+3vRjguv/22pNJLRQmMHdozJdc8mEYY+AhqrQxXCWQT/1peZzlq/IAQJOAfhE2YWf
+qB9iYNmuhxJ1PolPW4I63atXuoavqadbaRoaLm/pqLVB1QjMeyak8O/0TmO6CXk6
+878ps85fLFgARRjSYX+rYwoYNzqxK3cBAk4Bsy4oofReVT8xB+7rFZFMV4McyL7e
+sOABFqecLuNIGT6CdeEU1z7TUfq8sKM1MQ25e0J1PMmoWTqDwzhnxK+ckeFsZ8Te
+dgqVW+Oyy9kCTgHqyc/P/uEZkp1ioDu0WkpAR+1vZa2jeyH+vm9nhE9Z6Uty/r6F
+k4otIx9lMDmTwXqeE03vINJlJshqvjShfbnCe9gK8xrUk1cFl7QPAQJOATD3LQRq
+At2MniioFtiTbUN6n2ZS1C5xnHGq3fnBzxnZw4UmSfuZjG/L3gWPKkyJCK3HYe9K
+ho6ZQhNB6P5d7sQQjG6f+SIRwp+VjwvpAk4AnM4do54FETeLHhY4zy47dM/zdy3u
+iDjiFwoMTR+PfF03evsWe5pW3EaXolGi3FRAZ/idFA+L3Gi2y4xR44z71HkbF32L
+WKaLdOuBQvI=
+-----END RSA PRIVATE KEY-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number:
+            a4:17:70:09:88:8c:48:cd
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer: C=SE, ST=Solna, L=Mooo, O=Haxx, OU=Coolx, CN=storbror, CN=localhost
+        Validity
+            Not Before: Feb 22 15:38:48 2014 GMT
+            Not After : Feb 20 15:38:48 2024 GMT
+        Subject: C=SE, ST=Solna, L=Mooo, O=Haxx, OU=Coolx, CN=storbror, CN=localhost
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (1234 bit)
+                Modulus:
+                    03:59:37:ea:06:ea:f2:7c:0c:0c:de:f8:5b:ce:29:
+                    24:b8:f5:7e:31:18:cc:40:2e:12:91:2e:14:10:6f:
+                    ba:af:33:ee:c1:70:c8:11:bf:e4:4a:c6:45:fb:48:
+                    d8:1c:c4:a3:cb:70:81:df:ed:04:3a:0c:12:25:2d:
+                    7b:80:b9:51:d0:b5:65:bd:6f:4e:aa:eb:89:01:12:
+                    59:04:c2:1e:a0:3f:92:1a:f4:9a:d1:ca:c1:9b:bb:
+                    65:3a:35:13:fe:c4:15:37:dd:d5:70:66:31:74:ee:
+                    87:0d:f4:fa:77:f7:65:b8:57:11:1c:fa:0d:fe:16:
+                    44:73:50:46:9a:84:31:8e:69:b9:a3:80:ab:aa:0d:
+                    d9:4a:75:92:f3:80:98:fb:fb:db:04:2a:96:fb:f8:
+                    57:46:e7:aa:d9
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Alternative Name: 
+                DNS:localhost
+            Netscape Cert Type: 
+                SSL Server
+            Netscape Comment: 
+                CURL stunnel server test certificate
+            X509v3 Key Usage: 
+                Digital Signature, Key Encipherment
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+            X509v3 Basic Constraints: 
+                CA:FALSE
+            X509v3 Subject Key Identifier: 
+                35:77:35:3B:9B:98:3C:B6:C7:9A:E7:A8:04:B9:7C:70:AD:FA:37:A9
+            Subject Information Access: 
+                ad dvcs - URI:https://localhost:8433/509
+
+            Authority Information Access: 
+                ad dvcs - URI:https://localhost:8433/509
+
+    Signature Algorithm: sha1WithRSAEncryption
+         00:45:db:09:5b:08:5b:1a:ff:71:50:6c:12:ad:8e:78:32:1d:
+         7d:e7:e4:d3:3e:5f:ca:20:84:aa:ff:9a:c2:b6:a9:48:93:1f:
+         73:27:d1:68:05:76:36:f9:c1:53:90:ad:8a:c0:b3:12:c8:11:
+         5c:2c:65:01:ac:31:d1:8e:60:6e:c6:f5:ba:9d:69:e8:f1:ac:
+         4a:de:52:94:cd:06:24:45:72:64:89:0f:57:8b:26:2b:16:cf:
+         0b:27:c4:e8:73:c7:d3:e5:42:38:95:57:b5:bb:83:b4:92:d4:
+         e0:cd:fb:c8:f5:d2:da:1d:11:fe:3c:18:20:8b:bd:22:31:1c:
+         5a:82:d4:f5:71:8d:8a:e3:13:82:c5:2d:f3:9f:d0:b7:b8:4b:
+         d2:46:9d:8e:1a:d7:99:6e:c1:b9:a0
+-----BEGIN CERTIFICATE-----
+MIIDtzCCAwWgAwIBAgIJAKQXcAmIjEjNMA0GCSqGSIb3DQEBBQUAMHIxCzAJBgNV
+BAYTAlNFMQ4wDAYDVQQIEwVTb2xuYTENMAsGA1UEBxMETW9vbzENMAsGA1UEChME
+SGF4eDEOMAwGA1UECxMFQ29vbHgxETAPBgNVBAMTCHN0b3Jicm9yMRIwEAYDVQQD
+Ewlsb2NhbGhvc3QwHhcNMTQwMjIyMTUzODQ4WhcNMjQwMjIwMTUzODQ4WjByMQsw
+CQYDVQQGEwJTRTEOMAwGA1UECBMFU29sbmExDTALBgNVBAcTBE1vb28xDTALBgNV
+BAoTBEhheHgxDjAMBgNVBAsTBUNvb2x4MREwDwYDVQQDEwhzdG9yYnJvcjESMBAG
+A1UEAxMJbG9jYWxob3N0MIG5MA0GCSqGSIb3DQEBAQUAA4GnADCBowKBmwNZN+oG
+6vJ8DAze+FvOKSS49X4xGMxALhKRLhQQb7qvM+7BcMgRv+RKxkX7SNgcxKPLcIHf
+7QQ6DBIlLXuAuVHQtWW9b06q64kBElkEwh6gP5Ia9JrRysGbu2U6NRP+xBU33dVw
+ZjF07ocN9Pp392W4VxEc+g3+FkRzUEaahDGOabmjgKuqDdlKdZLzgJj7+9sEKpb7
++FdG56rZAgMBAAGjggEeMIIBGjAUBgNVHREEDTALgglsb2NhbGhvc3QwEQYJYIZI
+AYb4QgEBBAQDAgZAMDMGCWCGSAGG+EIBDQQmFiRDVVJMIHN0dW5uZWwgc2VydmVy
+IHRlc3QgY2VydGlmaWNhdGUwCwYDVR0PBAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUF
+BwMBMAkGA1UdEwQCMAAwHQYDVR0OBBYEFDV3NTubmDy2x5rnqAS5fHCt+jepMDYG
+CCsGAQUFBwELBCowKDAmBggrBgEFBQcwBIYaaHR0cHM6Ly9sb2NhbGhvc3Q6ODQz
+My81MDkwNgYIKwYBBQUHAQEEKjAoMCYGCCsGAQUFBzAEhhpodHRwczovL2xvY2Fs
+aG9zdDo4NDMzLzUwOTANBgkqhkiG9w0BAQUFAAOBnAAARdsJWwhbGv9xUGwSrY54
+Mh195+TTPl/KIISq/5rCtqlIkx9zJ9FoBXY2+cFTkK2KwLMSyBFcLGUBrDHRjmBu
+xvW6nWno8axK3lKUzQYkRXJkiQ9XiyYrFs8LJ8Toc8fT5UI4lVe1u4O0ktTgzfvI
+9dLaHRH+PBggi70iMRxagtT1cY2K4xOCxS3zn9C3uEvSRp2OGteZbsG5oA==
+-----END CERTIFICATE-----
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAMq/KFGh2oy16WzkFs1U71Uz7dIEKvSYfc+zo439pYyVzcD8MkcC15Zb
+ayK3jPBYf07eKzc2TvI3/ZSducmECNP8gk2gAndP1P1rmpheN+owZJS7kQVfQmHl
+UmT87U99NPaMHXMNOsFj/3mbAaANndKEnd8PM2r5fg16C4+2e5KzAgEC
+-----END DH PARAMETERS-----
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/symbol-scan.pl b/ap/lib/libcurl/curl-7.54.1/tests/symbol-scan.pl
new file mode 100644
index 0000000..5d570d8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/symbol-scan.pl
@@ -0,0 +1,176 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2010-2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+#
+# This script grew out of help from Przemyslaw Iskra and Balint Szilakszi
+# a late evening in the #curl IRC channel on freenode.
+#
+
+use strict;
+use warnings;
+use vars qw($Cpreprocessor);
+
+#
+# configurehelp perl module is generated by configure script
+#
+my $rc = eval {
+    require configurehelp;
+    configurehelp->import(qw(
+        $Cpreprocessor
+    ));
+    1;
+};
+# Set default values if configure has not generated a configurehelp.pm file.
+# This is the case with cmake.
+if (!$rc) {
+    $Cpreprocessor = 'cpp';
+}
+
+# we may get the dir root pointed out
+my $root=$ARGV[0] || ".";
+
+# need an include directory when building out-of-tree
+my $i = ($ARGV[1]) ? "-I$ARGV[1] " : '';
+
+my $h = "$root/include/curl/curl.h";
+my $mh = "$root/include/curl/multi.h";
+
+my $verbose=0;
+my $summary=0;
+my $misses=0;
+
+my @syms;
+my %doc;
+my %rem;
+
+open H_IN, "-|", "$Cpreprocessor $i$h" || die "Cannot preprocess curl.h";
+while ( <H_IN> ) {
+    if ( /enum\s+(\S+\s+)?{/ .. /}/ ) {
+        s/^\s+//;
+        next unless /^CURL/;
+        chomp;
+        s/[,\s].*//;
+        push @syms, $_;
+    }
+}
+close H_IN || die "Error preprocessing curl.h";
+
+sub scanheader {
+    my ($f)=@_;
+    open H, "<$f";
+    while(<H>) {
+        if (/^#define (CURL[A-Za-z0-9_]*)/) {
+            push @syms, $1;
+        }
+    }
+    close H;
+}
+
+scanheader($h);
+scanheader($mh);
+
+open S, "<$root/docs/libcurl/symbols-in-versions";
+while(<S>) {
+    if(/(^CURL[^ \n]*) *(.*)/) {
+        my ($sym, $rest)=($1, $2);
+        if($doc{$sym}) {
+            print "Detected duplicate symbol: $sym\n";
+            $misses++;
+            next;
+        }
+        $doc{$sym}=$sym;
+        my @a=split(/ +/, $rest);
+        if($a[2]) {
+            # this symbol is documented to have been present the last time
+            # in this release
+            $rem{$sym}=$a[2];
+        }
+    }
+}
+close S;
+
+my $ignored=0;
+for my $e (sort @syms) {
+    # OBSOLETE - names that are just placeholders for a position where we
+    # previously had a name, that is now removed. The OBSOLETE names should
+    # never be used for anything.
+    #
+    # CURL_EXTERN - is a define used for libcurl functions that are external,
+    # public. No app or other code should ever use it.
+    #
+    # *_LAST and *_LASTENTRY are just prefix for the placeholders used for the
+    # last entry in many enum series.
+    #
+
+    if($e =~ /(OBSOLETE|^CURL_EXTERN|_LAST\z|_LASTENTRY\z)/) {
+        $ignored++;
+        next;
+    }
+    if($doc{$e}) {
+        if($verbose) {
+            print $e."\n";
+        }
+        $doc{$e}="used";
+        next;
+    }
+    else {
+        print $e."\n";
+        $misses++;
+    }
+}
+
+#
+# now scan through all symbols that were present in the symbols-in-versions
+# but not in the headers
+#
+# If the symbols were marked 'removed' in symbols-in-versions we don't output
+# anything about it since that is perfectly fine.
+#
+
+my $anyremoved;
+
+for my $e (sort keys %doc) {
+    if(($doc{$e} ne "used") && !$rem{$e}) {
+
+        if(!$anyremoved++) {
+            print "Missing symbols mentioned in symbols-in-versions\n";
+            print "Add them to a header, or mark them as removed.\n";
+        }
+
+        print "$e\n";
+        $misses++;
+    }
+}
+
+if($summary) {
+    print "Summary:\n";
+    printf "%d symbols in headers (out of which %d are ignored)\n", scalar(@syms),
+    $ignored;
+    printf "%d symbols in headers are interesting\n",
+    scalar(@syms)- $ignored;
+    printf "%d symbols are listed in symbols-in-versions\n (out of which %d are listed as removed)\n", scalar(keys %doc), scalar(keys %rem);
+    printf "%d symbols in symbols-in-versions should match the ones in headers\n", scalar(keys %doc) - scalar(keys %rem);
+}
+
+if($misses) {
+    exit 2; # there are stuff to attend to!
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/testcurl.1 b/ap/lib/libcurl/curl-7.54.1/tests/testcurl.1
new file mode 100644
index 0000000..b763eca
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/testcurl.1
@@ -0,0 +1,125 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.haxx.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.\"
+.TH testcurl.pl 1 "October 22, 2016" "Curl 7.54.1" "testcurl"
+
+.SH NAME
+testcurl.pl \- (automatically) test curl
+.SH SYNOPSIS
+.B testcurl.pl [options] [dir] > output
+.SH DESCRIPTION
+\fItestcurl.pl\fP is the master script to use for automatic testing of curl
+off git or daily snapshots. It is written for the purpose of being run from a
+crontab job or similar at a regular interval. The output is suitable to be
+mailed to curl-autocompile@haxx.se to be dealt with automatically (make sure
+the subject includes the word "autobuild" as the mail gets silently discarded
+otherwise).  The most current build status (with a reasonable backlog) will be
+published on the curl site, at https://curl.haxx.se/dev/builds.html
+
+\fIoptions\fP may be omitted. See \fI--setup\fP for what happens then.
+
+\fIdir\fP is a curl source dir, possibly a daily snapshot one. Using this will
+make testcurl.pl skip the 'buildconf' stage and thus it removes the dependency
+on automake, autoconf, libtool, GNU m4 and possibly a few other things.
+
+testcurl.pl will run 'buildconf' (or similar), run configure, build curl and
+libcurl in a separate build directory and then run 'make test' to test the
+fresh build.
+.SH OPTIONS
+.IP "--configure=[options]"
+Configure options passed to configure.
+.IP "--crosscompile"
+This is a cross-compile. Makes \fItestcurl.pl\fP skip a few things.
+.IP "--desc=[desc]"
+Description of your test system. Displayed on the build summary page on the
+weba site.
+.IP "--email=[email]"
+Set email address to report as. Displayed in the build logs on the site.
+.IP "--mktarball=[command]"
+Generic command to run after completed test.
+.IP "--name=[name]"
+Set name to report as. Displayed in the build summary on the site.
+.IP "--nobuildconf"
+Don't run buildconf. Useful when many builds use the same source tree, as then
+only one need to do this. Also, if multiple processes run tests simultaneously
+on the same source tree (like several hosts on a NFS mounted dir),
+simultaneous buildconf invokes may cause problems. (Added in 7.14.1)
+.IP "--nogitpull"
+Don't update from git even though it is a git tree. Useful to still be able to
+test even though your network is down, or similar.
+.IP "--runtestopts=[options]"
+Options that is passed to the runtests.pl script. Useful for disabling valgrind
+by force, and similar.
+.IP "--setup=[file name]"
+File name to read setup from (deprecated). The old style of providing info.
+If info is missing when testcurl.pl is started, it will prompt you and then
+store the info in a 'setup' file, which it will look for on each invoke. Use
+\fI--name\fP, \fI--email\fP, \fI--configure\fP and \fI--desc\fP instead.
+.IP "--target=[your os]"
+Specify your target environment. Recognized strings include 'vc', 'mingw32',
+\&'borland' and 'netware'.
+.SH "INITIAL SETUP"
+First you make a checkout from git (or you write a script that downloads daily
+snapshots automatically, find inspiration in
+https://curl.haxx.se/dev/autocurl.txt ):
+
+.nf
+  $ mkdir daily-curl
+  $ cd daily-curl
+  $ git clone https://github.com/curl/curl.git
+.fi
+
+With the curl sources checked out, or downloaded, you can start testing right
+away. If you want to use \fItestcurl.pl\fP without command line arguments and
+to have it store and remember the config in its 'setup' file, then start it
+manually now and fill in the answers to the questions it prompts you for:
+
+.nf
+  $ ./curl/tests/testcurl.pl
+.fi
+
+Now you are ready to go. If you let the script run, it will perform a full
+cycle and spit out lots of output. Mail us that output as described above.
+.SH "CRONTAB EXAMPLE"
+The crontab could include something like this:
+
+.nf
+\# autobuild curl:
+0 4 * * * cd daily-curl && ./testit.sh
+.fi
+
+Where testit.sh is a shell script that could look similar to this:
+
+.nf
+mail="mail -s autobuild curl-autocompile@haxx.se"
+name="--name=whoami"
+email="--email=iamme@nowhere"
+desc='"--desc=supermachine Turbo 2000"'
+testprog="perl ./curl/tests/testcurl.pl $name $email $desc"
+opts1="--configure=--enable-debug"
+opts2="--configure=--enable-ipv6"
+
+# run first test
+$testprog $opts1 | $mail
+
+# run second test
+$testprog $opts2 | $mail
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/testcurl.pl b/ap/lib/libcurl/curl-7.54.1/tests/testcurl.pl
new file mode 100755
index 0000000..dc35a02
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/testcurl.pl
@@ -0,0 +1,829 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+###########################
+#  What is This Script?
+###########################
+
+# testcurl.pl is the master script to use for automatic testing of curl
+# directly off its source repository.
+# This is written for the purpose of being run from a crontab job or similar
+# at a regular interval. The output is suitable to be mailed to
+# curl-autocompile@haxx.se to be dealt with automatically (make sure the
+# subject includes the word "autobuild" as the mail gets silently discarded
+# otherwise).  The most current build status (with a resonable backlog) will
+# be published on the curl site, at https://curl.haxx.se/auto/
+
+# USAGE:
+# testcurl.pl [options] [curl-daily-name] > output
+
+# Options:
+#
+# --configure=[options]    Configure options
+# --crosscompile           This is a crosscompile
+# --desc=[desc]            Description of your test system
+# --email=[email]          Set email address to report as
+# --extvercmd=[command]    Command to use for displaying version with cross compiles.
+# --mktarball=[command]    Command to run after completed test
+# --name=[name]            Set name to report as
+# --notes=[notes]          More human-readable information about this configuration
+# --nocvsup                Don't pull from git even though it is a git tree
+# --nogitpull              Don't pull from git even though it is a git tree
+# --nobuildconf            Don't run buildconf
+# --noconfigure            Don't run configure
+# --runtestopts=[options]  Options to pass to runtests.pl
+# --setup=[file name]      File name to read setup from (deprecated)
+# --target=[your os]       Specify your target environment.
+#
+# if [curl-daily-name] is omitted, a 'curl' git directory is assumed.
+#
+
+use strict;
+
+use Cwd;
+use File::Spec;
+
+# Turn on warnings (equivalent to -w, which can't be used with /usr/bin/env)
+#BEGIN { $^W = 1; }
+
+use vars qw($version $fixed $infixed $CURLDIR $git $pwd $build $buildlog
+            $buildlogname $configurebuild $targetos $confheader $binext
+            $libext);
+
+use vars qw($name $email $desc $confopts $runtestopts $setupfile $mktarball
+            $extvercmd $nogitpull $nobuildconf $crosscompile
+            $timestamp $notes);
+
+# version of this script
+$version='2014-11-25';
+$fixed=0;
+
+# Determine if we're running from git or a canned copy of curl,
+# or if we got a specific target option or setup file option.
+$CURLDIR="curl";
+if (-f ".git/config") {
+  $CURLDIR = "./";
+}
+
+$git=1;
+$setupfile = 'setup';
+$configurebuild = 1;
+while ($ARGV[0]) {
+  if ($ARGV[0] =~ /--target=/) {
+    $targetos = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--setup=/) {
+    $setupfile = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--extvercmd=/) {
+    $extvercmd = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--mktarball=/) {
+    $mktarball = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--name=/) {
+    $name = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--email=/) {
+    $email = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--desc=/) {
+    $desc = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--notes=/) {
+    $notes = (split(/=/, shift @ARGV, 2))[1];
+  }
+  elsif ($ARGV[0] =~ /--configure=(.*)/) {
+    $confopts = $1;
+    shift @ARGV;
+  }
+  elsif (($ARGV[0] eq "--nocvsup") || ($ARGV[0] eq "--nogitpull")) {
+    $nogitpull=1;
+    shift @ARGV;
+  }
+  elsif ($ARGV[0] =~ /--nobuildconf/) {
+    $nobuildconf=1;
+    shift @ARGV;
+  }
+  elsif ($ARGV[0] =~ /--noconfigure/) {
+    $configurebuild=0;
+    shift @ARGV;
+  }
+  elsif ($ARGV[0] =~ /--crosscompile/) {
+    $crosscompile=1;
+    shift @ARGV;
+  }
+  elsif ($ARGV[0] =~ /--runtestopts=/) {
+    $runtestopts = (split(/=/, shift @ARGV, 2))[1];
+  }
+  else {
+    $CURLDIR=shift @ARGV;
+    $git=0; # a given dir, assume not using git
+  }
+}
+
+# Do the platform-specific stuff here
+$confheader = 'curl_config.h';
+$binext = '';
+$libext = '.la'; # .la since both libcurl and libcares are made with libtool
+if ($^O eq 'MSWin32' || $targetos) {
+  if (!$targetos) {
+    # If no target defined on Win32 lets assume vc
+    $targetos = 'vc';
+  }
+  if ($targetos =~ /vc/ || $targetos =~ /borland/ || $targetos =~ /watcom/) {
+    $binext = '.exe';
+    $libext = '.lib';
+  }
+  elsif ($targetos =~ /mingw/) {
+    $binext = '.exe';
+    if ($^O eq 'MSWin32') {
+      $libext = '.a';
+    }
+  }
+  elsif ($targetos =~ /netware/) {
+    $configurebuild = 0;
+    $binext = '.nlm';
+    if ($^O eq 'MSWin32') {
+      $libext = '.lib';
+    }
+    else {
+      $libext = '.a';
+    }
+  }
+}
+
+if (($^O eq 'MSWin32' || $^O eq 'msys') &&
+    ($targetos =~ /vc/ || $targetos =~ /mingw32/ ||
+     $targetos =~ /borland/ || $targetos =~ /watcom/)) {
+
+  # Set these things only when building ON Windows and for Win32 platform.
+  # FOR Windows since we might be cross-compiling on another system. Non-
+  # Windows builds still default to configure-style builds with curl_config.h.
+
+  $configurebuild = 0;
+  $confheader = 'config-win32.h';
+}
+
+$ENV{LC_ALL}="C" if (($ENV{LC_ALL}) && ($ENV{LC_ALL} !~ /^C$/));
+$ENV{LC_CTYPE}="C" if (($ENV{LC_CTYPE}) && ($ENV{LC_CTYPE} !~ /^C$/));
+$ENV{LANG}="C";
+
+sub rmtree($) {
+    my $target = $_[0];
+    if ($^O eq 'MSWin32') {
+      foreach (glob($target)) {
+        s:/:\\:g;
+        system("rd /s /q $_");
+      }
+    } else {
+      system("rm -rf $target");
+    }
+}
+
+sub grepfile($$) {
+    my ($target, $fn) = @_;
+    open(F, $fn) or die;
+    while (<F>) {
+      if (/$target/) {
+        close(F);
+        return 1;
+      }
+    }
+    close(F);
+    return 0;
+}
+
+sub logit($) {
+    my $text=$_[0];
+    if ($text) {
+      print "testcurl: $text\n";
+    }
+}
+
+sub logit_spaced($) {
+    my $text=$_[0];
+    if ($text) {
+      print "\ntestcurl: $text\n\n";
+    }
+}
+
+sub mydie($){
+    my $text=$_[0];
+    logit "$text";
+    chdir $pwd; # cd back to the original root dir
+
+    if ($pwd && $build) {
+      # we have a build directory name, remove the dir
+      logit "removing the $build dir";
+      rmtree "$pwd/$build";
+    }
+    if (-r $buildlog) {
+      # we have a build log output file left, remove it
+      logit "removing the $buildlogname file";
+      unlink "$buildlog";
+    }
+    logit "ENDING HERE"; # last line logged!
+    exit 1;
+}
+
+sub get_host_triplet {
+  my $triplet;
+  my $configfile = "$pwd/$build/lib/curl_config.h";
+
+  if(-f $configfile && -s $configfile && open(LIBCONFIGH, "<$configfile")) {
+    while(<LIBCONFIGH>) {
+      if($_ =~ /^\#define\s+OS\s+"*([^"][^"]*)"*\s*/) {
+        $triplet = $1;
+        last;
+      }
+    }
+    close(LIBCONFIGH);
+  }
+  return $triplet;
+}
+
+if($name && $email && $desc) {
+  # having these fields set are enough to continue, skip reading the setup
+  # file
+  $infixed=4;
+  $fixed=4;
+}
+elsif (open(F, "$setupfile")) {
+  while (<F>) {
+    if (/(\w+)=(.*)/) {
+      eval "\$$1=$2;";
+    }
+  }
+  close(F);
+  $infixed=$fixed;
+}
+else {
+  $infixed=0;    # so that "additional args to configure" works properly first time...
+}
+
+if (!$name) {
+  print "please enter your name\n";
+  $name = <>;
+  chomp $name;
+  $fixed=1;
+}
+
+if (!$email) {
+  print "please enter your contact email address\n";
+  $email = <>;
+  chomp $email;
+  $fixed=2;
+}
+
+if (!$desc) {
+  print "please enter a one line system description\n";
+  $desc = <>;
+  chomp $desc;
+  $fixed=3;
+}
+
+if (!$confopts) {
+  if ($infixed < 4) {
+    print "please enter your additional arguments to configure\n";
+    print "examples: --with-ssl --enable-debug --enable-ipv6 --with-krb4\n";
+    $confopts = <>;
+    chomp $confopts;
+  }
+}
+
+
+if ($fixed < 4) {
+    $fixed=4;
+    open(F, ">$setupfile") or die;
+    print F "name='$name'\n";
+    print F "email='$email'\n";
+    print F "desc='$desc'\n";
+    print F "confopts='$confopts'\n";
+    print F "notes='$notes'\n";
+    print F "fixed='$fixed'\n";
+    close(F);
+}
+
+# Enable picky compiler warnings unless explicitly disabled
+if (($confopts !~ /--enable-debug/) &&
+    ($confopts !~ /--enable-warnings/) &&
+    ($confopts !~ /--disable-warnings/)) {
+  $confopts .= " --enable-warnings";
+}
+
+my $str1066os = 'o' x 1066;
+
+# Set timestamp to the UTC this script is running. Its value might
+# be changed later in the script to the value present in curlver.h
+$timestamp = scalar(gmtime)." UTC";
+
+logit "STARTING HERE"; # first line logged, for scripts to trigger on
+logit 'TRANSFER CONTROL ==== 1120 CHAR LINE' . $str1066os . 'LINE_END';
+logit "NAME = $name";
+logit "EMAIL = $email";
+logit "DESC = $desc";
+logit "NOTES = $notes";
+logit "CONFOPTS = $confopts";
+logit "RUNTESTOPTS = ".$runtestopts;
+logit "CPPFLAGS = ".$ENV{CPPFLAGS};
+logit "CFLAGS = ".$ENV{CFLAGS};
+logit "LDFLAGS = ".$ENV{LDFLAGS};
+logit "LIBS = ".$ENV{LIBS};
+logit "CC = ".$ENV{CC};
+logit "TMPDIR = ".$ENV{TMPDIR};
+logit "MAKEFLAGS = ".$ENV{MAKEFLAGS};
+logit "ACLOCAL_FLAGS = ".$ENV{ACLOCAL_FLAGS};
+logit "PKG_CONFIG_PATH = ".$ENV{PKG_CONFIG_PATH};
+logit "DYLD_LIBRARY_PATH = ".$ENV{DYLD_LIBRARY_PATH};
+logit "LD_LIBRARY_PATH = ".$ENV{LD_LIBRARY_PATH};
+logit "LIBRARY_PATH = ".$ENV{LIBRARY_PATH};
+logit "SHLIB_PATH = ".$ENV{SHLIB_PATH};
+logit "LIBPATH = ".$ENV{LIBPATH};
+logit "target = ".$targetos;
+logit "version = $version"; # script version
+logit "date = $timestamp";  # When the test build starts
+
+$str1066os = undef;
+
+# Make $pwd to become the path without newline. We'll use that in order to cut
+# off that path from all possible logs and error messages etc.
+$pwd = getcwd();
+
+my $have_embedded_ares = 0;
+
+if (-d $CURLDIR) {
+  if ($git && -d "$CURLDIR/.git") {
+    logit "$CURLDIR is verified to be a fine git source dir";
+    # remove the generated sources to force them to be re-generated each
+    # time we run this test
+    unlink "$CURLDIR/src/tool_hugehelp.c";
+    # find out if curl source dir has an in-tree c-ares repo
+    $have_embedded_ares = 1 if (-f "$CURLDIR/ares/GIT-INFO");
+  } elsif (!$git && -f "$CURLDIR/tests/testcurl.pl") {
+    logit "$CURLDIR is verified to be a fine daily source dir";
+    # find out if curl source dir has an in-tree c-ares extracted tarball
+    $have_embedded_ares = 1 if (-f "$CURLDIR/ares/ares_build.h");
+  } else {
+    mydie "$CURLDIR is not a daily source dir or checked out from git!"
+  }
+}
+
+# make the path absolute so we can use it everywhere
+$CURLDIR = File::Spec->rel2abs("$CURLDIR");
+
+$build="build-$$";
+$buildlogname="buildlog-$$";
+$buildlog="$pwd/$buildlogname";
+
+# remove any previous left-overs
+rmtree "build-*";
+rmtree "buildlog-*";
+
+# this is to remove old build logs that ended up in the wrong dir
+foreach (glob("$CURLDIR/buildlog-*")) { unlink $_; }
+
+# create a dir to build in
+mkdir $build, 0777;
+
+if (-d $build) {
+  logit "build dir $build was created fine";
+} else {
+  mydie "failed to create dir $build";
+}
+
+# get in the curl source tree root
+chdir $CURLDIR;
+
+# Do the git thing, or not...
+if ($git) {
+  my $gitstat = 0;
+  my @commits;
+
+  # update quietly to the latest git
+  if($nogitpull) {
+    logit "skipping git pull (--nogitpull)";
+  } else {
+    logit "run git pull in curl";
+    system("git pull 2>&1");
+    $gitstat += $?;
+    logit "failed to update from curl git ($?), continue anyway" if ($?);
+
+    # Set timestamp to the UTC the git update took place.
+    $timestamp = scalar(gmtime)." UTC" if (!$gitstat);
+  }
+
+  # get the last 5 commits for show (even if no pull was made)
+  @commits=`git log --pretty=oneline --abbrev-commit -5`;
+  logit "The most recent curl git commits:";
+  for (@commits) {
+    chomp ($_);
+    logit "  $_";
+  }
+
+  if (-d "ares/.git") {
+    chdir "ares";
+
+    if($nogitpull) {
+      logit "skipping git pull (--nogitpull) in ares";
+    } else {
+      logit "run git pull in ares";
+      system("git pull 2>&1");
+      $gitstat += $?;
+      logit "failed to update from ares git ($?), continue anyway" if ($?);
+
+      # Set timestamp to the UTC the git update took place.
+      $timestamp = scalar(gmtime)." UTC" if (!$gitstat);
+    }
+
+    # get the last 5 commits for show (even if no pull was made)
+    @commits=`git log --pretty=oneline --abbrev-commit -5`;
+    logit "The most recent ares git commits:";
+    for (@commits) {
+      chomp ($_);
+      logit "  $_";
+    }
+
+    chdir "$CURLDIR";
+  }
+
+  if($nobuildconf) {
+    logit "told to not run buildconf";
+  }
+  elsif ($configurebuild) {
+    # remove possible left-overs from the past
+    unlink "configure";
+    unlink "autom4te.cache";
+
+    # generate the build files
+    logit "invoke buildconf";
+    open(F, "./buildconf 2>&1 |") or die;
+    open(LOG, ">$buildlog") or die;
+    while (<F>) {
+      my $ll = $_;
+      # ignore messages pertaining to third party m4 files we don't care
+      next if ($ll =~ /aclocal\/gtk\.m4/);
+      next if ($ll =~ /aclocal\/gtkextra\.m4/);
+      print $ll;
+      print LOG $ll;
+    }
+    close(F);
+    close(LOG);
+
+    if (grepfile("^buildconf: OK", $buildlog)) {
+      logit "buildconf was successful";
+    }
+    else {
+      mydie "buildconf was NOT successful";
+    }
+  }
+  else {
+    logit "buildconf was successful (dummy message)";
+  }
+}
+
+# Set timestamp to the one in curlver.h if this isn't a git test build.
+if ((-f "include/curl/curlver.h") &&
+    (open(F, "<include/curl/curlver.h"))) {
+  while (<F>) {
+    chomp;
+    if ($_ =~ /^\#define\s+LIBCURL_TIMESTAMP\s+\"(.+)\".*$/) {
+      my $stampstring = $1;
+      if ($stampstring !~ /DEV/) {
+          $stampstring =~ s/\s+UTC//;
+          $timestamp = $stampstring." UTC";
+      }
+      last;
+    }
+  }
+  close(F);
+}
+
+# Show timestamp we are using for this test build.
+logit "timestamp = $timestamp";
+
+if ($configurebuild) {
+  if (-f "configure") {
+    logit "configure created (at least it exists)";
+  } else {
+    mydie "no configure created/found";
+  }
+} else {
+  logit "configure created (dummy message)"; # dummy message to feign success
+}
+
+sub findinpath {
+  my $c;
+  my $e;
+  my $x = ($^O eq 'MSWin32') ? '.exe' : '';
+  my $s = ($^O eq 'MSWin32') ? ';' : ':';
+  my $p=$ENV{'PATH'};
+  my @pa = split($s, $p);
+  for $c (@_) {
+    for $e (@pa) {
+      if( -x "$e/$c$x") {
+        return $c;
+      }
+    }
+  }
+}
+
+my $make = findinpath("gmake", "make", "nmake");
+if(!$make) {
+    mydie "Couldn't find make in the PATH";
+}
+# force to 'nmake' for VC builds
+$make = "nmake" if ($targetos =~ /vc/);
+# force to 'wmake' for Watcom builds
+$make = "wmake" if ($targetos =~ /watcom/);
+logit "going with $make as make";
+
+# change to build dir
+chdir "$pwd/$build";
+
+if ($configurebuild) {
+  # run configure script
+  print `$CURLDIR/configure $confopts 2>&1`;
+
+  if (-f "lib/Makefile") {
+    logit "configure seems to have finished fine";
+  } else {
+    mydie "configure didn't work";
+  }
+} else {
+  logit "copying files to build dir ...";
+  if (($^O eq 'MSWin32') && ($targetos !~ /netware/)) {
+    system("xcopy /s /q \"$CURLDIR\" .");
+    system("buildconf.bat");
+  }
+  elsif ($targetos =~ /netware/) {
+    system("cp -afr $CURLDIR/* .");
+    system("cp -af $CURLDIR/Makefile.dist Makefile");
+    system("$make -i -C lib -f Makefile.netware prebuild");
+    system("$make -i -C src -f Makefile.netware prebuild");
+    if (-d "$CURLDIR/ares") {
+      system("$make -i -C ares -f Makefile.netware prebuild");
+    }
+  }
+  elsif ($^O eq 'linux') {
+    system("cp -afr $CURLDIR/* .");
+    system("cp -af $CURLDIR/Makefile.dist Makefile");
+    system("cp -af $CURLDIR/include/curl/curlbuild.h.dist ./include/curl/curlbuild.h");
+    system("$make -i -C lib -f Makefile.$targetos prebuild");
+    system("$make -i -C src -f Makefile.$targetos prebuild");
+    if (-d "$CURLDIR/ares") {
+      system("cp -af $CURLDIR/ares/ares_build.h.dist ./ares/ares_build.h");
+      system("$make -i -C ares -f Makefile.$targetos prebuild");
+    }
+  }
+}
+
+if(-f "./libcurl.pc") {
+  logit_spaced "display libcurl.pc";
+  if(open(F, "<./libcurl.pc")) {
+    while(<F>) {
+      my $ll = $_;
+      print $ll if(($ll !~ /^ *#/) && ($ll !~ /^ *$/));
+    }
+    close(F);
+  }
+}
+
+if(-f "./include/curl/curlbuild.h") {
+  logit_spaced "display include/curl/curlbuild.h";
+  if(open(F, "<./include/curl/curlbuild.h")) {
+    while(<F>) {
+      my $ll = $_;
+      print $ll if(($ll =~ /^ *# *define *CURL_/) && ($ll !~ /__CURL_CURLBUILD_H/));
+    }
+    close(F);
+  }
+}
+else {
+  mydie "no curlbuild.h created/found";
+}
+
+logit_spaced "display lib/$confheader";
+open(F, "lib/$confheader") or die "lib/$confheader: $!";
+while (<F>) {
+  print if /^ *#/;
+}
+close(F);
+
+if (($have_embedded_ares) &&
+    (grepfile("^#define USE_ARES", "lib/$confheader"))) {
+  print "\n";
+  logit "setup to build ares";
+
+  if(-f "./ares/libcares.pc") {
+    logit_spaced  "display ares/libcares.pc";
+    if(open(F, "<./ares/libcares.pc")) {
+      while(<F>) {
+        my $ll = $_;
+        print $ll if(($ll !~ /^ *#/) && ($ll !~ /^ *$/));
+      }
+      close(F);
+    }
+  }
+
+  if(-f "./ares/ares_build.h") {
+    logit_spaced "display ares/ares_build.h";
+    if(open(F, "<./ares/ares_build.h")) {
+      while(<F>) {
+        my $ll = $_;
+        print $ll if(($ll =~ /^ *# *define *CARES_/) && ($ll !~ /__CARES_BUILD_H/));
+      }
+      close(F);
+    }
+  }
+  else {
+    mydie "no ares_build.h created/found";
+  }
+
+  $confheader =~ s/curl/ares/;
+  logit_spaced "display ares/$confheader";
+  if(open(F, "ares/$confheader")) {
+      while (<F>) {
+          print if /^ *#/;
+      }
+      close(F);
+  }
+
+  print "\n";
+  logit "build ares";
+  chdir "ares";
+
+  if ($targetos && !$configurebuild) {
+      logit "$make -f Makefile.$targetos";
+      open(F, "$make -f Makefile.$targetos 2>&1 |") or die;
+  }
+  else {
+      logit "$make";
+      open(F, "$make 2>&1 |") or die;
+  }
+  while (<F>) {
+    s/$pwd//g;
+    print;
+  }
+  close(F);
+
+  if (-f "libcares$libext") {
+    logit "ares is now built successfully (libcares$libext)";
+  } else {
+    mydie "ares build failed (libcares$libext)";
+  }
+
+  # cd back to the curl build dir
+  chdir "$pwd/$build";
+}
+
+my $mkcmd = "$make -i" . ($targetos && !$configurebuild ? " $targetos" : "");
+logit "$mkcmd";
+open(F, "$mkcmd 2>&1 |") or die;
+while (<F>) {
+  s/$pwd//g;
+  print;
+}
+close(F);
+
+if (-f "lib/libcurl$libext") {
+  logit "libcurl was created fine (libcurl$libext)";
+}
+else {
+  mydie "libcurl was not created (libcurl$libext)";
+}
+
+if (-f "src/curl$binext") {
+  logit "curl was created fine (curl$binext)";
+}
+else {
+  mydie "curl was not created (curl$binext)";
+}
+
+if (!$crosscompile || (($extvercmd ne '') && (-x $extvercmd))) {
+  logit "display curl${binext} --version output";
+  my $cmd = ($extvercmd ne '' ? $extvercmd.' ' : '')."./src/curl${binext} --version|";
+  open(F, $cmd);
+  while(<F>) {
+    # strip CR from output on non-win32 platforms (wine on Linux)
+    s/\r// if ($^O ne 'MSWin32');
+    print;
+  }
+  close(F);
+}
+
+if ($configurebuild && !$crosscompile) {
+  my $host_triplet = get_host_triplet();
+  # build example programs for selected build targets
+  if(($host_triplet =~ /([^-]+)-([^-]+)-irix(.*)/) ||
+     ($host_triplet =~ /([^-]+)-([^-]+)-aix(.*)/) ||
+     ($host_triplet =~ /([^-]+)-([^-]+)-osf(.*)/) ||
+     ($host_triplet =~ /([^-]+)-([^-]+)-solaris2(.*)/)) {
+    chdir "$pwd/$build/docs/examples";
+    logit_spaced "build examples";
+    open(F, "$make -i 2>&1 |") or die;
+    open(LOG, ">$buildlog") or die;
+    while (<F>) {
+      s/$pwd//g;
+      print;
+      print LOG;
+    }
+    close(F);
+    close(LOG);
+    chdir "$pwd/$build";
+  }
+  # build and run full test suite
+  my $o;
+  if($runtestopts) {
+      $o = "TEST_F=\"$runtestopts\" ";
+  }
+  logit "$make -k ${o}test-full";
+  open(F, "$make -k ${o}test-full 2>&1 |") or die;
+  open(LOG, ">$buildlog") or die;
+  while (<F>) {
+    s/$pwd//g;
+    print;
+    print LOG;
+  }
+  close(F);
+  close(LOG);
+
+  if (grepfile("^TEST", $buildlog)) {
+    logit "tests were run";
+  } else {
+    mydie "test suite failure";
+  }
+
+  if (grepfile("^TESTFAIL:", $buildlog)) {
+    logit "the tests were not successful";
+  } else {
+    logit "the tests were successful!";
+  }
+}
+else {
+  if($crosscompile) {
+    my $host_triplet = get_host_triplet();
+    # build example programs for selected cross-compiles
+    if(($host_triplet =~ /([^-]+)-([^-]+)-mingw(.*)/) ||
+       ($host_triplet =~ /([^-]+)-([^-]+)-android(.*)/)) {
+      chdir "$pwd/$build/docs/examples";
+      logit_spaced "build examples";
+      open(F, "$make -i 2>&1 |") or die;
+      open(LOG, ">$buildlog") or die;
+      while (<F>) {
+        s/$pwd//g;
+        print;
+        print LOG;
+      }
+      close(F);
+      close(LOG);
+      chdir "$pwd/$build";
+    }
+    # build test harness programs for selected cross-compiles
+    if($host_triplet =~ /([^-]+)-([^-]+)-mingw(.*)/) {
+      chdir "$pwd/$build/tests";
+      logit_spaced "build test harness";
+      open(F, "$make -i 2>&1 |") or die;
+      open(LOG, ">$buildlog") or die;
+      while (<F>) {
+        s/$pwd//g;
+        print;
+        print LOG;
+      }
+      close(F);
+      close(LOG);
+      chdir "$pwd/$build";
+    }
+    logit_spaced "cross-compiling, can't run tests";
+  }
+  # dummy message to feign success
+  print "TESTDONE: 1 tests out of 0 (dummy message)\n";
+}
+
+# create a tarball if we got that option.
+if (($mktarball ne '') && (-x $mktarball)) {
+  system($mktarball);
+}
+
+# mydie to cleanup
+mydie "ending nicely";
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/tftpserver.pl b/ap/lib/libcurl/curl-7.54.1/tests/tftpserver.pl
new file mode 100755
index 0000000..8c84111
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/tftpserver.pl
@@ -0,0 +1,110 @@
+#!/usr/bin/env perl
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+#***************************************************************************
+
+BEGIN {
+    push(@INC, $ENV{'srcdir'}) if(defined $ENV{'srcdir'});
+    push(@INC, ".");
+}
+
+use strict;
+use warnings;
+
+use serverhelp qw(
+    server_pidfilename
+    server_logfilename
+    );
+
+my $verbose = 0;     # set to 1 for debugging
+my $port = 8997;     # just a default
+my $ipvnum = 4;      # default IP version of tftp server
+my $idnum = 1;       # default tftp server instance number
+my $proto = 'tftp';  # protocol the tftp server speaks
+my $pidfile;         # tftp server pid file
+my $logfile;         # tftp server log file
+my $srcdir;
+my $fork;
+
+my $flags  = "";
+my $path   = '.';
+my $logdir = $path .'/log';
+
+while(@ARGV) {
+    if($ARGV[0] eq '--pidfile') {
+        if($ARGV[1]) {
+            $pidfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--logfile') {
+        if($ARGV[1]) {
+            $logfile = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--srcdir') {
+        if($ARGV[1]) {
+            $srcdir = $ARGV[1];
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--ipv4') {
+        $ipvnum = 4;
+    }
+    elsif($ARGV[0] eq '--ipv6') {
+        $ipvnum = 6;
+    }
+    elsif($ARGV[0] eq '--port') {
+        if($ARGV[1] =~ /^(\d+)$/) {
+            $port = $1;
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--id') {
+        if($ARGV[1] =~ /^(\d+)$/) {
+            $idnum = $1 if($1 > 0);
+            shift @ARGV;
+        }
+    }
+    elsif($ARGV[0] eq '--verbose') {
+        $verbose = 1;
+    }
+    else {
+        print STDERR "\nWarning: tftpserver.pl unknown parameter: $ARGV[0]\n";
+    }
+    shift @ARGV;
+}
+
+if(!$srcdir) {
+    $srcdir = $ENV{'srcdir'} || '.';
+}
+if(!$pidfile) {
+    $pidfile = "$path/". server_pidfilename($proto, $ipvnum, $idnum);
+}
+if(!$logfile) {
+    $logfile = server_logfilename($logdir, $proto, $ipvnum, $idnum);
+}
+
+$flags .= "--pidfile \"$pidfile\" --logfile \"$logfile\" ";
+$flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
+
+exec("server/tftpd $flags");
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/CMakeLists.txt b/ap/lib/libcurl/curl-7.54.1/tests/unit/CMakeLists.txt
new file mode 100644
index 0000000..14589d6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/CMakeLists.txt
@@ -0,0 +1,54 @@
+
+set(UT_SRC
+  unit1300.c
+  unit1301.c
+  unit1302.c
+  unit1303.c
+  unit1304.c
+  unit1305.c
+  unit1307.c
+  unit1308.c
+  unit1309.c
+  unit1330.c
+# Broken link on Linux
+#  unit1394.c
+  unit1395.c
+  unit1396.c
+  unit1397.c
+  unit1398.c
+  unit1600.c
+  unit1601.c
+  unit1603.c
+# Broken link on Linux
+#  unit1604.c
+  )
+
+set(UT_COMMON_FILES ../libtest/first.c ../libtest/test.h curlcheck.h)
+include_directories(
+  ${CURL_SOURCE_DIR}/lib          # To be able to reach "curl_setup_once.h"
+  ${CURL_SOURCE_DIR}/tests/libtest
+  ${CURL_SOURCE_DIR}/src
+  ${CURL_BINARY_DIR}/lib          # To be able to reach "curl_config.h"
+  ${CURL_BINARY_DIR}/include      # To be able to reach "curl/curlbuild.h"
+)
+
+foreach(_testfile ${UT_SRC})
+
+  get_filename_component(_testname ${_testfile} NAME_WE)
+  add_executable(${_testname} ${_testfile} ${UT_COMMON_FILES})
+  target_link_libraries(${_testname} libcurl ${CURL_LIBS})
+  set_target_properties(${_testname}
+      PROPERTIES COMPILE_DEFINITIONS "UNITTESTS")
+
+  if(HIDES_CURL_PRIVATE_SYMBOLS)
+    set_target_properties(${_testname}
+	  PROPERTIES
+		EXCLUDE_FROM_ALL TRUE
+		EXCLUDE_FROM_DEFAULT_BUILD TRUE
+	)
+  else()
+    add_test(NAME ${_testname}
+             COMMAND ${_testname} "http://www.google.com"
+    )
+  endif()
+endforeach()
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.am b/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.am
new file mode 100644
index 0000000..6dc2a17
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.am
@@ -0,0 +1,78 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign nostdinc
+
+# Specify our include paths here, and do it relative to $(top_srcdir) and
+# $(top_builddir), to ensure that these paths which belong to the library
+# being currently built and tested are searched before the library which
+# might possibly already be installed in the system.
+#
+# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
+# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h
+# $(top_srcdir)/include is for libcurl's external include files
+# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
+# $(top_srcdir)/ares is for in-tree c-ares's external include files
+
+if USE_EMBEDDED_ARES
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_srcdir)/lib            \
+              -I$(top_srcdir)/src            \
+              -I$(top_srcdir)/tests/libtest  \
+              -I$(top_builddir)/ares         \
+              -I$(top_srcdir)/ares
+else
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_srcdir)/lib            \
+              -I$(top_srcdir)/src            \
+              -I$(top_srcdir)/tests/libtest
+endif
+
+EXTRA_DIST = Makefile.inc CMakeLists.txt
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+
+LDADD = $(top_builddir)/src/libcurltool.la   \
+        $(top_builddir)/lib/libcurlu.la      \
+        @LDFLAGS@ @LIBCURL_LIBS@
+
+AM_CPPFLAGS += -DCURL_STATICLIB -DUNITTESTS
+
+# Makefile.inc provides neat definitions
+include Makefile.inc
+
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
+
+if BUILD_UNITTESTS
+noinst_PROGRAMS = $(UNITPROGS)
+else
+noinst_PROGRAMS =
+endif
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.in b/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.in
new file mode 100644
index 0000000..54e32c2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.in
@@ -0,0 +1,1755 @@
+# Makefile.in generated by automake 1.15 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# these files are used in every single unit test program
+
+VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@BUILD_UNITTESTS_TRUE@noinst_PROGRAMS = $(am__EXEEXT_1)
+subdir = tests/unit
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_code_coverage.m4 \
+	$(top_srcdir)/m4/curl-compilers.m4 \
+	$(top_srcdir)/m4/curl-confopts.m4 \
+	$(top_srcdir)/m4/curl-functions.m4 \
+	$(top_srcdir)/m4/curl-openssl.m4 \
+	$(top_srcdir)/m4/curl-override.m4 \
+	$(top_srcdir)/m4/curl-reentrant.m4 $(top_srcdir)/m4/libtool.m4 \
+	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+	$(top_srcdir)/m4/xc-am-iface.m4 \
+	$(top_srcdir)/m4/xc-cc-check.m4 \
+	$(top_srcdir)/m4/xc-lt-iface.m4 \
+	$(top_srcdir)/m4/xc-translit.m4 \
+	$(top_srcdir)/m4/xc-val-flgs.m4 \
+	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
+	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
+	$(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+am__EXEEXT_1 = unit1300$(EXEEXT) unit1301$(EXEEXT) unit1302$(EXEEXT) \
+	unit1303$(EXEEXT) unit1304$(EXEEXT) unit1305$(EXEEXT) \
+	unit1307$(EXEEXT) unit1308$(EXEEXT) unit1309$(EXEEXT) \
+	unit1330$(EXEEXT) unit1394$(EXEEXT) unit1395$(EXEEXT) \
+	unit1396$(EXEEXT) unit1397$(EXEEXT) unit1398$(EXEEXT) \
+	unit1600$(EXEEXT) unit1601$(EXEEXT) unit1602$(EXEEXT) \
+	unit1603$(EXEEXT) unit1604$(EXEEXT) unit1605$(EXEEXT) \
+	unit1606$(EXEEXT)
+PROGRAMS = $(noinst_PROGRAMS)
+am__dirstamp = $(am__leading_dot)dirstamp
+am__objects_1 = ../libtest/unit1300-first.$(OBJEXT)
+am_unit1300_OBJECTS = unit1300-unit1300.$(OBJEXT) $(am__objects_1)
+unit1300_OBJECTS = $(am_unit1300_OBJECTS)
+unit1300_LDADD = $(LDADD)
+unit1300_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 = 
+am__objects_2 = ../libtest/unit1301-first.$(OBJEXT)
+am_unit1301_OBJECTS = unit1301-unit1301.$(OBJEXT) $(am__objects_2)
+unit1301_OBJECTS = $(am_unit1301_OBJECTS)
+unit1301_LDADD = $(LDADD)
+unit1301_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_3 = ../libtest/unit1302-first.$(OBJEXT)
+am_unit1302_OBJECTS = unit1302-unit1302.$(OBJEXT) $(am__objects_3)
+unit1302_OBJECTS = $(am_unit1302_OBJECTS)
+unit1302_LDADD = $(LDADD)
+unit1302_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_4 = ../libtest/unit1303-first.$(OBJEXT)
+am_unit1303_OBJECTS = unit1303-unit1303.$(OBJEXT) $(am__objects_4)
+unit1303_OBJECTS = $(am_unit1303_OBJECTS)
+unit1303_LDADD = $(LDADD)
+unit1303_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_5 = ../libtest/unit1304-first.$(OBJEXT)
+am_unit1304_OBJECTS = unit1304-unit1304.$(OBJEXT) $(am__objects_5)
+unit1304_OBJECTS = $(am_unit1304_OBJECTS)
+unit1304_LDADD = $(LDADD)
+unit1304_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_6 = ../libtest/unit1305-first.$(OBJEXT)
+am_unit1305_OBJECTS = unit1305-unit1305.$(OBJEXT) $(am__objects_6)
+unit1305_OBJECTS = $(am_unit1305_OBJECTS)
+unit1305_LDADD = $(LDADD)
+unit1305_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_7 = ../libtest/unit1307-first.$(OBJEXT)
+am_unit1307_OBJECTS = unit1307-unit1307.$(OBJEXT) $(am__objects_7)
+unit1307_OBJECTS = $(am_unit1307_OBJECTS)
+unit1307_LDADD = $(LDADD)
+unit1307_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_8 = ../libtest/unit1308-first.$(OBJEXT)
+am_unit1308_OBJECTS = unit1308-unit1308.$(OBJEXT) $(am__objects_8)
+unit1308_OBJECTS = $(am_unit1308_OBJECTS)
+unit1308_LDADD = $(LDADD)
+unit1308_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_9 = ../libtest/unit1309-first.$(OBJEXT)
+am_unit1309_OBJECTS = unit1309-unit1309.$(OBJEXT) $(am__objects_9)
+unit1309_OBJECTS = $(am_unit1309_OBJECTS)
+unit1309_LDADD = $(LDADD)
+unit1309_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_10 = ../libtest/unit1330-first.$(OBJEXT)
+am_unit1330_OBJECTS = unit1330-unit1330.$(OBJEXT) $(am__objects_10)
+unit1330_OBJECTS = $(am_unit1330_OBJECTS)
+unit1330_LDADD = $(LDADD)
+unit1330_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_11 = ../libtest/unit1394-first.$(OBJEXT)
+am_unit1394_OBJECTS = unit1394-unit1394.$(OBJEXT) $(am__objects_11)
+unit1394_OBJECTS = $(am_unit1394_OBJECTS)
+unit1394_DEPENDENCIES = $(top_builddir)/lib/libcurl.la
+unit1394_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(unit1394_LDFLAGS) $(LDFLAGS) -o $@
+am__objects_12 = ../libtest/unit1395-first.$(OBJEXT)
+am_unit1395_OBJECTS = unit1395-unit1395.$(OBJEXT) $(am__objects_12)
+unit1395_OBJECTS = $(am_unit1395_OBJECTS)
+unit1395_LDADD = $(LDADD)
+unit1395_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_13 = ../libtest/unit1396-first.$(OBJEXT)
+am_unit1396_OBJECTS = unit1396-unit1396.$(OBJEXT) $(am__objects_13)
+unit1396_OBJECTS = $(am_unit1396_OBJECTS)
+unit1396_LDADD = $(LDADD)
+unit1396_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_14 = ../libtest/unit1397-first.$(OBJEXT)
+am_unit1397_OBJECTS = unit1397-unit1397.$(OBJEXT) $(am__objects_14)
+unit1397_OBJECTS = $(am_unit1397_OBJECTS)
+unit1397_LDADD = $(LDADD)
+unit1397_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_15 = ../libtest/unit1398-first.$(OBJEXT)
+am_unit1398_OBJECTS = unit1398-unit1398.$(OBJEXT) $(am__objects_15)
+unit1398_OBJECTS = $(am_unit1398_OBJECTS)
+unit1398_LDADD = $(LDADD)
+unit1398_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_16 = ../libtest/unit1600-first.$(OBJEXT)
+am_unit1600_OBJECTS = unit1600-unit1600.$(OBJEXT) $(am__objects_16)
+unit1600_OBJECTS = $(am_unit1600_OBJECTS)
+unit1600_LDADD = $(LDADD)
+unit1600_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_17 = ../libtest/unit1601-first.$(OBJEXT)
+am_unit1601_OBJECTS = unit1601-unit1601.$(OBJEXT) $(am__objects_17)
+unit1601_OBJECTS = $(am_unit1601_OBJECTS)
+unit1601_LDADD = $(LDADD)
+unit1601_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_18 = ../libtest/unit1602-first.$(OBJEXT)
+am_unit1602_OBJECTS = unit1602-unit1602.$(OBJEXT) $(am__objects_18)
+unit1602_OBJECTS = $(am_unit1602_OBJECTS)
+unit1602_LDADD = $(LDADD)
+unit1602_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_19 = ../libtest/unit1603-first.$(OBJEXT)
+am_unit1603_OBJECTS = unit1603-unit1603.$(OBJEXT) $(am__objects_19)
+unit1603_OBJECTS = $(am_unit1603_OBJECTS)
+unit1603_LDADD = $(LDADD)
+unit1603_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_20 = ../libtest/unit1604-first.$(OBJEXT)
+am_unit1604_OBJECTS = unit1604-unit1604.$(OBJEXT) $(am__objects_20)
+unit1604_OBJECTS = $(am_unit1604_OBJECTS)
+unit1604_LDADD = $(LDADD)
+unit1604_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_21 = ../libtest/unit1605-first.$(OBJEXT)
+am_unit1605_OBJECTS = unit1605-unit1605.$(OBJEXT) $(am__objects_21)
+unit1605_OBJECTS = $(am_unit1605_OBJECTS)
+unit1605_LDADD = $(LDADD)
+unit1605_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+am__objects_22 = ../libtest/unit1606-first.$(OBJEXT)
+am_unit1606_OBJECTS = unit1606-unit1606.$(OBJEXT) $(am__objects_22)
+unit1606_OBJECTS = $(am_unit1606_OBJECTS)
+unit1606_LDADD = $(LDADD)
+unit1606_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
+	$(top_builddir)/lib/libcurlu.la
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+DEFAULT_INCLUDES = 
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo "  CC      " $@;
+am__v_CC_1 = 
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo "  CCLD    " $@;
+am__v_CCLD_1 = 
+SOURCES = $(unit1300_SOURCES) $(unit1301_SOURCES) $(unit1302_SOURCES) \
+	$(unit1303_SOURCES) $(unit1304_SOURCES) $(unit1305_SOURCES) \
+	$(unit1307_SOURCES) $(unit1308_SOURCES) $(unit1309_SOURCES) \
+	$(unit1330_SOURCES) $(unit1394_SOURCES) $(unit1395_SOURCES) \
+	$(unit1396_SOURCES) $(unit1397_SOURCES) $(unit1398_SOURCES) \
+	$(unit1600_SOURCES) $(unit1601_SOURCES) $(unit1602_SOURCES) \
+	$(unit1603_SOURCES) $(unit1604_SOURCES) $(unit1605_SOURCES) \
+	$(unit1606_SOURCES)
+DIST_SOURCES = $(unit1300_SOURCES) $(unit1301_SOURCES) \
+	$(unit1302_SOURCES) $(unit1303_SOURCES) $(unit1304_SOURCES) \
+	$(unit1305_SOURCES) $(unit1307_SOURCES) $(unit1308_SOURCES) \
+	$(unit1309_SOURCES) $(unit1330_SOURCES) $(unit1394_SOURCES) \
+	$(unit1395_SOURCES) $(unit1396_SOURCES) $(unit1397_SOURCES) \
+	$(unit1398_SOURCES) $(unit1600_SOURCES) $(unit1601_SOURCES) \
+	$(unit1602_SOURCES) $(unit1603_SOURCES) $(unit1604_SOURCES) \
+	$(unit1605_SOURCES) $(unit1606_SOURCES)
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
+	$(top_srcdir)/depcomp README
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
+CODE_COVERAGE_CFLAGS = @CODE_COVERAGE_CFLAGS@
+CODE_COVERAGE_ENABLED = @CODE_COVERAGE_ENABLED@
+CODE_COVERAGE_LDFLAGS = @CODE_COVERAGE_LDFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
+CURLVERSION = @CURLVERSION@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
+CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
+CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
+CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
+CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
+CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
+CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
+CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
+CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
+CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
+CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
+CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
+CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
+CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_SHARED = @ENABLE_SHARED@
+ENABLE_STATIC = @ENABLE_STATIC@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GCOV = @GCOV@
+GENHTML = @GENHTML@
+GREP = @GREP@
+HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+IDN_ENABLED = @IDN_ENABLED@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IPV6_ENABLED = @IPV6_ENABLED@
+LCOV = @LCOV@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBCURL_LIBS = @LIBCURL_LIBS@
+LIBMETALINK_CPPFLAGS = @LIBMETALINK_CPPFLAGS@
+LIBMETALINK_LDFLAGS = @LIBMETALINK_LDFLAGS@
+LIBMETALINK_LIBS = @LIBMETALINK_LIBS@
+LIBOBJS = @LIBOBJS@
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MANOPT = @MANOPT@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NROFF = @NROFF@
+NSS_LIBS = @NSS_LIBS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PERL = @PERL@
+PKGADD_NAME = @PKGADD_NAME@
+PKGADD_PKG = @PKGADD_PKG@
+PKGADD_VENDOR = @PKGADD_VENDOR@
+PKGCONFIG = @PKGCONFIG@
+RANDOM_FILE = @RANDOM_FILE@
+RANLIB = @RANLIB@
+REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SSL_ENABLED = @SSL_ENABLED@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+USE_ARES = @USE_ARES@
+USE_AXTLS = @USE_AXTLS@
+USE_CYASSL = @USE_CYASSL@
+USE_DARWINSSL = @USE_DARWINSSL@
+USE_GNUTLS = @USE_GNUTLS@
+USE_GNUTLS_NETTLE = @USE_GNUTLS_NETTLE@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MBEDTLS = @USE_MBEDTLS@
+USE_NGHTTP2 = @USE_NGHTTP2@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SCHANNEL = @USE_SCHANNEL@
+USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ZLIB_LIBS = @ZLIB_LIBS@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libext = @libext@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+AUTOMAKE_OPTIONS = foreign nostdinc
+@USE_EMBEDDED_ARES_FALSE@AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_builddir)/include \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/include \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_builddir)/lib \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/lib \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/src \
+@USE_EMBEDDED_ARES_FALSE@	-I$(top_srcdir)/tests/libtest \
+@USE_EMBEDDED_ARES_FALSE@	-DCURL_STATICLIB -DUNITTESTS
+
+# Specify our include paths here, and do it relative to $(top_srcdir) and
+# $(top_builddir), to ensure that these paths which belong to the library
+# being currently built and tested are searched before the library which
+# might possibly already be installed in the system.
+#
+# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
+# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h
+# $(top_srcdir)/include is for libcurl's external include files
+# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
+# $(top_srcdir)/ares is for in-tree c-ares's external include files
+@USE_EMBEDDED_ARES_TRUE@AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/include \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/include \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/lib \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/lib \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/src \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/tests/libtest \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_builddir)/ares \
+@USE_EMBEDDED_ARES_TRUE@	-I$(top_srcdir)/ares -DCURL_STATICLIB \
+@USE_EMBEDDED_ARES_TRUE@	-DUNITTESTS
+EXTRA_DIST = Makefile.inc CMakeLists.txt
+LDADD = $(top_builddir)/src/libcurltool.la   \
+        $(top_builddir)/lib/libcurlu.la      \
+        @LDFLAGS@ @LIBCURL_LIBS@
+
+UNITFILES = curlcheck.h \
+ ../libtest/test.h \
+ ../libtest/first.c
+
+
+# These are all unit test programs
+UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307	\
+ unit1308 unit1309 unit1330 unit1394 unit1395 unit1396 unit1397 unit1398	\
+ unit1600 unit1601 unit1602 unit1603 unit1604 unit1605 unit1606
+
+unit1300_SOURCES = unit1300.c $(UNITFILES)
+unit1300_CPPFLAGS = $(AM_CPPFLAGS)
+unit1301_SOURCES = unit1301.c $(UNITFILES)
+unit1301_CPPFLAGS = $(AM_CPPFLAGS)
+unit1302_SOURCES = unit1302.c $(UNITFILES)
+unit1302_CPPFLAGS = $(AM_CPPFLAGS)
+unit1303_SOURCES = unit1303.c $(UNITFILES)
+unit1303_CPPFLAGS = $(AM_CPPFLAGS)
+unit1304_SOURCES = unit1304.c $(UNITFILES)
+unit1304_CPPFLAGS = $(AM_CPPFLAGS)
+unit1305_SOURCES = unit1305.c $(UNITFILES)
+unit1305_CPPFLAGS = $(AM_CPPFLAGS)
+unit1307_SOURCES = unit1307.c $(UNITFILES)
+unit1307_CPPFLAGS = $(AM_CPPFLAGS)
+unit1308_SOURCES = unit1308.c $(UNITFILES)
+unit1308_CPPFLAGS = $(AM_CPPFLAGS)
+unit1309_SOURCES = unit1309.c $(UNITFILES)
+unit1309_CPPFLAGS = $(AM_CPPFLAGS)
+unit1330_SOURCES = unit1330.c $(UNITFILES)
+unit1330_CPPFLAGS = $(AM_CPPFLAGS)
+unit1394_SOURCES = unit1394.c $(UNITFILES)
+unit1394_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
+unit1394_LDADD = @LIBMETALINK_LIBS@ $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
+unit1394_LDFLAGS = @LIBMETALINK_LDFLAGS@ $(top_builddir)/src/libcurltool.la
+unit1394_LIBS = 
+unit1395_SOURCES = unit1395.c $(UNITFILES)
+unit1395_CPPFLAGS = $(AM_CPPFLAGS)
+unit1396_SOURCES = unit1396.c $(UNITFILES)
+unit1396_CPPFLAGS = $(AM_CPPFLAGS)
+unit1397_SOURCES = unit1397.c $(UNITFILES)
+unit1397_CPPFLAGS = $(AM_CPPFLAGS)
+unit1398_SOURCES = unit1398.c $(UNITFILES)
+unit1398_CPPFLAGS = $(AM_CPPFLAGS)
+unit1600_SOURCES = unit1600.c $(UNITFILES)
+unit1600_CPPFLAGS = $(AM_CPPFLAGS)
+unit1601_SOURCES = unit1601.c $(UNITFILES)
+unit1601_CPPFLAGS = $(AM_CPPFLAGS)
+unit1602_SOURCES = unit1602.c $(UNITFILES)
+unit1602_CPPFLAGS = $(AM_CPPFLAGS)
+unit1603_SOURCES = unit1603.c $(UNITFILES)
+unit1603_CPPFLAGS = $(AM_CPPFLAGS)
+unit1604_SOURCES = unit1604.c $(UNITFILES)
+unit1604_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
+unit1605_SOURCES = unit1605.c $(UNITFILES)
+unit1605_CPPFLAGS = $(AM_CPPFLAGS)
+unit1606_SOURCES = unit1606.c $(UNITFILES)
+unit1606_CPPFLAGS = $(AM_CPPFLAGS)
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+	        && { if test -f $@; then exit 0; else break; fi; }; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/unit/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign tests/unit/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+$(srcdir)/Makefile.inc $(am__empty):
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+	echo " rm -f" $$list; \
+	rm -f $$list || exit $$?; \
+	test -n "$(EXEEXT)" || exit 0; \
+	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+	echo " rm -f" $$list; \
+	rm -f $$list
+../libtest/$(am__dirstamp):
+	@$(MKDIR_P) ../libtest
+	@: > ../libtest/$(am__dirstamp)
+../libtest/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ../libtest/$(DEPDIR)
+	@: > ../libtest/$(DEPDIR)/$(am__dirstamp)
+../libtest/unit1300-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1300$(EXEEXT): $(unit1300_OBJECTS) $(unit1300_DEPENDENCIES) $(EXTRA_unit1300_DEPENDENCIES) 
+	@rm -f unit1300$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1300_OBJECTS) $(unit1300_LDADD) $(LIBS)
+../libtest/unit1301-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1301$(EXEEXT): $(unit1301_OBJECTS) $(unit1301_DEPENDENCIES) $(EXTRA_unit1301_DEPENDENCIES) 
+	@rm -f unit1301$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1301_OBJECTS) $(unit1301_LDADD) $(LIBS)
+../libtest/unit1302-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1302$(EXEEXT): $(unit1302_OBJECTS) $(unit1302_DEPENDENCIES) $(EXTRA_unit1302_DEPENDENCIES) 
+	@rm -f unit1302$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1302_OBJECTS) $(unit1302_LDADD) $(LIBS)
+../libtest/unit1303-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1303$(EXEEXT): $(unit1303_OBJECTS) $(unit1303_DEPENDENCIES) $(EXTRA_unit1303_DEPENDENCIES) 
+	@rm -f unit1303$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1303_OBJECTS) $(unit1303_LDADD) $(LIBS)
+../libtest/unit1304-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1304$(EXEEXT): $(unit1304_OBJECTS) $(unit1304_DEPENDENCIES) $(EXTRA_unit1304_DEPENDENCIES) 
+	@rm -f unit1304$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1304_OBJECTS) $(unit1304_LDADD) $(LIBS)
+../libtest/unit1305-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1305$(EXEEXT): $(unit1305_OBJECTS) $(unit1305_DEPENDENCIES) $(EXTRA_unit1305_DEPENDENCIES) 
+	@rm -f unit1305$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1305_OBJECTS) $(unit1305_LDADD) $(LIBS)
+../libtest/unit1307-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1307$(EXEEXT): $(unit1307_OBJECTS) $(unit1307_DEPENDENCIES) $(EXTRA_unit1307_DEPENDENCIES) 
+	@rm -f unit1307$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1307_OBJECTS) $(unit1307_LDADD) $(LIBS)
+../libtest/unit1308-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1308$(EXEEXT): $(unit1308_OBJECTS) $(unit1308_DEPENDENCIES) $(EXTRA_unit1308_DEPENDENCIES) 
+	@rm -f unit1308$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1308_OBJECTS) $(unit1308_LDADD) $(LIBS)
+../libtest/unit1309-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1309$(EXEEXT): $(unit1309_OBJECTS) $(unit1309_DEPENDENCIES) $(EXTRA_unit1309_DEPENDENCIES) 
+	@rm -f unit1309$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1309_OBJECTS) $(unit1309_LDADD) $(LIBS)
+../libtest/unit1330-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1330$(EXEEXT): $(unit1330_OBJECTS) $(unit1330_DEPENDENCIES) $(EXTRA_unit1330_DEPENDENCIES) 
+	@rm -f unit1330$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1330_OBJECTS) $(unit1330_LDADD) $(LIBS)
+../libtest/unit1394-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1394$(EXEEXT): $(unit1394_OBJECTS) $(unit1394_DEPENDENCIES) $(EXTRA_unit1394_DEPENDENCIES) 
+	@rm -f unit1394$(EXEEXT)
+	$(AM_V_CCLD)$(unit1394_LINK) $(unit1394_OBJECTS) $(unit1394_LDADD) $(LIBS)
+../libtest/unit1395-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1395$(EXEEXT): $(unit1395_OBJECTS) $(unit1395_DEPENDENCIES) $(EXTRA_unit1395_DEPENDENCIES) 
+	@rm -f unit1395$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1395_OBJECTS) $(unit1395_LDADD) $(LIBS)
+../libtest/unit1396-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1396$(EXEEXT): $(unit1396_OBJECTS) $(unit1396_DEPENDENCIES) $(EXTRA_unit1396_DEPENDENCIES) 
+	@rm -f unit1396$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1396_OBJECTS) $(unit1396_LDADD) $(LIBS)
+../libtest/unit1397-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1397$(EXEEXT): $(unit1397_OBJECTS) $(unit1397_DEPENDENCIES) $(EXTRA_unit1397_DEPENDENCIES) 
+	@rm -f unit1397$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1397_OBJECTS) $(unit1397_LDADD) $(LIBS)
+../libtest/unit1398-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1398$(EXEEXT): $(unit1398_OBJECTS) $(unit1398_DEPENDENCIES) $(EXTRA_unit1398_DEPENDENCIES) 
+	@rm -f unit1398$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1398_OBJECTS) $(unit1398_LDADD) $(LIBS)
+../libtest/unit1600-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1600$(EXEEXT): $(unit1600_OBJECTS) $(unit1600_DEPENDENCIES) $(EXTRA_unit1600_DEPENDENCIES) 
+	@rm -f unit1600$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1600_OBJECTS) $(unit1600_LDADD) $(LIBS)
+../libtest/unit1601-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1601$(EXEEXT): $(unit1601_OBJECTS) $(unit1601_DEPENDENCIES) $(EXTRA_unit1601_DEPENDENCIES) 
+	@rm -f unit1601$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1601_OBJECTS) $(unit1601_LDADD) $(LIBS)
+../libtest/unit1602-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1602$(EXEEXT): $(unit1602_OBJECTS) $(unit1602_DEPENDENCIES) $(EXTRA_unit1602_DEPENDENCIES) 
+	@rm -f unit1602$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1602_OBJECTS) $(unit1602_LDADD) $(LIBS)
+../libtest/unit1603-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1603$(EXEEXT): $(unit1603_OBJECTS) $(unit1603_DEPENDENCIES) $(EXTRA_unit1603_DEPENDENCIES) 
+	@rm -f unit1603$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1603_OBJECTS) $(unit1603_LDADD) $(LIBS)
+../libtest/unit1604-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1604$(EXEEXT): $(unit1604_OBJECTS) $(unit1604_DEPENDENCIES) $(EXTRA_unit1604_DEPENDENCIES) 
+	@rm -f unit1604$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1604_OBJECTS) $(unit1604_LDADD) $(LIBS)
+../libtest/unit1605-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1605$(EXEEXT): $(unit1605_OBJECTS) $(unit1605_DEPENDENCIES) $(EXTRA_unit1605_DEPENDENCIES) 
+	@rm -f unit1605$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1605_OBJECTS) $(unit1605_LDADD) $(LIBS)
+../libtest/unit1606-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
+	../libtest/$(DEPDIR)/$(am__dirstamp)
+
+unit1606$(EXEEXT): $(unit1606_OBJECTS) $(unit1606_DEPENDENCIES) $(EXTRA_unit1606_DEPENDENCIES) 
+	@rm -f unit1606$(EXEEXT)
+	$(AM_V_CCLD)$(LINK) $(unit1606_OBJECTS) $(unit1606_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+	-rm -f ../libtest/*.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1300-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1301-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1302-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1303-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1304-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1305-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1307-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1308-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1309-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1330-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1394-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1395-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1396-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1397-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1398-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1600-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1601-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1602-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1603-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1604-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1605-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1606-first.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1300-unit1300.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1301-unit1301.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1302-unit1302.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1303-unit1303.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1304-unit1304.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1305-unit1305.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1307-unit1307.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1308-unit1308.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1309-unit1309.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1330-unit1330.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1394-unit1394.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1395-unit1395.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1396-unit1396.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1397-unit1397.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1398-unit1398.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1600-unit1600.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1601-unit1601.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1602-unit1602.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1603-unit1603.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1604-unit1604.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1605-unit1605.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1606-unit1606.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
+
+.c.obj:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@	$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+
+unit1300-unit1300.o: unit1300.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1300-unit1300.o -MD -MP -MF $(DEPDIR)/unit1300-unit1300.Tpo -c -o unit1300-unit1300.o `test -f 'unit1300.c' || echo '$(srcdir)/'`unit1300.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1300-unit1300.Tpo $(DEPDIR)/unit1300-unit1300.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1300.c' object='unit1300-unit1300.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1300-unit1300.o `test -f 'unit1300.c' || echo '$(srcdir)/'`unit1300.c
+
+unit1300-unit1300.obj: unit1300.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1300-unit1300.obj -MD -MP -MF $(DEPDIR)/unit1300-unit1300.Tpo -c -o unit1300-unit1300.obj `if test -f 'unit1300.c'; then $(CYGPATH_W) 'unit1300.c'; else $(CYGPATH_W) '$(srcdir)/unit1300.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1300-unit1300.Tpo $(DEPDIR)/unit1300-unit1300.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1300.c' object='unit1300-unit1300.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1300-unit1300.obj `if test -f 'unit1300.c'; then $(CYGPATH_W) 'unit1300.c'; else $(CYGPATH_W) '$(srcdir)/unit1300.c'; fi`
+
+../libtest/unit1300-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1300-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1300-first.Tpo -c -o ../libtest/unit1300-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1300-first.Tpo ../libtest/$(DEPDIR)/unit1300-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1300-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1300-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1300-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1300-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1300-first.Tpo -c -o ../libtest/unit1300-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1300-first.Tpo ../libtest/$(DEPDIR)/unit1300-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1300-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1300_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1300-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1301-unit1301.o: unit1301.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1301-unit1301.o -MD -MP -MF $(DEPDIR)/unit1301-unit1301.Tpo -c -o unit1301-unit1301.o `test -f 'unit1301.c' || echo '$(srcdir)/'`unit1301.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1301-unit1301.Tpo $(DEPDIR)/unit1301-unit1301.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1301.c' object='unit1301-unit1301.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1301-unit1301.o `test -f 'unit1301.c' || echo '$(srcdir)/'`unit1301.c
+
+unit1301-unit1301.obj: unit1301.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1301-unit1301.obj -MD -MP -MF $(DEPDIR)/unit1301-unit1301.Tpo -c -o unit1301-unit1301.obj `if test -f 'unit1301.c'; then $(CYGPATH_W) 'unit1301.c'; else $(CYGPATH_W) '$(srcdir)/unit1301.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1301-unit1301.Tpo $(DEPDIR)/unit1301-unit1301.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1301.c' object='unit1301-unit1301.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1301-unit1301.obj `if test -f 'unit1301.c'; then $(CYGPATH_W) 'unit1301.c'; else $(CYGPATH_W) '$(srcdir)/unit1301.c'; fi`
+
+../libtest/unit1301-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1301-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1301-first.Tpo -c -o ../libtest/unit1301-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1301-first.Tpo ../libtest/$(DEPDIR)/unit1301-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1301-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1301-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1301-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1301-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1301-first.Tpo -c -o ../libtest/unit1301-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1301-first.Tpo ../libtest/$(DEPDIR)/unit1301-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1301-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1301_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1301-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1302-unit1302.o: unit1302.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1302-unit1302.o -MD -MP -MF $(DEPDIR)/unit1302-unit1302.Tpo -c -o unit1302-unit1302.o `test -f 'unit1302.c' || echo '$(srcdir)/'`unit1302.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1302-unit1302.Tpo $(DEPDIR)/unit1302-unit1302.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1302.c' object='unit1302-unit1302.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1302-unit1302.o `test -f 'unit1302.c' || echo '$(srcdir)/'`unit1302.c
+
+unit1302-unit1302.obj: unit1302.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1302-unit1302.obj -MD -MP -MF $(DEPDIR)/unit1302-unit1302.Tpo -c -o unit1302-unit1302.obj `if test -f 'unit1302.c'; then $(CYGPATH_W) 'unit1302.c'; else $(CYGPATH_W) '$(srcdir)/unit1302.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1302-unit1302.Tpo $(DEPDIR)/unit1302-unit1302.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1302.c' object='unit1302-unit1302.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1302-unit1302.obj `if test -f 'unit1302.c'; then $(CYGPATH_W) 'unit1302.c'; else $(CYGPATH_W) '$(srcdir)/unit1302.c'; fi`
+
+../libtest/unit1302-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1302-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1302-first.Tpo -c -o ../libtest/unit1302-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1302-first.Tpo ../libtest/$(DEPDIR)/unit1302-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1302-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1302-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1302-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1302-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1302-first.Tpo -c -o ../libtest/unit1302-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1302-first.Tpo ../libtest/$(DEPDIR)/unit1302-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1302-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1302_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1302-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1303-unit1303.o: unit1303.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1303-unit1303.o -MD -MP -MF $(DEPDIR)/unit1303-unit1303.Tpo -c -o unit1303-unit1303.o `test -f 'unit1303.c' || echo '$(srcdir)/'`unit1303.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1303-unit1303.Tpo $(DEPDIR)/unit1303-unit1303.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1303.c' object='unit1303-unit1303.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1303-unit1303.o `test -f 'unit1303.c' || echo '$(srcdir)/'`unit1303.c
+
+unit1303-unit1303.obj: unit1303.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1303-unit1303.obj -MD -MP -MF $(DEPDIR)/unit1303-unit1303.Tpo -c -o unit1303-unit1303.obj `if test -f 'unit1303.c'; then $(CYGPATH_W) 'unit1303.c'; else $(CYGPATH_W) '$(srcdir)/unit1303.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1303-unit1303.Tpo $(DEPDIR)/unit1303-unit1303.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1303.c' object='unit1303-unit1303.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1303-unit1303.obj `if test -f 'unit1303.c'; then $(CYGPATH_W) 'unit1303.c'; else $(CYGPATH_W) '$(srcdir)/unit1303.c'; fi`
+
+../libtest/unit1303-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1303-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1303-first.Tpo -c -o ../libtest/unit1303-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1303-first.Tpo ../libtest/$(DEPDIR)/unit1303-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1303-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1303-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1303-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1303-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1303-first.Tpo -c -o ../libtest/unit1303-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1303-first.Tpo ../libtest/$(DEPDIR)/unit1303-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1303-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1303_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1303-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1304-unit1304.o: unit1304.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1304-unit1304.o -MD -MP -MF $(DEPDIR)/unit1304-unit1304.Tpo -c -o unit1304-unit1304.o `test -f 'unit1304.c' || echo '$(srcdir)/'`unit1304.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1304-unit1304.Tpo $(DEPDIR)/unit1304-unit1304.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1304.c' object='unit1304-unit1304.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1304-unit1304.o `test -f 'unit1304.c' || echo '$(srcdir)/'`unit1304.c
+
+unit1304-unit1304.obj: unit1304.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1304-unit1304.obj -MD -MP -MF $(DEPDIR)/unit1304-unit1304.Tpo -c -o unit1304-unit1304.obj `if test -f 'unit1304.c'; then $(CYGPATH_W) 'unit1304.c'; else $(CYGPATH_W) '$(srcdir)/unit1304.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1304-unit1304.Tpo $(DEPDIR)/unit1304-unit1304.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1304.c' object='unit1304-unit1304.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1304-unit1304.obj `if test -f 'unit1304.c'; then $(CYGPATH_W) 'unit1304.c'; else $(CYGPATH_W) '$(srcdir)/unit1304.c'; fi`
+
+../libtest/unit1304-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1304-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1304-first.Tpo -c -o ../libtest/unit1304-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1304-first.Tpo ../libtest/$(DEPDIR)/unit1304-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1304-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1304-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1304-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1304-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1304-first.Tpo -c -o ../libtest/unit1304-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1304-first.Tpo ../libtest/$(DEPDIR)/unit1304-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1304-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1304_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1304-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1305-unit1305.o: unit1305.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1305-unit1305.o -MD -MP -MF $(DEPDIR)/unit1305-unit1305.Tpo -c -o unit1305-unit1305.o `test -f 'unit1305.c' || echo '$(srcdir)/'`unit1305.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1305-unit1305.Tpo $(DEPDIR)/unit1305-unit1305.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1305.c' object='unit1305-unit1305.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1305-unit1305.o `test -f 'unit1305.c' || echo '$(srcdir)/'`unit1305.c
+
+unit1305-unit1305.obj: unit1305.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1305-unit1305.obj -MD -MP -MF $(DEPDIR)/unit1305-unit1305.Tpo -c -o unit1305-unit1305.obj `if test -f 'unit1305.c'; then $(CYGPATH_W) 'unit1305.c'; else $(CYGPATH_W) '$(srcdir)/unit1305.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1305-unit1305.Tpo $(DEPDIR)/unit1305-unit1305.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1305.c' object='unit1305-unit1305.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1305-unit1305.obj `if test -f 'unit1305.c'; then $(CYGPATH_W) 'unit1305.c'; else $(CYGPATH_W) '$(srcdir)/unit1305.c'; fi`
+
+../libtest/unit1305-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1305-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1305-first.Tpo -c -o ../libtest/unit1305-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1305-first.Tpo ../libtest/$(DEPDIR)/unit1305-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1305-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1305-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1305-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1305-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1305-first.Tpo -c -o ../libtest/unit1305-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1305-first.Tpo ../libtest/$(DEPDIR)/unit1305-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1305-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1305_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1305-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1307-unit1307.o: unit1307.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1307-unit1307.o -MD -MP -MF $(DEPDIR)/unit1307-unit1307.Tpo -c -o unit1307-unit1307.o `test -f 'unit1307.c' || echo '$(srcdir)/'`unit1307.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1307-unit1307.Tpo $(DEPDIR)/unit1307-unit1307.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1307.c' object='unit1307-unit1307.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1307-unit1307.o `test -f 'unit1307.c' || echo '$(srcdir)/'`unit1307.c
+
+unit1307-unit1307.obj: unit1307.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1307-unit1307.obj -MD -MP -MF $(DEPDIR)/unit1307-unit1307.Tpo -c -o unit1307-unit1307.obj `if test -f 'unit1307.c'; then $(CYGPATH_W) 'unit1307.c'; else $(CYGPATH_W) '$(srcdir)/unit1307.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1307-unit1307.Tpo $(DEPDIR)/unit1307-unit1307.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1307.c' object='unit1307-unit1307.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1307-unit1307.obj `if test -f 'unit1307.c'; then $(CYGPATH_W) 'unit1307.c'; else $(CYGPATH_W) '$(srcdir)/unit1307.c'; fi`
+
+../libtest/unit1307-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1307-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1307-first.Tpo -c -o ../libtest/unit1307-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1307-first.Tpo ../libtest/$(DEPDIR)/unit1307-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1307-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1307-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1307-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1307-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1307-first.Tpo -c -o ../libtest/unit1307-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1307-first.Tpo ../libtest/$(DEPDIR)/unit1307-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1307-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1307_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1307-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1308-unit1308.o: unit1308.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1308-unit1308.o -MD -MP -MF $(DEPDIR)/unit1308-unit1308.Tpo -c -o unit1308-unit1308.o `test -f 'unit1308.c' || echo '$(srcdir)/'`unit1308.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1308-unit1308.Tpo $(DEPDIR)/unit1308-unit1308.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1308.c' object='unit1308-unit1308.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1308-unit1308.o `test -f 'unit1308.c' || echo '$(srcdir)/'`unit1308.c
+
+unit1308-unit1308.obj: unit1308.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1308-unit1308.obj -MD -MP -MF $(DEPDIR)/unit1308-unit1308.Tpo -c -o unit1308-unit1308.obj `if test -f 'unit1308.c'; then $(CYGPATH_W) 'unit1308.c'; else $(CYGPATH_W) '$(srcdir)/unit1308.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1308-unit1308.Tpo $(DEPDIR)/unit1308-unit1308.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1308.c' object='unit1308-unit1308.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1308-unit1308.obj `if test -f 'unit1308.c'; then $(CYGPATH_W) 'unit1308.c'; else $(CYGPATH_W) '$(srcdir)/unit1308.c'; fi`
+
+../libtest/unit1308-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1308-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1308-first.Tpo -c -o ../libtest/unit1308-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1308-first.Tpo ../libtest/$(DEPDIR)/unit1308-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1308-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1308-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1308-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1308-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1308-first.Tpo -c -o ../libtest/unit1308-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1308-first.Tpo ../libtest/$(DEPDIR)/unit1308-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1308-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1308_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1308-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1309-unit1309.o: unit1309.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1309-unit1309.o -MD -MP -MF $(DEPDIR)/unit1309-unit1309.Tpo -c -o unit1309-unit1309.o `test -f 'unit1309.c' || echo '$(srcdir)/'`unit1309.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1309-unit1309.Tpo $(DEPDIR)/unit1309-unit1309.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1309.c' object='unit1309-unit1309.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1309-unit1309.o `test -f 'unit1309.c' || echo '$(srcdir)/'`unit1309.c
+
+unit1309-unit1309.obj: unit1309.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1309-unit1309.obj -MD -MP -MF $(DEPDIR)/unit1309-unit1309.Tpo -c -o unit1309-unit1309.obj `if test -f 'unit1309.c'; then $(CYGPATH_W) 'unit1309.c'; else $(CYGPATH_W) '$(srcdir)/unit1309.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1309-unit1309.Tpo $(DEPDIR)/unit1309-unit1309.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1309.c' object='unit1309-unit1309.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1309-unit1309.obj `if test -f 'unit1309.c'; then $(CYGPATH_W) 'unit1309.c'; else $(CYGPATH_W) '$(srcdir)/unit1309.c'; fi`
+
+../libtest/unit1309-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1309-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1309-first.Tpo -c -o ../libtest/unit1309-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1309-first.Tpo ../libtest/$(DEPDIR)/unit1309-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1309-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1309-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1309-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1309-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1309-first.Tpo -c -o ../libtest/unit1309-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1309-first.Tpo ../libtest/$(DEPDIR)/unit1309-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1309-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1309_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1309-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1330-unit1330.o: unit1330.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1330-unit1330.o -MD -MP -MF $(DEPDIR)/unit1330-unit1330.Tpo -c -o unit1330-unit1330.o `test -f 'unit1330.c' || echo '$(srcdir)/'`unit1330.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1330-unit1330.Tpo $(DEPDIR)/unit1330-unit1330.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1330.c' object='unit1330-unit1330.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1330-unit1330.o `test -f 'unit1330.c' || echo '$(srcdir)/'`unit1330.c
+
+unit1330-unit1330.obj: unit1330.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1330-unit1330.obj -MD -MP -MF $(DEPDIR)/unit1330-unit1330.Tpo -c -o unit1330-unit1330.obj `if test -f 'unit1330.c'; then $(CYGPATH_W) 'unit1330.c'; else $(CYGPATH_W) '$(srcdir)/unit1330.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1330-unit1330.Tpo $(DEPDIR)/unit1330-unit1330.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1330.c' object='unit1330-unit1330.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1330-unit1330.obj `if test -f 'unit1330.c'; then $(CYGPATH_W) 'unit1330.c'; else $(CYGPATH_W) '$(srcdir)/unit1330.c'; fi`
+
+../libtest/unit1330-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1330-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1330-first.Tpo -c -o ../libtest/unit1330-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1330-first.Tpo ../libtest/$(DEPDIR)/unit1330-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1330-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1330-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1330-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1330-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1330-first.Tpo -c -o ../libtest/unit1330-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1330-first.Tpo ../libtest/$(DEPDIR)/unit1330-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1330-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1330_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1330-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1394-unit1394.o: unit1394.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1394-unit1394.o -MD -MP -MF $(DEPDIR)/unit1394-unit1394.Tpo -c -o unit1394-unit1394.o `test -f 'unit1394.c' || echo '$(srcdir)/'`unit1394.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1394-unit1394.Tpo $(DEPDIR)/unit1394-unit1394.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1394.c' object='unit1394-unit1394.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1394-unit1394.o `test -f 'unit1394.c' || echo '$(srcdir)/'`unit1394.c
+
+unit1394-unit1394.obj: unit1394.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1394-unit1394.obj -MD -MP -MF $(DEPDIR)/unit1394-unit1394.Tpo -c -o unit1394-unit1394.obj `if test -f 'unit1394.c'; then $(CYGPATH_W) 'unit1394.c'; else $(CYGPATH_W) '$(srcdir)/unit1394.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1394-unit1394.Tpo $(DEPDIR)/unit1394-unit1394.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1394.c' object='unit1394-unit1394.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1394-unit1394.obj `if test -f 'unit1394.c'; then $(CYGPATH_W) 'unit1394.c'; else $(CYGPATH_W) '$(srcdir)/unit1394.c'; fi`
+
+../libtest/unit1394-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1394-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1394-first.Tpo -c -o ../libtest/unit1394-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1394-first.Tpo ../libtest/$(DEPDIR)/unit1394-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1394-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1394-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1394-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1394-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1394-first.Tpo -c -o ../libtest/unit1394-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1394-first.Tpo ../libtest/$(DEPDIR)/unit1394-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1394-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1394_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1394-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1395-unit1395.o: unit1395.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1395-unit1395.o -MD -MP -MF $(DEPDIR)/unit1395-unit1395.Tpo -c -o unit1395-unit1395.o `test -f 'unit1395.c' || echo '$(srcdir)/'`unit1395.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1395-unit1395.Tpo $(DEPDIR)/unit1395-unit1395.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1395.c' object='unit1395-unit1395.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1395-unit1395.o `test -f 'unit1395.c' || echo '$(srcdir)/'`unit1395.c
+
+unit1395-unit1395.obj: unit1395.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1395-unit1395.obj -MD -MP -MF $(DEPDIR)/unit1395-unit1395.Tpo -c -o unit1395-unit1395.obj `if test -f 'unit1395.c'; then $(CYGPATH_W) 'unit1395.c'; else $(CYGPATH_W) '$(srcdir)/unit1395.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1395-unit1395.Tpo $(DEPDIR)/unit1395-unit1395.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1395.c' object='unit1395-unit1395.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1395-unit1395.obj `if test -f 'unit1395.c'; then $(CYGPATH_W) 'unit1395.c'; else $(CYGPATH_W) '$(srcdir)/unit1395.c'; fi`
+
+../libtest/unit1395-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1395-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1395-first.Tpo -c -o ../libtest/unit1395-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1395-first.Tpo ../libtest/$(DEPDIR)/unit1395-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1395-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1395-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1395-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1395-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1395-first.Tpo -c -o ../libtest/unit1395-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1395-first.Tpo ../libtest/$(DEPDIR)/unit1395-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1395-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1395_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1395-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1396-unit1396.o: unit1396.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1396-unit1396.o -MD -MP -MF $(DEPDIR)/unit1396-unit1396.Tpo -c -o unit1396-unit1396.o `test -f 'unit1396.c' || echo '$(srcdir)/'`unit1396.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1396-unit1396.Tpo $(DEPDIR)/unit1396-unit1396.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1396.c' object='unit1396-unit1396.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1396-unit1396.o `test -f 'unit1396.c' || echo '$(srcdir)/'`unit1396.c
+
+unit1396-unit1396.obj: unit1396.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1396-unit1396.obj -MD -MP -MF $(DEPDIR)/unit1396-unit1396.Tpo -c -o unit1396-unit1396.obj `if test -f 'unit1396.c'; then $(CYGPATH_W) 'unit1396.c'; else $(CYGPATH_W) '$(srcdir)/unit1396.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1396-unit1396.Tpo $(DEPDIR)/unit1396-unit1396.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1396.c' object='unit1396-unit1396.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1396-unit1396.obj `if test -f 'unit1396.c'; then $(CYGPATH_W) 'unit1396.c'; else $(CYGPATH_W) '$(srcdir)/unit1396.c'; fi`
+
+../libtest/unit1396-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1396-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1396-first.Tpo -c -o ../libtest/unit1396-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1396-first.Tpo ../libtest/$(DEPDIR)/unit1396-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1396-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1396-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1396-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1396-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1396-first.Tpo -c -o ../libtest/unit1396-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1396-first.Tpo ../libtest/$(DEPDIR)/unit1396-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1396-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1396_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1396-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1397-unit1397.o: unit1397.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1397-unit1397.o -MD -MP -MF $(DEPDIR)/unit1397-unit1397.Tpo -c -o unit1397-unit1397.o `test -f 'unit1397.c' || echo '$(srcdir)/'`unit1397.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1397-unit1397.Tpo $(DEPDIR)/unit1397-unit1397.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1397.c' object='unit1397-unit1397.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1397-unit1397.o `test -f 'unit1397.c' || echo '$(srcdir)/'`unit1397.c
+
+unit1397-unit1397.obj: unit1397.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1397-unit1397.obj -MD -MP -MF $(DEPDIR)/unit1397-unit1397.Tpo -c -o unit1397-unit1397.obj `if test -f 'unit1397.c'; then $(CYGPATH_W) 'unit1397.c'; else $(CYGPATH_W) '$(srcdir)/unit1397.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1397-unit1397.Tpo $(DEPDIR)/unit1397-unit1397.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1397.c' object='unit1397-unit1397.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1397-unit1397.obj `if test -f 'unit1397.c'; then $(CYGPATH_W) 'unit1397.c'; else $(CYGPATH_W) '$(srcdir)/unit1397.c'; fi`
+
+../libtest/unit1397-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1397-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1397-first.Tpo -c -o ../libtest/unit1397-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1397-first.Tpo ../libtest/$(DEPDIR)/unit1397-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1397-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1397-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1397-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1397-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1397-first.Tpo -c -o ../libtest/unit1397-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1397-first.Tpo ../libtest/$(DEPDIR)/unit1397-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1397-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1397_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1397-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1398-unit1398.o: unit1398.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1398-unit1398.o -MD -MP -MF $(DEPDIR)/unit1398-unit1398.Tpo -c -o unit1398-unit1398.o `test -f 'unit1398.c' || echo '$(srcdir)/'`unit1398.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1398-unit1398.Tpo $(DEPDIR)/unit1398-unit1398.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1398.c' object='unit1398-unit1398.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1398-unit1398.o `test -f 'unit1398.c' || echo '$(srcdir)/'`unit1398.c
+
+unit1398-unit1398.obj: unit1398.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1398-unit1398.obj -MD -MP -MF $(DEPDIR)/unit1398-unit1398.Tpo -c -o unit1398-unit1398.obj `if test -f 'unit1398.c'; then $(CYGPATH_W) 'unit1398.c'; else $(CYGPATH_W) '$(srcdir)/unit1398.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1398-unit1398.Tpo $(DEPDIR)/unit1398-unit1398.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1398.c' object='unit1398-unit1398.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1398-unit1398.obj `if test -f 'unit1398.c'; then $(CYGPATH_W) 'unit1398.c'; else $(CYGPATH_W) '$(srcdir)/unit1398.c'; fi`
+
+../libtest/unit1398-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1398-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1398-first.Tpo -c -o ../libtest/unit1398-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1398-first.Tpo ../libtest/$(DEPDIR)/unit1398-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1398-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1398-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1398-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1398-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1398-first.Tpo -c -o ../libtest/unit1398-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1398-first.Tpo ../libtest/$(DEPDIR)/unit1398-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1398-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1398-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1600-unit1600.o: unit1600.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1600-unit1600.o -MD -MP -MF $(DEPDIR)/unit1600-unit1600.Tpo -c -o unit1600-unit1600.o `test -f 'unit1600.c' || echo '$(srcdir)/'`unit1600.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1600-unit1600.Tpo $(DEPDIR)/unit1600-unit1600.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1600.c' object='unit1600-unit1600.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1600-unit1600.o `test -f 'unit1600.c' || echo '$(srcdir)/'`unit1600.c
+
+unit1600-unit1600.obj: unit1600.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1600-unit1600.obj -MD -MP -MF $(DEPDIR)/unit1600-unit1600.Tpo -c -o unit1600-unit1600.obj `if test -f 'unit1600.c'; then $(CYGPATH_W) 'unit1600.c'; else $(CYGPATH_W) '$(srcdir)/unit1600.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1600-unit1600.Tpo $(DEPDIR)/unit1600-unit1600.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1600.c' object='unit1600-unit1600.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1600-unit1600.obj `if test -f 'unit1600.c'; then $(CYGPATH_W) 'unit1600.c'; else $(CYGPATH_W) '$(srcdir)/unit1600.c'; fi`
+
+../libtest/unit1600-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1600-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1600-first.Tpo -c -o ../libtest/unit1600-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1600-first.Tpo ../libtest/$(DEPDIR)/unit1600-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1600-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1600-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1600-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1600-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1600-first.Tpo -c -o ../libtest/unit1600-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1600-first.Tpo ../libtest/$(DEPDIR)/unit1600-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1600-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1600-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1601-unit1601.o: unit1601.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1601-unit1601.o -MD -MP -MF $(DEPDIR)/unit1601-unit1601.Tpo -c -o unit1601-unit1601.o `test -f 'unit1601.c' || echo '$(srcdir)/'`unit1601.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1601-unit1601.Tpo $(DEPDIR)/unit1601-unit1601.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1601.c' object='unit1601-unit1601.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1601-unit1601.o `test -f 'unit1601.c' || echo '$(srcdir)/'`unit1601.c
+
+unit1601-unit1601.obj: unit1601.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1601-unit1601.obj -MD -MP -MF $(DEPDIR)/unit1601-unit1601.Tpo -c -o unit1601-unit1601.obj `if test -f 'unit1601.c'; then $(CYGPATH_W) 'unit1601.c'; else $(CYGPATH_W) '$(srcdir)/unit1601.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1601-unit1601.Tpo $(DEPDIR)/unit1601-unit1601.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1601.c' object='unit1601-unit1601.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1601-unit1601.obj `if test -f 'unit1601.c'; then $(CYGPATH_W) 'unit1601.c'; else $(CYGPATH_W) '$(srcdir)/unit1601.c'; fi`
+
+../libtest/unit1601-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1601-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1601-first.Tpo -c -o ../libtest/unit1601-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1601-first.Tpo ../libtest/$(DEPDIR)/unit1601-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1601-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1601-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1601-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1601-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1601-first.Tpo -c -o ../libtest/unit1601-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1601-first.Tpo ../libtest/$(DEPDIR)/unit1601-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1601-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1601-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1602-unit1602.o: unit1602.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1602-unit1602.o -MD -MP -MF $(DEPDIR)/unit1602-unit1602.Tpo -c -o unit1602-unit1602.o `test -f 'unit1602.c' || echo '$(srcdir)/'`unit1602.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1602-unit1602.Tpo $(DEPDIR)/unit1602-unit1602.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1602.c' object='unit1602-unit1602.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1602-unit1602.o `test -f 'unit1602.c' || echo '$(srcdir)/'`unit1602.c
+
+unit1602-unit1602.obj: unit1602.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1602-unit1602.obj -MD -MP -MF $(DEPDIR)/unit1602-unit1602.Tpo -c -o unit1602-unit1602.obj `if test -f 'unit1602.c'; then $(CYGPATH_W) 'unit1602.c'; else $(CYGPATH_W) '$(srcdir)/unit1602.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1602-unit1602.Tpo $(DEPDIR)/unit1602-unit1602.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1602.c' object='unit1602-unit1602.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1602-unit1602.obj `if test -f 'unit1602.c'; then $(CYGPATH_W) 'unit1602.c'; else $(CYGPATH_W) '$(srcdir)/unit1602.c'; fi`
+
+../libtest/unit1602-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1602-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1602-first.Tpo -c -o ../libtest/unit1602-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1602-first.Tpo ../libtest/$(DEPDIR)/unit1602-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1602-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1602-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1602-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1602-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1602-first.Tpo -c -o ../libtest/unit1602-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1602-first.Tpo ../libtest/$(DEPDIR)/unit1602-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1602-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1602-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1603-unit1603.o: unit1603.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1603-unit1603.o -MD -MP -MF $(DEPDIR)/unit1603-unit1603.Tpo -c -o unit1603-unit1603.o `test -f 'unit1603.c' || echo '$(srcdir)/'`unit1603.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1603-unit1603.Tpo $(DEPDIR)/unit1603-unit1603.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1603.c' object='unit1603-unit1603.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1603-unit1603.o `test -f 'unit1603.c' || echo '$(srcdir)/'`unit1603.c
+
+unit1603-unit1603.obj: unit1603.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1603-unit1603.obj -MD -MP -MF $(DEPDIR)/unit1603-unit1603.Tpo -c -o unit1603-unit1603.obj `if test -f 'unit1603.c'; then $(CYGPATH_W) 'unit1603.c'; else $(CYGPATH_W) '$(srcdir)/unit1603.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1603-unit1603.Tpo $(DEPDIR)/unit1603-unit1603.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1603.c' object='unit1603-unit1603.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1603-unit1603.obj `if test -f 'unit1603.c'; then $(CYGPATH_W) 'unit1603.c'; else $(CYGPATH_W) '$(srcdir)/unit1603.c'; fi`
+
+../libtest/unit1603-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1603-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1603-first.Tpo -c -o ../libtest/unit1603-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1603-first.Tpo ../libtest/$(DEPDIR)/unit1603-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1603-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1603-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1603-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1603-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1603-first.Tpo -c -o ../libtest/unit1603-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1603-first.Tpo ../libtest/$(DEPDIR)/unit1603-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1603-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1603_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1603-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1604-unit1604.o: unit1604.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1604-unit1604.o -MD -MP -MF $(DEPDIR)/unit1604-unit1604.Tpo -c -o unit1604-unit1604.o `test -f 'unit1604.c' || echo '$(srcdir)/'`unit1604.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1604-unit1604.Tpo $(DEPDIR)/unit1604-unit1604.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1604.c' object='unit1604-unit1604.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1604-unit1604.o `test -f 'unit1604.c' || echo '$(srcdir)/'`unit1604.c
+
+unit1604-unit1604.obj: unit1604.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1604-unit1604.obj -MD -MP -MF $(DEPDIR)/unit1604-unit1604.Tpo -c -o unit1604-unit1604.obj `if test -f 'unit1604.c'; then $(CYGPATH_W) 'unit1604.c'; else $(CYGPATH_W) '$(srcdir)/unit1604.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1604-unit1604.Tpo $(DEPDIR)/unit1604-unit1604.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1604.c' object='unit1604-unit1604.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1604-unit1604.obj `if test -f 'unit1604.c'; then $(CYGPATH_W) 'unit1604.c'; else $(CYGPATH_W) '$(srcdir)/unit1604.c'; fi`
+
+../libtest/unit1604-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1604-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1604-first.Tpo -c -o ../libtest/unit1604-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1604-first.Tpo ../libtest/$(DEPDIR)/unit1604-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1604-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1604-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1604-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1604-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1604-first.Tpo -c -o ../libtest/unit1604-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1604-first.Tpo ../libtest/$(DEPDIR)/unit1604-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1604-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1604_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1604-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1605-unit1605.o: unit1605.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1605-unit1605.o -MD -MP -MF $(DEPDIR)/unit1605-unit1605.Tpo -c -o unit1605-unit1605.o `test -f 'unit1605.c' || echo '$(srcdir)/'`unit1605.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1605-unit1605.Tpo $(DEPDIR)/unit1605-unit1605.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1605.c' object='unit1605-unit1605.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1605-unit1605.o `test -f 'unit1605.c' || echo '$(srcdir)/'`unit1605.c
+
+unit1605-unit1605.obj: unit1605.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1605-unit1605.obj -MD -MP -MF $(DEPDIR)/unit1605-unit1605.Tpo -c -o unit1605-unit1605.obj `if test -f 'unit1605.c'; then $(CYGPATH_W) 'unit1605.c'; else $(CYGPATH_W) '$(srcdir)/unit1605.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1605-unit1605.Tpo $(DEPDIR)/unit1605-unit1605.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1605.c' object='unit1605-unit1605.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1605-unit1605.obj `if test -f 'unit1605.c'; then $(CYGPATH_W) 'unit1605.c'; else $(CYGPATH_W) '$(srcdir)/unit1605.c'; fi`
+
+../libtest/unit1605-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1605-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1605-first.Tpo -c -o ../libtest/unit1605-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1605-first.Tpo ../libtest/$(DEPDIR)/unit1605-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1605-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1605-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1605-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1605-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1605-first.Tpo -c -o ../libtest/unit1605-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1605-first.Tpo ../libtest/$(DEPDIR)/unit1605-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1605-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1605_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1605-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+unit1606-unit1606.o: unit1606.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1606-unit1606.o -MD -MP -MF $(DEPDIR)/unit1606-unit1606.Tpo -c -o unit1606-unit1606.o `test -f 'unit1606.c' || echo '$(srcdir)/'`unit1606.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1606-unit1606.Tpo $(DEPDIR)/unit1606-unit1606.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1606.c' object='unit1606-unit1606.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1606-unit1606.o `test -f 'unit1606.c' || echo '$(srcdir)/'`unit1606.c
+
+unit1606-unit1606.obj: unit1606.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1606-unit1606.obj -MD -MP -MF $(DEPDIR)/unit1606-unit1606.Tpo -c -o unit1606-unit1606.obj `if test -f 'unit1606.c'; then $(CYGPATH_W) 'unit1606.c'; else $(CYGPATH_W) '$(srcdir)/unit1606.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/unit1606-unit1606.Tpo $(DEPDIR)/unit1606-unit1606.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unit1606.c' object='unit1606-unit1606.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1606-unit1606.obj `if test -f 'unit1606.c'; then $(CYGPATH_W) 'unit1606.c'; else $(CYGPATH_W) '$(srcdir)/unit1606.c'; fi`
+
+../libtest/unit1606-first.o: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1606-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1606-first.Tpo -c -o ../libtest/unit1606-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1606-first.Tpo ../libtest/$(DEPDIR)/unit1606-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1606-first.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1606-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
+
+../libtest/unit1606-first.obj: ../libtest/first.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1606-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1606-first.Tpo -c -o ../libtest/unit1606-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1606-first.Tpo ../libtest/$(DEPDIR)/unit1606-first.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1606-first.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1606_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1606-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+	$(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	set x; \
+	here=`pwd`; \
+	$(am__define_uniq_tagged_files); \
+	shift; \
+	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  if test $$# -gt 0; then \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      "$$@" $$unique; \
+	  else \
+	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	      $$unique; \
+	  fi; \
+	fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+	$(am__define_uniq_tagged_files); \
+	test -z "$(CTAGS_ARGS)$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && $(am__cd) $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+	list='$(am__tagged_files)'; \
+	case "$(srcdir)" in \
+	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+	  *) sdir=$(subdir)/$(srcdir) ;; \
+	esac; \
+	for i in $$list; do \
+	  if test -f "$$i"; then \
+	    echo "$(subdir)/$$i"; \
+	  else \
+	    echo "$$sdir/$$i"; \
+	  fi; \
+	done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+	list='$(DISTFILES)'; \
+	  dist_files=`for file in $$list; do echo $$file; done | \
+	  sed -e "s|^$$srcdirstrip/||;t" \
+	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+	case $$dist_files in \
+	  */*) $(MKDIR_P) `echo "$$dist_files" | \
+			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+			   sort -u` ;; \
+	esac; \
+	for file in $$dist_files; do \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  if test -d $$d/$$file; then \
+	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+	    if test -d "$(distdir)/$$file"; then \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+	    fi; \
+	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+	  else \
+	    test -f "$(distdir)/$$file" \
+	    || cp -p $$d/$$file "$(distdir)/$$file" \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(PROGRAMS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+	-rm -f ../libtest/$(DEPDIR)/$(am__dirstamp)
+	-rm -f ../libtest/$(am__dirstamp)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+	mostlyclean-am
+
+distclean: distclean-am
+	-rm -rf ../libtest/$(DEPDIR) ./$(DEPDIR)
+	-rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+	distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -rf ../libtest/$(DEPDIR) ./$(DEPDIR)
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+	clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \
+	ctags-am distclean distclean-compile distclean-generic \
+	distclean-libtool distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-dvi install-dvi-am install-exec \
+	install-exec-am install-html install-html-am install-info \
+	install-info-am install-man install-pdf install-pdf-am \
+	install-ps install-ps-am install-strip installcheck \
+	installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags tags-am uninstall uninstall-am
+
+.PRECIOUS: Makefile
+
+
+# Makefile.inc provides neat definitions
+
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl $(srcdir)/*.c
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.inc b/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.inc
new file mode 100644
index 0000000..ee01627
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/Makefile.inc
@@ -0,0 +1,79 @@
+# these files are used in every single unit test program
+
+UNITFILES = curlcheck.h \
+ ../libtest/test.h \
+ ../libtest/first.c
+
+# These are all unit test programs
+UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307	\
+ unit1308 unit1309 unit1330 unit1394 unit1395 unit1396 unit1397 unit1398	\
+ unit1600 unit1601 unit1602 unit1603 unit1604 unit1605 unit1606
+
+unit1300_SOURCES = unit1300.c $(UNITFILES)
+unit1300_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1301_SOURCES = unit1301.c $(UNITFILES)
+unit1301_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1302_SOURCES = unit1302.c $(UNITFILES)
+unit1302_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1303_SOURCES = unit1303.c $(UNITFILES)
+unit1303_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1304_SOURCES = unit1304.c $(UNITFILES)
+unit1304_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1305_SOURCES = unit1305.c $(UNITFILES)
+unit1305_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1307_SOURCES = unit1307.c $(UNITFILES)
+unit1307_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1308_SOURCES = unit1308.c $(UNITFILES)
+unit1308_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1309_SOURCES = unit1309.c $(UNITFILES)
+unit1309_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1330_SOURCES = unit1330.c $(UNITFILES)
+unit1330_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1394_SOURCES = unit1394.c $(UNITFILES)
+unit1394_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
+unit1394_LDADD = @LIBMETALINK_LIBS@ $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
+unit1394_LDFLAGS = @LIBMETALINK_LDFLAGS@ $(top_builddir)/src/libcurltool.la
+unit1394_LIBS =
+
+unit1395_SOURCES = unit1395.c $(UNITFILES)
+unit1395_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1396_SOURCES = unit1396.c $(UNITFILES)
+unit1396_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1397_SOURCES = unit1397.c $(UNITFILES)
+unit1397_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1398_SOURCES = unit1398.c $(UNITFILES)
+unit1398_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1600_SOURCES = unit1600.c $(UNITFILES)
+unit1600_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1601_SOURCES = unit1601.c $(UNITFILES)
+unit1601_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1602_SOURCES = unit1602.c $(UNITFILES)
+unit1602_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1603_SOURCES = unit1603.c $(UNITFILES)
+unit1603_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1604_SOURCES = unit1604.c $(UNITFILES)
+unit1604_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
+
+unit1605_SOURCES = unit1605.c $(UNITFILES)
+unit1605_CPPFLAGS = $(AM_CPPFLAGS)
+
+unit1606_SOURCES = unit1606.c $(UNITFILES)
+unit1606_CPPFLAGS = $(AM_CPPFLAGS)
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/README b/ap/lib/libcurl/curl-7.54.1/tests/unit/README
new file mode 100644
index 0000000..301cd17
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/README
@@ -0,0 +1,70 @@
+Unit tests
+==========
+
+The goal is to add tests for *ALL* functions in libcurl. If functions are too
+big and complicated, we should split them into smaller and testable ones.
+
+Build Unit Tests
+================
+
+'./configure --enable-debug' is required for the unit tests to build. To
+enable unit tests, there will be a separate static libcurl built that will be
+used exclusively for linking unit test programs. Just build everything as
+normal, and then you can run the unit test cases as well.
+
+Run Unit Tests
+==============
+
+Unit tests are run as part of the regular test suite. If you have built
+everything to run unit tests, to can do 'make test' at the root level. Or you
+can 'cd tests' and then invoke individual unit tests with ./runtests.pl NNNN
+where NNNN is the specific test number.
+
+Debug Unit Tests
+================
+
+If a specific test fails you will get told. The test case then has output left
+in the log/ subdirectory, but most importantly you can re-run the test again
+using gdb by doing ./runtests.pl -g NNNN. That is, add a -g to make it start
+up gdb and run the same case using that.
+
+Write Unit Tests
+================
+
+We put tests that focus on an area or a specific function into a single C
+source file. The source file should be named 'unitNNNN.c' where NNNN is a
+number that starts with 1300 and you can pick the next free number.
+
+You also need a separate file called tests/data/testNNNN (using the same
+number) that describes your test case. See the test1300 file for inspiration
+and the tests/FILEFORMAT documentation.
+
+For the actual C file, here's a very simple example:
+
+----------------------- start -------------------------------
+#include "curlcheck.h"
+
+#include "a libcurl header.h" /* from the lib dir */
+
+static void unit_setup( void )
+{
+  /* whatever you want done first */
+}
+
+static void unit_stop( void )
+{
+  /* done before shutting down and exiting */
+}
+
+UNITTEST_START
+
+  /* here you start doing things and checking that the results are good */
+
+  fail_unless( size == 0 , "initial size should be zero" );
+  fail_if( head == NULL , "head should not be initiated to NULL" );
+
+  /* you end the test code like this: */
+
+UNITTEST_STOP
+
+----------------------- end -------------------------------
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/curlcheck.h b/ap/lib/libcurl/curl-7.54.1/tests/unit/curlcheck.h
new file mode 100644
index 0000000..46cb84a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/curlcheck.h
@@ -0,0 +1,102 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+/* The fail macros mark the current test step as failed, and continue */
+#define fail_if(expr, msg)                              \
+  if(expr) {                                            \
+    fprintf(stderr, "%s:%d Assertion '%s' met: %s\n",   \
+            __FILE__, __LINE__, #expr, msg);            \
+    unitfail++;                                         \
+  }
+
+#define fail_unless(expr, msg)                           \
+  if(!(expr)) {                                          \
+    fprintf(stderr, "%s:%d Assertion '%s' failed: %s\n", \
+            __FILE__, __LINE__, #expr, msg);             \
+    unitfail++;                                          \
+  }
+
+#define verify_memory(dynamic, check, len)                                  \
+  if(dynamic && memcmp(dynamic, check, len)) {                              \
+    fprintf(stderr, "%s:%d Memory buffer mismatch size %d. '%s' is not\n",  \
+            __FILE__, __LINE__, len,                                        \
+            hexdump((const unsigned char *)check, len));                    \
+    fprintf(stderr, "%s:%d the same as '%s'\n", __FILE__, __LINE__,         \
+            hexdump((const unsigned char *)dynamic, len));                  \
+    unitfail++;                                                             \
+  }
+
+/* fail() is for when the test case figured out by itself that a check
+   proved a failure */
+#define fail(msg) do {                                                 \
+    fprintf(stderr, "%s:%d test failed: '%s'\n",                       \
+            __FILE__, __LINE__, msg);                                  \
+    unitfail++;                                                        \
+  } WHILE_FALSE
+
+
+/* The abort macros mark the current test step as failed, and exit the test */
+#define abort_if(expr, msg)                                   \
+  if(expr) {                                                  \
+    fprintf(stderr, "%s:%d Abort assertion '%s' met: %s\n",   \
+            __FILE__, __LINE__, #expr, msg);                  \
+    unitfail++;                                               \
+    goto unit_test_abort;                                     \
+  }
+
+#define abort_unless(expr, msg)                                \
+  if(!(expr)) {                                                \
+    fprintf(stderr, "%s:%d Abort assertion '%s' failed: %s\n", \
+            __FILE__, __LINE__, #expr, msg);                   \
+    unitfail++;                                                \
+    goto unit_test_abort;                                      \
+  }
+
+#define abort_test(msg) do {                                  \
+    fprintf(stderr, "%s:%d test aborted: '%s'\n",             \
+            __FILE__, __LINE__, msg);                         \
+    unitfail++;                                               \
+    goto unit_test_abort;                                     \
+  } WHILE_FALSE
+
+
+
+extern int unitfail;
+
+#define UNITTEST_START                          \
+  int test(char *arg)                           \
+  {                                             \
+    (void)arg;                                  \
+    if(unit_setup()) {                          \
+      fail("unit_setup() failure");             \
+    }                                           \
+    else {
+
+#define UNITTEST_STOP                           \
+    goto unit_test_abort; /* avoid warning */   \
+unit_test_abort:                                \
+    unit_stop();                                \
+  }                                             \
+  return unitfail;                              \
+  }
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1300.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1300.c
new file mode 100644
index 0000000..8ec32a8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1300.c
@@ -0,0 +1,270 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "llist.h"
+
+static struct curl_llist llist;
+
+static struct curl_llist llist_destination;
+
+static void test_curl_llist_dtor(void *key, void *value)
+{
+  /* used by the llist API, does nothing here */
+  (void)key;
+  (void)value;
+}
+
+static CURLcode unit_setup(void)
+{
+  Curl_llist_init(&llist, test_curl_llist_dtor);
+  Curl_llist_init(&llist_destination, test_curl_llist_dtor);
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  Curl_llist_destroy(&llist, NULL);
+  Curl_llist_destroy(&llist_destination, NULL);
+}
+
+UNITTEST_START
+{
+  int unusedData_case1 = 1;
+  int unusedData_case2 = 2;
+  int unusedData_case3 = 3;
+  struct curl_llist_element case1_list;
+  struct curl_llist_element case2_list;
+  struct curl_llist_element case3_list;
+  struct curl_llist_element case4_list;
+  struct curl_llist_element case5_list;
+  struct curl_llist_element *head;
+  struct curl_llist_element *element_next;
+  struct curl_llist_element *element_prev;
+  struct curl_llist_element *to_remove;
+  size_t llist_size = Curl_llist_count(&llist);
+
+  /**
+   * testing llist_init
+   * case 1:
+   * list initiation
+   * @assumptions:
+   * 1: list size will be 0
+   * 2: list head will be NULL
+   * 3: list tail will be NULL
+   * 4: list dtor will be NULL
+  */
+
+  fail_unless(llist.size == 0, "list initial size should be zero");
+  fail_unless(llist.head == NULL, "list head should initiate to NULL");
+  fail_unless(llist.tail == NULL, "list tail should intiate to NULL");
+  fail_unless(llist.dtor == test_curl_llist_dtor,
+               "list dtor shold initiate to test_curl_llist_dtor");
+
+  /**
+   * testing Curl_llist_insert_next
+   * case 1:
+   * list is empty
+   * @assumptions:
+   * 1: list size will be 1
+   * 2: list head will hold the data "unusedData_case1"
+   * 3: list tail will be the same as list head
+   */
+
+  Curl_llist_insert_next(&llist, llist.head, &unusedData_case1, &case1_list);
+
+  fail_unless(Curl_llist_count(&llist) == 1,
+              "List size should be 1 after adding a new element");
+  /*test that the list head data holds my unusedData */
+  fail_unless(llist.head->ptr == &unusedData_case1,
+              "head ptr should be first entry");
+  /*same goes for the list tail */
+  fail_unless(llist.tail == llist.head,
+              "tail and head should be the same");
+
+  /**
+   * testing Curl_llist_insert_next
+   * case 2:
+   * list has 1 element, adding one element after the head
+   * @assumptions:
+   * 1: the element next to head should be our newly created element
+   * 2: the list tail should be our newly created element
+   */
+
+  Curl_llist_insert_next(&llist, llist.head,
+                         &unusedData_case3, &case3_list);
+  fail_unless(llist.head->next->ptr == &unusedData_case3,
+              "the node next to head is not getting set correctly");
+  fail_unless(llist.tail->ptr == &unusedData_case3,
+              "the list tail is not getting set correctly");
+
+  /**
+   * testing Curl_llist_insert_next
+   * case 3:
+   * list has >1 element, adding one element after "NULL"
+   * @assumptions:
+   * 1: the element next to head should be our newly created element
+   * 2: the list tail should different from newly created element
+   */
+
+  Curl_llist_insert_next(&llist, llist.head,
+                         &unusedData_case2, &case2_list);
+  fail_unless(llist.head->next->ptr == &unusedData_case2,
+              "the node next to head is not getting set correctly");
+  /* better safe than sorry, check that the tail isn't corrupted */
+  fail_unless(llist.tail->ptr != &unusedData_case2,
+              "the list tail is not getting set correctly");
+
+  /* unit tests for Curl_llist_remove */
+
+  /**
+   * case 1:
+   * list has >1 element, removing head
+   * @assumptions:
+   * 1: list size will be decremented by one
+   * 2: head will be the head->next
+   * 3: "new" head's previous will be NULL
+   */
+
+  head=llist.head;
+  abort_unless(head, "llist.head is NULL");
+  element_next = head->next;
+  llist_size = Curl_llist_count(&llist);
+
+  Curl_llist_remove(&llist, llist.head, NULL);
+
+  fail_unless(Curl_llist_count(&llist) ==  (llist_size-1),
+               "llist size not decremented as expected");
+  fail_unless(llist.head == element_next,
+               "llist new head not modified properly");
+  abort_unless(llist.head, "llist.head is NULL");
+  fail_unless(llist.head->prev == NULL,
+              "new head previous not set to null");
+
+  /**
+   * case 2:
+   * removing non head element, with list having >=2 elements
+   * @setup:
+   * 1: insert another element to the list to make element >=2
+   * @assumptions:
+   * 1: list size will be decremented by one ; tested
+   * 2: element->previous->next will be element->next
+   * 3: element->next->previous will be element->previous
+   */
+  Curl_llist_insert_next(&llist, llist.head, &unusedData_case3,
+                         &case4_list);
+  llist_size = Curl_llist_count(&llist);
+  fail_unless(llist_size == 3, "should be 3 list members");
+
+  to_remove = llist.head->next;
+  abort_unless(to_remove, "to_remove is NULL");
+  element_next = to_remove->next;
+  element_prev = to_remove->prev;
+  Curl_llist_remove(&llist, to_remove, NULL);
+  fail_unless(element_prev->next == element_next,
+              "element previous->next is not being adjusted");
+  abort_unless(element_next, "element_next is NULL");
+  fail_unless(element_next->prev == element_prev,
+              "element next->previous is not being adjusted");
+
+  /**
+   * case 3:
+   * removing the tail with list having >=1 element
+   * @assumptions
+   * 1: list size will be decremented by one ;tested
+   * 2: element->previous->next will be element->next ;tested
+   * 3: element->next->previous will be element->previous ;tested
+   * 4: list->tail will be tail->previous
+   */
+
+  to_remove = llist.tail;
+  element_prev = to_remove->prev;
+  Curl_llist_remove(&llist, to_remove, NULL);
+  fail_unless(llist.tail == element_prev,
+              "llist tail is not being adjusted when removing tail");
+
+  /**
+   * case 4:
+   * removing head with list having 1 element
+   * @assumptions:
+   * 1: list size will be decremented by one ;tested
+   * 2: list head will be null
+   * 3: list tail will be null
+   */
+
+  to_remove = llist.head;
+  Curl_llist_remove(&llist, to_remove, NULL);
+  fail_unless(llist.head == NULL,
+              "llist head is not NULL while the llist is empty");
+  fail_unless(llist.tail == NULL,
+              "llist tail is not NULL while the llist is empty");
+
+  /* @testing Curl_llist_move(struct curl_llist *,
+   * struct curl_llist_element *, struct curl_llist *,
+   * struct curl_llist_element *);
+  */
+
+  /**
+   * @case 1:
+   * moving head from an llist containing one element to an empty llist
+   * @assumptions:
+   * 1: llist size will be 0
+   * 2: llist_destination size will be 1
+   * 3: llist head will be NULL
+   * 4: llist_destination head == llist_destination tail != NULL
+   */
+
+  /*
+  * @setup
+  * add one element to the list
+  */
+
+  Curl_llist_insert_next(&llist, llist.head, &unusedData_case1,
+                         &case5_list);
+  /* necessary assertions */
+
+  abort_unless(Curl_llist_count(&llist) == 1,
+  "Number of list elements is not as expected, Aborting");
+  abort_unless(Curl_llist_count(&llist_destination) == 0,
+  "Number of list elements is not as expected, Aborting");
+
+  /*actual testing code*/
+  Curl_llist_move(&llist, llist.head, &llist_destination, NULL);
+  fail_unless(Curl_llist_count(&llist) == 0,
+      "moving element from llist didn't decrement the size");
+
+  fail_unless(Curl_llist_count(&llist_destination) == 1,
+        "moving element to llist_destination didn't increment the size");
+
+  fail_unless(llist.head == NULL,
+      "llist head not set to null after moving the head");
+
+  fail_unless(llist_destination.head != NULL,
+        "llist_destination head set to null after moving an element");
+
+  fail_unless(llist_destination.tail != NULL,
+          "llist_destination tail set to null after moving an element");
+
+  fail_unless(llist_destination.tail == llist_destination.tail,
+            "llist_destination tail doesn't equal llist_destination head");
+}
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1301.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1301.c
new file mode 100644
index 0000000..aa86101
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1301.c
@@ -0,0 +1,54 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "strcase.h"
+
+static CURLcode unit_setup(void) {return CURLE_OK;}
+static void unit_stop(void) {}
+
+UNITTEST_START
+
+int rc;
+
+rc = curl_strequal("iii", "III");
+fail_unless(rc != 0, "return code should be zero");
+
+rc = curl_strequal("iiia", "III");
+fail_unless(rc == 0, "return code should be zero");
+
+rc = curl_strequal("iii", "IIIa");
+fail_unless(rc == 0, "return code should be zero");
+
+rc = curl_strequal("iiiA", "IIIa");
+fail_unless(rc != 0, "return code should be non-zero");
+
+rc = curl_strnequal("iii", "III", 3);
+fail_unless(rc != 0, "return code should be non-zero");
+
+rc = curl_strnequal("iiiABC", "IIIcba", 3);
+fail_unless(rc != 0, "return code should be non-zero");
+
+rc = curl_strnequal("ii", "II", 3);
+fail_unless(rc != 0, "return code should be non-zero");
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1302.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1302.c
new file mode 100644
index 0000000..8dae5aa
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1302.c
@@ -0,0 +1,161 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "urldata.h"
+#include "url.h" /* for Curl_safefree */
+#include "curl_base64.h"
+#include "memdebug.h" /* LAST include file */
+
+static struct Curl_easy *data;
+
+static CURLcode unit_setup(void)
+{
+  data = curl_easy_init();
+  if(!data)
+    return CURLE_OUT_OF_MEMORY;
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  curl_easy_cleanup(data);
+}
+
+UNITTEST_START
+
+char *output;
+unsigned char *decoded;
+size_t size = 0;
+unsigned char anychar = 'x';
+CURLcode rc;
+
+rc = Curl_base64_encode(data, "i", 1, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 4, "size should be 4");
+verify_memory(output, "aQ==", 4);
+Curl_safefree(output);
+
+rc = Curl_base64_encode(data, "ii", 2, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 4, "size should be 4");
+verify_memory(output, "aWk=", 4);
+Curl_safefree(output);
+
+rc = Curl_base64_encode(data, "iii", 3, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 4, "size should be 4");
+verify_memory(output, "aWlp", 4);
+Curl_safefree(output);
+
+rc = Curl_base64_encode(data, "iiii", 4, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 8, "size should be 8");
+verify_memory(output, "aWlpaQ==", 8);
+Curl_safefree(output);
+
+rc = Curl_base64_encode(data, "\xff\x01\xfe\x02", 4, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 8, "size should be 8");
+verify_memory(output, "/wH+Ag==", 8);
+Curl_safefree(output);
+
+rc = Curl_base64url_encode(data, "\xff\x01\xfe\x02", 4, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 8, "size should be 8");
+verify_memory(output, "_wH-Ag==", 8);
+Curl_safefree(output);
+
+rc = Curl_base64url_encode(data, "iiii", 4, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 8, "size should be 8");
+verify_memory(output, "aWlpaQ==", 8);
+Curl_safefree(output);
+
+/* 0 length makes it do strlen() */
+rc = Curl_base64_encode(data, "iiii", 0, &output, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 8, "size should be 8");
+verify_memory(output, "aWlpaQ==", 8);
+Curl_safefree(output);
+
+rc = Curl_base64_decode("aWlpaQ==", &decoded, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 4, "size should be 4");
+verify_memory(decoded, "iiii", 4);
+Curl_safefree(decoded);
+
+rc = Curl_base64_decode("aWlp", &decoded, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 3, "size should be 3");
+verify_memory(decoded, "iii", 3);
+Curl_safefree(decoded);
+
+rc = Curl_base64_decode("aWk=", &decoded, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 2, "size should be 2");
+verify_memory(decoded, "ii", 2);
+Curl_safefree(decoded);
+
+rc = Curl_base64_decode("aQ==", &decoded, &size);
+fail_unless(rc == CURLE_OK, "return code should be CURLE_OK");
+fail_unless(size == 1, "size should be 1");
+verify_memory(decoded, "i", 2);
+Curl_safefree(decoded);
+
+/* This is illegal input as the data is too short */
+size = 1; /* not zero */
+decoded = &anychar; /* not NULL */
+rc = Curl_base64_decode("aQ", &decoded, &size);
+fail_unless(rc == CURLE_BAD_CONTENT_ENCODING,
+            "return code should be CURLE_BAD_CONTENT_ENCODING");
+fail_unless(size == 0, "size should be 0");
+fail_if(decoded, "returned pointer should be NULL");
+
+/* This is illegal input as it contains three padding characters */
+size = 1; /* not zero */
+decoded = &anychar; /* not NULL */
+rc = Curl_base64_decode("a===", &decoded, &size);
+fail_unless(rc == CURLE_BAD_CONTENT_ENCODING,
+            "return code should be CURLE_BAD_CONTENT_ENCODING");
+fail_unless(size == 0, "size should be 0");
+fail_if(decoded, "returned pointer should be NULL");
+
+/* This is illegal input as it contains a padding character mid input */
+size = 1; /* not zero */
+decoded = &anychar; /* not NULL */
+rc = Curl_base64_decode("a=Q=", &decoded, &size);
+fail_unless(rc == CURLE_BAD_CONTENT_ENCODING,
+            "return code should be CURLE_BAD_CONTENT_ENCODING");
+fail_unless(size == 0, "size should be 0");
+fail_if(decoded, "returned pointer should be NULL");
+
+/* This is garbage input as it contains an illegal base64 character */
+size = 1; /* not zero */
+decoded = &anychar; /* not NULL */
+rc = Curl_base64_decode("a\x1f==", &decoded, &size);
+fail_unless(rc == CURLE_BAD_CONTENT_ENCODING,
+            "return code should be CURLE_BAD_CONTENT_ENCODING");
+fail_unless(size == 0, "size should be 0");
+fail_if(decoded, "returned pointer should be NULL");
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1303.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1303.c
new file mode 100644
index 0000000..10206ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1303.c
@@ -0,0 +1,145 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "urldata.h"
+#include "connect.h"
+#include "memdebug.h" /* LAST include file */
+
+static struct Curl_easy *data;
+
+static CURLcode unit_setup(void)
+{
+  data = curl_easy_init();
+  if(!data)
+    return CURLE_OUT_OF_MEMORY;
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  curl_easy_cleanup(data);
+}
+
+/* BASE is just a define to make us fool around with decently large number so
+   that we aren't zero-based */
+#define BASE 1000000
+
+/* macro to set the pretended current time */
+#define NOW(x,y) now.tv_sec = x; now.tv_usec = y
+/* macro to set the millisecond based timeouts to use */
+#define TIMEOUTS(x,y) data->set.timeout = x; data->set.connecttimeout = y
+
+/*
+ * To test:
+ *
+ * 00/10/01/11 timeouts set
+ * 0/1         during connect
+ * T           various values on the timeouts
+ * N           various values of now
+ */
+
+struct timetest {
+  int now_s;
+  int now_us;
+  int timeout_ms;
+  int connecttimeout_ms;
+  bool connecting;
+  time_t result;
+  const char *comment;
+};
+
+UNITTEST_START
+{
+  struct timeval now;
+  time_t timeout;
+  unsigned int i;
+
+  const struct timetest run[] = {
+  /* both timeouts set, not connecting */
+  {BASE + 4, 0,      10000, 8000, FALSE, 6000, "6 seconds should be left"},
+  {BASE + 4, 990000, 10000, 8000, FALSE, 5010, "5010 ms should be left"},
+  {BASE + 10, 0,     10000, 8000, FALSE, -1,   "timeout is -1, expired"},
+  {BASE + 12, 0,     10000, 8000, FALSE, -2000, "-2000, overdue 2 seconds"},
+
+  /* both timeouts set, connecting */
+  {BASE + 4, 0,      10000, 8000, TRUE, 4000, "4 seconds should be left"},
+  {BASE + 4, 990000, 10000, 8000, TRUE, 3010, "3010 ms should be left"},
+  {BASE + 8, 0,      10000, 8000, TRUE, -1,   "timeout is -1, expired"},
+  {BASE + 10, 0,     10000, 8000, TRUE, -2000, "-2000, overdue 2 seconds"},
+
+  /* no connect timeout set, not connecting */
+  {BASE + 4, 0,      10000, 0, FALSE, 6000, "6 seconds should be left"},
+  {BASE + 4, 990000, 10000, 0, FALSE, 5010, "5010 ms should be left"},
+  {BASE + 10, 0,     10000, 0, FALSE, -1,   "timeout is -1, expired"},
+  {BASE + 12, 0,     10000, 0, FALSE, -2000, "-2000, overdue 2 seconds"},
+
+  /* no connect timeout set, connecting */
+  {BASE + 4, 0,      10000, 0, FALSE, 6000, "6 seconds should be left"},
+  {BASE + 4, 990000, 10000, 0, FALSE, 5010, "5010 ms should be left"},
+  {BASE + 10, 0,     10000, 0, FALSE, -1,   "timeout is -1, expired"},
+  {BASE + 12, 0,     10000, 0, FALSE, -2000, "-2000, overdue 2 seconds"},
+
+  /* only connect timeout set, not connecting */
+  {BASE + 4, 0,      0, 10000, FALSE, 0, "no timeout active"},
+  {BASE + 4, 990000, 0, 10000, FALSE, 0, "no timeout active"},
+  {BASE + 10, 0,     0, 10000, FALSE, 0, "no timeout active"},
+  {BASE + 12, 0,     0, 10000, FALSE, 0, "no timeout active"},
+
+  /* only connect timeout set, connecting */
+  {BASE + 4, 0,      0, 10000, TRUE, 6000, "6 seconds should be left"},
+  {BASE + 4, 990000, 0, 10000, TRUE, 5010, "5010 ms should be left"},
+  {BASE + 10, 0,     0, 10000, TRUE, -1,   "timeout is -1, expired"},
+  {BASE + 12, 0,     0, 10000, TRUE, -2000, "-2000, overdue 2 seconds"},
+
+  /* no timeout set, not connecting */
+  {BASE + 4, 0,      0, 0, FALSE, 0, "no timeout active"},
+  {BASE + 4, 990000, 0, 0, FALSE, 0, "no timeout active"},
+  {BASE + 10, 0,     0, 0, FALSE, 0, "no timeout active"},
+  {BASE + 12, 0,     0, 0, FALSE, 0, "no timeout active"},
+
+  /* no timeout set, connecting */
+  {BASE + 4, 0,      0, 0, TRUE, 296000, "no timeout active"},
+  {BASE + 4, 990000, 0, 0, TRUE, 295010, "no timeout active"},
+  {BASE + 10, 0,     0, 0, TRUE, 290000, "no timeout active"},
+  {BASE + 12, 0,     0, 0, TRUE, 288000, "no timeout active"},
+
+  /* both timeouts set, connecting, connect timeout the longer one */
+  {BASE + 4, 0,      10000, 12000, TRUE, 6000, "6 seconds should be left"},
+
+  };
+
+  /* this is the pretended start time of the transfer */
+  data->progress.t_startsingle.tv_sec = BASE;
+  data->progress.t_startsingle.tv_usec = 0;
+  data->progress.t_startop.tv_sec = BASE;
+  data->progress.t_startop.tv_usec = 0;
+
+  for(i=0; i < sizeof(run)/sizeof(run[0]); i++) {
+    NOW(run[i].now_s, run[i].now_us);
+    TIMEOUTS(run[i].timeout_ms, run[i].connecttimeout_ms);
+    timeout =  Curl_timeleft(data, &now, run[i].connecting);
+    if(timeout != run[i].result)
+      fail(run[i].comment);
+  }
+}
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1304.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1304.c
new file mode 100644
index 0000000..83375f5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1304.c
@@ -0,0 +1,189 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+#include "netrc.h"
+#include "memdebug.h" /* LAST include file */
+
+static char *login;
+static char *password;
+static char filename[64];
+
+static CURLcode unit_setup(void)
+{
+  password = strdup("");
+  login = strdup("");
+  if(!password || !login) {
+    Curl_safefree(password);
+    Curl_safefree(login);
+    return CURLE_OUT_OF_MEMORY;
+  }
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  Curl_safefree(password);
+  Curl_safefree(login);
+}
+
+UNITTEST_START
+  int result;
+
+  static const char * const filename1 = "log/netrc1304";
+  memcpy(filename, filename1, strlen(filename1));
+
+  /*
+   * Test a non existent host in our netrc file.
+   */
+  result = Curl_parsenetrc("test.example.com", &login, &password, filename);
+  fail_unless(result == 1, "Host not found should return 1");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(password[0] == 0, "password should not have been changed");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(login[0] == 0, "login should not have been changed");
+
+  /*
+   * Test a non existent login in our netrc file.
+   */
+  free(login);
+  login = strdup("me");
+  abort_unless(login != NULL, "returned NULL!");
+  result = Curl_parsenetrc("example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should be found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(password[0] == 0, "password should not have been changed");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "me", 2) == 0,
+              "login should not have been changed");
+
+  /*
+   * Test a non existent login and host in our netrc file.
+   */
+  free(login);
+  login = strdup("me");
+  abort_unless(login != NULL, "returned NULL!");
+  result = Curl_parsenetrc("test.example.com", &login, &password, filename);
+  fail_unless(result == 1, "Host should be found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(password[0] == 0, "password should not have been changed");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "me", 2) == 0,
+              "login should not have been changed");
+
+  /*
+   * Test a non existent login (substring of an existing one) in our
+   * netrc file.
+   */
+  free(login);
+  login = strdup("admi");
+  abort_unless(login != NULL, "returned NULL!");
+  result = Curl_parsenetrc("example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should be found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(password[0] == 0, "password should not have been changed");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "admi", 4) == 0,
+              "login should not have been changed");
+
+  /*
+   * Test a non existent login (superstring of an existing one)
+   * in our netrc file.
+   */
+  free(login);
+  login = strdup("adminn");
+  abort_unless(login != NULL, "returned NULL!");
+  result = Curl_parsenetrc("example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should be found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(password[0] == 0, "password should not have been changed");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "adminn", 6) == 0,
+              "login should not have been changed");
+
+  /*
+   * Test for the first existing host in our netrc file
+   * with login[0] = 0.
+   */
+  free(login);
+  login = strdup("");
+  abort_unless(login != NULL, "returned NULL!");
+  result = Curl_parsenetrc("example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should have been found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(strncmp(password, "passwd", 6) == 0,
+              "password should be 'passwd'");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "admin", 5) == 0, "login should be 'admin'");
+
+  /*
+   * Test for the first existing host in our netrc file
+   * with login[0] != 0.
+   */
+  free(password);
+  password = strdup("");
+  abort_unless(password != NULL, "returned NULL!");
+  result = Curl_parsenetrc("example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should have been found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(strncmp(password, "passwd", 6) == 0,
+              "password should be 'passwd'");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "admin", 5) == 0, "login should be 'admin'");
+
+  /*
+   * Test for the second existing host in our netrc file
+   * with login[0] = 0.
+   */
+  free(password);
+  password = strdup("");
+  abort_unless(password != NULL, "returned NULL!");
+  free(login);
+  login = strdup("");
+  abort_unless(login != NULL, "returned NULL!");
+  result = Curl_parsenetrc("curl.example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should have been found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(strncmp(password, "none", 4) == 0,
+              "password should be 'none'");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "none", 4) == 0, "login should be 'none'");
+
+  /*
+   * Test for the second existing host in our netrc file
+   * with login[0] != 0.
+   */
+  free(password);
+  password = strdup("");
+  abort_unless(password != NULL, "returned NULL!");
+  result = Curl_parsenetrc("curl.example.com", &login, &password, filename);
+  fail_unless(result == 0, "Host should have been found");
+  abort_unless(password != NULL, "returned NULL!");
+  fail_unless(strncmp(password, "none", 4) == 0,
+              "password should be 'none'");
+  abort_unless(login != NULL, "returned NULL!");
+  fail_unless(strncmp(login, "none", 4) == 0, "login should be 'none'");
+
+  /* TODO:
+   * Test over the size limit password / login!
+   * Test files with a bad format
+   */
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1305.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1305.c
new file mode 100644
index 0000000..b958d04
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1305.c
@@ -0,0 +1,139 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#ifdef HAVE_NETINET_IN_H
+#  include <netinet/in.h>
+#endif
+#ifdef HAVE_NETDB_H
+#  include <netdb.h>
+#endif
+#ifdef HAVE_ARPA_INET_H
+#  include <arpa/inet.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+#include "curlx.h"
+
+#include "hash.h"
+#include "hostip.h"
+
+#include "memdebug.h" /* LAST include file */
+
+static struct Curl_easy *data;
+static struct curl_hash hp;
+static char *data_key;
+static struct Curl_dns_entry *data_node;
+
+static CURLcode unit_setup(void)
+{
+  int rc;
+  data = curl_easy_init();
+  if(!data)
+    return CURLE_OUT_OF_MEMORY;
+
+  rc = Curl_mk_dnscache(&hp);
+  if(rc) {
+    curl_easy_cleanup(data);
+    curl_global_cleanup();
+    return CURLE_OUT_OF_MEMORY;
+  }
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  if(data_node) {
+    Curl_freeaddrinfo(data_node->addr);
+    free(data_node);
+  }
+  free(data_key);
+  Curl_hash_destroy(&hp);
+
+  curl_easy_cleanup(data);
+  curl_global_cleanup();
+}
+
+static Curl_addrinfo *fake_ai(void)
+{
+  static Curl_addrinfo *ai;
+
+  ai = calloc(1, sizeof(Curl_addrinfo));
+  if(!ai)
+    return NULL;
+
+  ai->ai_canonname = strdup("dummy");
+  if(!ai->ai_canonname) {
+    free(ai);
+    return NULL;
+  }
+
+  ai->ai_addr = calloc(1, sizeof(struct sockaddr_in));
+  if(!ai->ai_addr) {
+    free(ai->ai_canonname);
+    free(ai);
+    return NULL;
+  }
+
+  ai->ai_family = AF_INET;
+  ai->ai_addrlen = sizeof(struct sockaddr_in);
+
+  return ai;
+}
+
+static CURLcode create_node(void)
+{
+  data_key = aprintf("%s:%d", "dummy", 0);
+  if(!data_key)
+    return CURLE_OUT_OF_MEMORY;
+
+  data_node = calloc(1, sizeof(struct Curl_dns_entry));
+  if(!data_node)
+    return CURLE_OUT_OF_MEMORY;
+
+  data_node->addr = fake_ai();
+  if(!data_node->addr)
+    return CURLE_OUT_OF_MEMORY;
+
+  return CURLE_OK;
+}
+
+
+UNITTEST_START
+
+  struct Curl_dns_entry *nodep;
+  size_t key_len;
+
+  /* Test 1305 exits without adding anything to the hash */
+  if(strcmp(arg, "1305") != 0) {
+    CURLcode rc = create_node();
+    abort_unless(rc == CURLE_OK, "data node creation failed");
+    key_len = strlen(data_key);
+
+    data_node->inuse = 1; /* hash will hold the reference */
+    nodep = Curl_hash_add(&hp, data_key, key_len+1, data_node);
+    abort_unless(nodep, "insertion into hash failed");
+    /* Freeing will now be done by Curl_hash_destroy */
+    data_node = NULL;
+  }
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1307.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1307.c
new file mode 100644
index 0000000..5764622
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1307.c
@@ -0,0 +1,234 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "curl_fnmatch.h"
+
+#define MATCH   CURL_FNMATCH_MATCH
+#define NOMATCH CURL_FNMATCH_NOMATCH
+#define RE_ERR  CURL_FNMATCH_FAIL
+
+#define MAX_PATTERN_L 100
+#define MAX_STRING_L  100
+
+struct testcase {
+  char pattern[MAX_PATTERN_L];
+  char string[MAX_STRING_L];
+  int  result;
+};
+
+static const struct testcase tests[] = {
+  /* brackets syntax */
+  { "\\[",                      "[",                      MATCH },
+  { "[",                        "[",                      RE_ERR },
+  { "[]",                       "[]",                     RE_ERR },
+  { "[][]",                     "[",                      MATCH },
+  { "[][]",                     "]",                      MATCH },
+  { "[[]",                      "[",                      MATCH },
+  { "[[[]",                     "[",                      MATCH },
+  { "[[[[]",                    "[",                      MATCH },
+  { "[[[[]",                    "[",                      MATCH },
+
+  { "[][[]",                    "]",                      MATCH },
+  { "[][[[]",                   "[",                      MATCH },
+  { "[[]",                      "]",                      NOMATCH },
+
+  { "[a-z]",                    "a",                      MATCH },
+  { "[a-z]",                    "A",                      NOMATCH },
+  { "?[a-z]",                   "?Z",                     NOMATCH },
+  { "[A-Z]",                    "C",                      MATCH },
+  { "[A-Z]",                    "c",                      NOMATCH },
+  { "[0-9]",                    "7",                      MATCH },
+  { "[7-8]",                    "7",                      MATCH },
+  { "[7-]",                     "7",                      MATCH },
+  { "[7-]",                     "-",                      MATCH },
+  { "[7-]",                     "[",                      NOMATCH },
+  { "[a-bA-F]",                 "F",                      MATCH },
+  { "[a-bA-B9]",                "9",                      MATCH },
+  { "[a-bA-B98]",               "8",                      MATCH },
+  { "[a-bA-B98]",               "C",                      NOMATCH },
+  { "[a-bA-Z9]",                "F",                      MATCH },
+  { "[a-bA-Z9]ero*",            "Zero chance.",           MATCH },
+  { "S[a-][x]opho*",            "Saxophone",              MATCH },
+  { "S[a-][x]opho*",            "SaXophone",              NOMATCH },
+  { "S[a-][x]*.txt",            "S-x.txt",                MATCH },
+  { "[\\a-\\b]",                "a",                      MATCH },
+  { "[\\a-\\b]",                "b",                      MATCH },
+  { "[?*[][?*[][?*[]",          "?*[",                    MATCH },
+  { "[][?*-]",                  "]",                      MATCH },
+  { "[][?*-]",                  "[",                      MATCH },
+  { "[][?*-]",                  "?",                      MATCH },
+  { "[][?*-]",                  "*",                      MATCH },
+  { "[][?*-]",                  "-",                      MATCH },
+  { "[]?*-]",                   "-",                      MATCH },
+  { "?/b/c",                    "a/b/c",                  MATCH },
+  { "^_{}~",                    "^_{}~",                  MATCH },
+  { "!#%+,-./01234567889",      "!#%+,-./01234567889",    MATCH },
+  { "PQRSTUVWXYZ]abcdefg",      "PQRSTUVWXYZ]abcdefg",    MATCH },
+  { ":;=@ABCDEFGHIJKLMNO",      ":;=@ABCDEFGHIJKLMNO",    MATCH },
+
+  /* negate */
+  { "[!a]",                     "b",                      MATCH },
+  { "[!a]",                     "a",                      NOMATCH },
+  { "[^a]",                     "b",                      MATCH },
+  { "[^a]",                     "a",                      NOMATCH },
+  { "[^a-z0-9A-Z]",             "a",                      NOMATCH },
+  { "[^a-z0-9A-Z]",             "-",                      MATCH },
+  { "curl[!a-z]lib",            "curl lib",               MATCH },
+  { "curl[! ]lib",              "curl lib",               NOMATCH },
+  { "[! ][ ]",                  "  ",                     NOMATCH },
+  { "[! ][ ]",                  "a ",                     MATCH },
+  { "*[^a].t?t",                "a.txt",                  NOMATCH },
+  { "*[^a].t?t",                "ba.txt",                 NOMATCH },
+  { "*[^a].t?t",                "ab.txt",                 MATCH },
+  { "[!?*[]",                   "?",                      NOMATCH },
+  { "[!!]",                     "!",                      NOMATCH },
+  { "[!!]",                     "x",                      MATCH },
+
+  { "[[:alpha:]]",              "a",                      MATCH },
+  { "[[:alpha:]]",              "9",                      NOMATCH },
+  { "[[:alnum:]]",              "a",                      MATCH },
+  { "[[:alnum:]]",              "[",                      NOMATCH },
+  { "[[:alnum:]]",              "]",                      NOMATCH },
+  { "[[:alnum:]]",              "9",                      MATCH },
+  { "[[:digit:]]",              "9",                      MATCH },
+  { "[[:xdigit:]]",             "9",                      MATCH },
+  { "[[:xdigit:]]",             "F",                      MATCH },
+  { "[[:xdigit:]]",             "G",                      NOMATCH },
+  { "[[:upper:]]",              "U",                      MATCH },
+  { "[[:upper:]]",              "u",                      NOMATCH },
+  { "[[:lower:]]",              "l",                      MATCH },
+  { "[[:lower:]]",              "L",                      NOMATCH },
+  { "[[:print:]]",              "L",                      MATCH },
+  { "[[:print:]]",              {'\10'},                  NOMATCH },
+  { "[[:print:]]",              {'\10'},                  NOMATCH },
+  { "[[:space:]]",              " ",                      MATCH },
+  { "[[:space:]]",              "x",                      NOMATCH },
+  { "[[:graph:]]",              " ",                      NOMATCH },
+  { "[[:graph:]]",              "x",                      MATCH },
+  { "[[:blank:]]",              {'\t'},                   MATCH },
+  { "[[:blank:]]",              {' '},                    MATCH },
+  { "[[:blank:]]",              {'\r'},                   NOMATCH },
+  { "[^[:blank:]]",             {'\t'},                   NOMATCH },
+  { "[^[:print:]]",             {'\10'},                  MATCH },
+  { "[[:lower:]][[:lower:]]",   "ll",                     MATCH },
+
+  { "Curl[[:blank:]];-)",       "Curl ;-)",               MATCH },
+  { "*[[:blank:]]*",            " ",                      MATCH },
+  { "*[[:blank:]]*",            "",                       NOMATCH },
+  { "*[[:blank:]]*",            "hi, im_Pavel",           MATCH },
+
+  /* common using */
+  { "filename.dat",             "filename.dat",           MATCH },
+  { "*curl*",                   "lets use curl!!",        MATCH },
+  { "filename.txt",             "filename.dat",           NOMATCH },
+  { "*.txt",                    "text.txt",               MATCH },
+  { "*.txt",                    "a.txt",                  MATCH },
+  { "*.txt",                    ".txt",                   MATCH },
+  { "*.txt",                    "txt",                    NOMATCH },
+  { "??.txt",                   "99.txt",                 MATCH },
+  { "??.txt",                   "a99.txt",                NOMATCH },
+  { "?.???",                    "a.txt",                  MATCH },
+  { "*.???",                    "somefile.dat",           MATCH },
+  { "*.???",                    "photo.jpeg",             NOMATCH },
+  { ".*",                       ".htaccess",              MATCH },
+  { ".*",                       ".",                      MATCH },
+  { ".*",                       "..",                     MATCH },
+
+  /* many stars => one star */
+  { "**.txt",                   "text.txt",               MATCH },
+  { "***.txt",                  "t.txt",                  MATCH },
+  { "****.txt",                 ".txt",                   MATCH },
+
+  /* empty string or pattern */
+  { "",                         "",                       MATCH },
+  { "",                         "hello",                  NOMATCH },
+  { "file",                     "",                       NOMATCH  },
+  { "?",                        "",                       NOMATCH },
+  { "*",                        "",                       MATCH },
+  { "x",                        "",                       NOMATCH },
+
+  /* backslash */
+  { "\\",                       "\\",                     RE_ERR },
+  { "\\\\",                     "\\",                     MATCH },
+  { "\\\\",                     "\\\\",                   NOMATCH },
+  { "\\?",                      "?",                      MATCH },
+  { "\\*",                      "*",                      MATCH },
+  { "?.txt",                    "?.txt",                  MATCH },
+  { "*.txt",                    "*.txt",                  MATCH },
+  { "\\?.txt",                  "?.txt",                  MATCH },
+  { "\\*.txt",                  "*.txt",                  MATCH },
+  { "\\?.txt",                  "x.txt",                  NOMATCH },
+  { "\\*.txt",                  "x.txt",                  NOMATCH },
+  { "\\*\\\\.txt",              "*\\.txt",                MATCH },
+  { "*\\**\\?*\\\\*",           "cc*cc?cc\\cc*cc",        MATCH },
+  { "*\\**\\?*\\\\*",           "cc*cc?cccc",             NOMATCH },
+  { "*\\**\\?*\\\\*",           "cc*cc?cc\\cc*cc",        MATCH },
+  { "*\\?*\\**",                "cc?c*c",                 MATCH },
+  { "*\\?*\\**curl*",           "cc?c*curl",              MATCH },
+  { "*\\?*\\**",                "cc?cc",                  NOMATCH },
+  { "\\\"\\$\\&\\'\\(\\)",      "\"$&'()",                MATCH },
+  { "\\*\\?\\[\\\\\\`\\|",      "*?[\\`|",                MATCH },
+  { "[\\a\\b]c",                "ac",                     MATCH },
+  { "[\\a\\b]c",                "bc",                     MATCH },
+  { "[\\a\\b]d",                "bc",                     NOMATCH },
+  { "[a-bA-B\\?]",              "?",                      MATCH },
+  { "cu[a-ab-b\\r]l",           "curl",                   MATCH },
+  { "[\\a-z]",                  "c",                      MATCH },
+
+  { "?*?*?.*?*",                "abc.c",                  MATCH },
+  { "?*?*?.*?*",                "abcc",                   NOMATCH },
+  { "?*?*?.*?*",                "abc.",                   NOMATCH },
+  { "?*?*?.*?*",                "abc.c++",                MATCH },
+  { "?*?*?.*?*",                "abcdef.c++",             MATCH },
+  { "?*?*?.?",                  "abcdef.c",               MATCH },
+  { "?*?*?.?",                  "abcdef.cd",              NOMATCH },
+
+  { "Lindmätarv",               "Lindmätarv",             MATCH },
+
+  { "",                         "",                       MATCH }
+};
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+}
+
+UNITTEST_START
+
+  int testnum = sizeof(tests) / sizeof(struct testcase);
+  int i, rc;
+
+  for(i = 0; i < testnum; i++) {
+    rc = Curl_fnmatch(NULL, tests[i].pattern, tests[i].string);
+    if(rc != tests[i].result) {
+      printf("Curl_fnmatch(\"%s\", \"%s\") should return %d (returns %d)\n",
+             tests[i].pattern, tests[i].string, tests[i].result, rc);
+      fail("pattern mismatch");
+    }
+  }
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1308.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1308.c
new file mode 100644
index 0000000..5c1a008
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1308.c
@@ -0,0 +1,95 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include <curl/curl.h>
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+static size_t print_httppost_callback(void *arg, const char *buf, size_t len)
+{
+  fwrite(buf, len, 1, stdout);
+  (*(size_t *) arg) += len;
+  return len;
+}
+
+UNITTEST_START
+  int rc;
+  struct curl_httppost *post = NULL;
+  struct curl_httppost *last = NULL;
+  size_t total_size = 0;
+  char buffer[] = "test buffer";
+
+  rc = curl_formadd(&post, &last, CURLFORM_COPYNAME, "name",
+                    CURLFORM_COPYCONTENTS, "content", CURLFORM_END);
+
+  fail_unless(rc == 0, "curl_formadd returned error");
+
+  /* after the first curl_formadd when there's a single entry, both pointers
+     should point to the same struct */
+  fail_unless(post == last, "post and last weren't the same");
+
+  rc = curl_formadd(&post, &last, CURLFORM_COPYNAME, "htmlcode",
+                    CURLFORM_COPYCONTENTS, "<HTML></HTML>",
+                    CURLFORM_CONTENTTYPE, "text/html", CURLFORM_END);
+
+  fail_unless(rc == 0, "curl_formadd returned error");
+
+  rc = curl_formadd(&post, &last, CURLFORM_COPYNAME, "name_for_ptrcontent",
+                   CURLFORM_PTRCONTENTS, buffer, CURLFORM_END);
+
+  fail_unless(rc == 0, "curl_formadd returned error");
+
+  rc = curl_formget(post, &total_size, print_httppost_callback);
+
+  fail_unless(rc == 0, "curl_formget returned error");
+
+  fail_unless(total_size == 486, "curl_formget got wrong size back");
+
+  curl_formfree(post);
+
+  /* start a new formpost with a file upload and formget */
+  post = last = NULL;
+
+  rc = curl_formadd(&post, &last,
+                    CURLFORM_PTRNAME, "name of file field",
+                    CURLFORM_FILE, "log/test-1308",
+                    CURLFORM_FILENAME, "custom named file",
+                    CURLFORM_END);
+
+  fail_unless(rc == 0, "curl_formadd returned error");
+
+  rc = curl_formget(post, &total_size, print_httppost_callback);
+  fail_unless(rc == 0, "curl_formget returned error");
+  fail_unless(total_size == 847, "curl_formget got wrong size back");
+
+  curl_formfree(post);
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1309.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1309.c
new file mode 100644
index 0000000..6cf886e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1309.c
@@ -0,0 +1,142 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "splay.h"
+
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+static void splayprint(struct Curl_tree * t, int d, char output)
+{
+  struct Curl_tree *node;
+  int i;
+  int count;
+  if(t == NULL)
+    return;
+
+  splayprint(t->larger, d+1, output);
+  for(i=0; i<d; i++)
+    if(output)
+      printf("  ");
+
+  if(output) {
+    printf("%ld.%ld[%d]", (long)t->key.tv_sec,
+           (long)t->key.tv_usec, i);
+  }
+
+  for(count=0, node = t->samen; node != t; node = node->samen, count++)
+    ;
+
+  if(output) {
+    if(count)
+      printf(" [%d more]\n", count);
+    else
+      printf("\n");
+  }
+
+  splayprint(t->smaller, d+1, output);
+}
+
+UNITTEST_START
+
+/* number of nodes to add to the splay tree */
+#define NUM_NODES 50
+
+  struct Curl_tree *root, *removed;
+  struct Curl_tree nodes[NUM_NODES*3];
+  int rc;
+  int i, j;
+  struct timeval tv_now = {0, 0};
+  root = NULL;              /* the empty tree */
+
+  /* add nodes */
+  for(i = 0; i < NUM_NODES; i++) {
+    struct timeval key;
+
+    key.tv_sec = 0;
+    key.tv_usec = (541*i)%1023;
+
+    nodes[i].payload = (void *)key.tv_usec; /* for simplicity */
+    root = Curl_splayinsert(key, root, &nodes[i]);
+  }
+
+  puts("Result:");
+  splayprint(root, 0, 1);
+
+  for(i = 0; i < NUM_NODES; i++) {
+    int rem = (i+7)%NUM_NODES;
+    printf("Tree look:\n");
+    splayprint(root, 0, 1);
+    printf("remove pointer %d, payload %ld\n", rem,
+           (long)(nodes[rem].payload));
+    rc = Curl_splayremovebyaddr(root, &nodes[rem], &root);
+    if(rc) {
+      /* failed! */
+      printf("remove %d failed!\n", rem);
+      fail("remove");
+    }
+  }
+
+  fail_unless(root == NULL, "tree not empty after removing all nodes");
+
+  /* rebuild tree */
+  for(i = 0; i < NUM_NODES; i++) {
+    struct timeval key;
+
+    key.tv_sec = 0;
+    key.tv_usec = (541*i)%1023;
+
+    /* add some nodes with the same key */
+    for(j = 0; j <= i % 3; j++) {
+      nodes[i*3+j].payload = (void *)(key.tv_usec*10 + j); /* for simplicity */
+      root = Curl_splayinsert(key, root, &nodes[i*3+j]);
+    }
+  }
+
+  removed = NULL;
+  for(i = 0; i <= 1100; i+= 100) {
+    printf("Removing nodes not larger than %d\n", i);
+    tv_now.tv_usec = i;
+    root = Curl_splaygetbest(tv_now, root, &removed);
+    while(removed != NULL) {
+      printf("removed payload %ld[%ld]\n", (long)(removed->payload) / 10,
+             (long)(removed->payload) % 10);
+      root = Curl_splaygetbest(tv_now, root, &removed);
+    }
+  }
+
+  fail_unless(root == NULL, "tree not empty when it should be");
+
+UNITTEST_STOP
+
+
+
+
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1330.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1330.c
new file mode 100644
index 0000000..e6431bb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1330.c
@@ -0,0 +1,41 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "memdebug.h"
+
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+}
+
+UNITTEST_START
+
+char *ptr = malloc(1330);
+Curl_safefree(ptr);
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1394.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1394.c
new file mode 100644
index 0000000..667991d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1394.c
@@ -0,0 +1,126 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "tool_getparam.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "memdebug.h" /* LAST include file */
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+UNITTEST_START
+
+  const char *values[] = {
+    /* -E parameter */        /* exp. cert name */  /* exp. passphrase */
+    "foo:bar:baz",            "foo",                "bar:baz",
+    "foo\\:bar:baz",          "foo:bar",            "baz",
+    "foo\\\\:bar:baz",        "foo\\",              "bar:baz",
+    "foo:bar\\:baz",          "foo",                "bar\\:baz",
+    "foo:bar\\\\:baz",        "foo",                "bar\\\\:baz",
+    "foo\\bar\\baz",          "foo\\bar\\baz",      NULL,
+    "foo\\\\bar\\\\baz",      "foo\\bar\\baz",      NULL,
+    "foo\\",                  "foo\\",              NULL,
+    "foo\\\\",                "foo\\",              NULL,
+    "foo:bar\\",              "foo",                "bar\\",
+    "foo:bar\\\\",            "foo",                "bar\\\\",
+    "foo:bar:",               "foo",                "bar:",
+    "foo\\::bar\\:",          "foo:",               "bar\\:",
+#ifdef WIN32
+    "c:\\foo:bar:baz",        "c:\\foo",            "bar:baz",
+    "c:\\foo\\:bar:baz",      "c:\\foo:bar",        "baz",
+    "c:\\foo\\\\:bar:baz",    "c:\\foo\\",          "bar:baz",
+    "c:\\foo:bar\\:baz",      "c:\\foo",            "bar\\:baz",
+    "c:\\foo:bar\\\\:baz",    "c:\\foo",            "bar\\\\:baz",
+    "c:\\foo\\bar\\baz",      "c:\\foo\\bar\\baz",  NULL,
+    "c:\\foo\\\\bar\\\\baz",  "c:\\foo\\bar\\baz",  NULL,
+    "c:\\foo\\",              "c:\\foo\\",          NULL,
+    "c:\\foo\\\\",            "c:\\foo\\",          NULL,
+    "c:\\foo:bar\\",          "c:\\foo",            "bar\\",
+    "c:\\foo:bar\\\\",        "c:\\foo",            "bar\\\\",
+    "c:\\foo:bar:",           "c:\\foo",            "bar:",
+    "c:\\foo\\::bar\\:",      "c:\\foo:",           "bar\\:",
+#endif
+    NULL,                     NULL,                 NULL,
+  };
+  const char **p;
+  char *certname, *passphrase;
+  for(p = values; *p; p += 3) {
+    parse_cert_parameter(p[0], &certname, &passphrase);
+    if(p[1]) {
+      if(certname) {
+        if(strcmp(p[1], certname)) {
+          printf("expected certname '%s' but got '%s' "
+              "for -E param '%s'\n", p[1], certname, p[0]);
+          fail("assertion failure");
+        }
+      }
+      else {
+        printf("expected certname '%s' but got NULL "
+            "for -E param '%s'\n", p[1], p[0]);
+        fail("assertion failure");
+      }
+    }
+    else {
+      if(certname) {
+        printf("expected certname NULL but got '%s' "
+            "for -E param '%s'\n", certname, p[0]);
+        fail("assertion failure");
+      }
+    }
+    if(p[2]) {
+      if(passphrase) {
+        if(strcmp(p[2], passphrase)) {
+          printf("expected passphrase '%s' but got '%s'"
+              "for -E param '%s'\n", p[2], passphrase, p[0]);
+          fail("assertion failure");
+        }
+      }
+      else {
+        printf("expected passphrase '%s' but got NULL "
+            "for -E param '%s'\n", p[2], p[0]);
+        fail("assertion failure");
+      }
+    }
+    else {
+      if(passphrase) {
+        printf("expected passphrase NULL but got '%s' "
+            "for -E param '%s'\n", passphrase, p[0]);
+        fail("assertion failure");
+      }
+    }
+    if(certname) free(certname);
+    if(passphrase) free(passphrase);
+  }
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1395.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1395.c
new file mode 100644
index 0000000..13ea97b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1395.c
@@ -0,0 +1,94 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "dotdot.h"
+
+#include "memdebug.h"
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+struct dotdot {
+  const char *input;
+  const char *output;
+};
+
+UNITTEST_START
+
+  unsigned int i;
+  int fails=0;
+  const struct dotdot pairs[] = {
+    { "/a/b/c/./../../g", "/a/g" },
+    { "mid/content=5/../6", "mid/6" },
+    { "/hello/../moo", "/moo" },
+    { "/1/../1", "/1" },
+    { "/1/./1", "/1/1" },
+    { "/1/..", "/" },
+    { "/1/.", "/1/" },
+    { "/1/./..", "/" },
+    { "/1/./../2", "/2" },
+    { "/hello/1/./../2", "/hello/2" },
+    { "test/this", "test/this" },
+    { "test/this/../now", "test/now" },
+    { "/1../moo../foo", "/1../moo../foo"},
+    { "/../../moo", "/moo"},
+    { "/../../moo?andnot/../yay", "/moo?andnot/../yay"},
+    { "/123?foo=/./&bar=/../", "/123?foo=/./&bar=/../"},
+    { "/../moo/..?what", "/?what" },
+    { "/", "/" },
+    { "", "" },
+    { "/.../", "/.../" },
+    { "./moo", "moo" },
+    { "../moo", "moo" },
+    { "/.", "/" },
+    { "/..", "/" },
+    { "/moo/..", "/" },
+    { "..", "" },
+    { ".", "" },
+  };
+
+  for(i=0; i < sizeof(pairs)/sizeof(pairs[0]); i++) {
+    char *out = Curl_dedotdotify(pairs[i].input);
+    abort_unless(out != NULL, "returned NULL!");
+
+    if(strcmp(out, pairs[i].output)) {
+      fprintf(stderr, "Test %d: '%s' gave '%s' instead of '%s'\n",
+              i, pairs[i].input, out, pairs[i].output);
+      fail("Test case output mismatched");
+      fails++;
+    }
+    else
+      fprintf(stderr, "Test %d: OK\n", i);
+    free(out);
+  }
+
+  fail_if(fails, "output mismatched");
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1396.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1396.c
new file mode 100644
index 0000000..f3275fd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1396.c
@@ -0,0 +1,111 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+static CURL *hnd;
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  if(hnd)
+    curl_easy_cleanup(hnd);
+}
+
+struct test {
+  const char *in;
+  int inlen;
+  const char *out;
+  int outlen;
+};
+
+UNITTEST_START
+{
+  /* unescape, this => that */
+  const struct test list1[]={
+    {"%61", 3, "a", 1},
+    {"%61a", 4, "aa", 2},
+    {"%61b", 4, "ab", 2},
+    {"%6 1", 4, "%6 1", 4},
+    {"%61", 1, "%", 1},
+    {"%61", 2, "%6", 2},
+    {"%6%a", 4, "%6%a", 4},
+    {"%6a", 0, "j", 1},
+    {"%FF", 0, "\xff", 1},
+    {"%FF%00%ff", 9, "\xff\x00\xff", 3},
+    {"%-2", 0, "%-2", 3},
+    {"%FG", 0, "%FG", 3},
+    {NULL, 0, NULL, 0} /* end of list marker */
+  };
+  /* escape, this => that */
+  const struct test list2[]={
+    {"a", 1, "a", 1},
+    {"/", 1, "%2F", 3},
+    {"a=b", 3, "a%3Db", 5},
+    {"a=b", 0, "a%3Db", 5},
+    {"a=b", 1, "a", 1},
+    {"a=b", 2, "a%3D", 4},
+    {"1/./0", 5, "1%2F.%2F0", 9},
+    {"-._~!#%&", 0, "-._~%21%23%25%26", 16},
+    {"a", 2, "a%00", 4},
+    {"a\xff\x01g", 4, "a%FF%01g", 8},
+    {NULL, 0, NULL, 0} /* end of list marker */
+  };
+  int i;
+
+  hnd = curl_easy_init();
+  abort_unless(hnd != NULL, "returned NULL!");
+  for(i=0; list1[i].in; i++) {
+    int outlen;
+    char *out = curl_easy_unescape(hnd,
+                                   list1[i].in, list1[i].inlen,
+                                   &outlen);
+
+    abort_unless(out != NULL, "returned NULL!");
+    fail_unless(outlen == list1[i].outlen, "wrong output length returned");
+    fail_unless(!memcmp(out, list1[i].out, list1[i].outlen),
+                "bad output data returned");
+
+    printf("curl_easy_unescape test %d DONE\n", i);
+
+    curl_free(out);
+  }
+
+  for(i=0; list2[i].in; i++) {
+    int outlen;
+    char *out = curl_easy_escape(hnd, list2[i].in, list2[i].inlen);
+    abort_unless(out != NULL, "returned NULL!");
+
+    outlen = (int)strlen(out);
+    fail_unless(outlen == list2[i].outlen, "wrong output length returned");
+    fail_unless(!memcmp(out, list2[i].out, list2[i].outlen),
+                "bad output data returned");
+
+    printf("curl_easy_escape test %d DONE (%s)\n", i, out);
+
+    curl_free(out);
+  }
+}
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1397.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1397.c
new file mode 100644
index 0000000..539433c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1397.c
@@ -0,0 +1,79 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "hostcheck.h" /* from the lib dir */
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+  /* done before shutting down and exiting */
+}
+
+UNITTEST_START
+
+/* only these backends define the tested functions */
+#if defined(USE_OPENSSL) || defined(USE_AXTLS) || defined(USE_GSKIT)
+
+  /* here you start doing things and checking that the results are good */
+
+fail_unless(Curl_cert_hostcheck("www.example.com", "www.example.com"),
+            "good 1");
+fail_unless(Curl_cert_hostcheck("*.example.com", "www.example.com"),
+            "good 2");
+fail_unless(Curl_cert_hostcheck("xxx*.example.com", "xxxwww.example.com"),
+            "good 3");
+fail_unless(Curl_cert_hostcheck("f*.example.com", "foo.example.com"),
+            "good 4");
+fail_unless(Curl_cert_hostcheck("192.168.0.0", "192.168.0.0"),
+            "good 5");
+
+fail_if(Curl_cert_hostcheck("xxx.example.com", "www.example.com"), "bad 1");
+fail_if(Curl_cert_hostcheck("*", "www.example.com"), "bad 2");
+fail_if(Curl_cert_hostcheck("*.*.com", "www.example.com"), "bad 3");
+fail_if(Curl_cert_hostcheck("*.example.com", "baa.foo.example.com"), "bad 4");
+fail_if(Curl_cert_hostcheck("f*.example.com", "baa.example.com"), "bad 5");
+fail_if(Curl_cert_hostcheck("*.com", "example.com"), "bad 6");
+fail_if(Curl_cert_hostcheck("*fail.com", "example.com"), "bad 7");
+fail_if(Curl_cert_hostcheck("*.example.", "www.example."), "bad 8");
+fail_if(Curl_cert_hostcheck("*.example.", "www.example"), "bad 9");
+fail_if(Curl_cert_hostcheck("", "www"), "bad 10");
+fail_if(Curl_cert_hostcheck("*", "www"), "bad 11");
+fail_if(Curl_cert_hostcheck("*.168.0.0", "192.168.0.0"), "bad 12");
+fail_if(Curl_cert_hostcheck("www.example.com", "192.168.0.0"), "bad 13");
+
+#ifdef ENABLE_IPV6
+fail_if(Curl_cert_hostcheck("*::3285:a9ff:fe46:b619",
+                            "fe80::3285:a9ff:fe46:b619"), "bad 14");
+fail_unless(Curl_cert_hostcheck("fe80::3285:a9ff:fe46:b619",
+                                "fe80::3285:a9ff:fe46:b619"), "good 6");
+#endif
+
+#endif
+
+  /* you end the test code like this: */
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1398.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1398.c
new file mode 100644
index 0000000..9491c46
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1398.c
@@ -0,0 +1,91 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "curl/mprintf.h"
+
+static CURLcode unit_setup(void) {return CURLE_OK;}
+static void unit_stop(void) {}
+
+UNITTEST_START
+
+int rc;
+char buf[3] = {'b', 'u', 'g'};
+const char *str="bug";
+int width = 3;
+char output[24];
+
+/*#define curl_msnprintf snprintf */
+
+/* without a trailing zero */
+rc = curl_msnprintf(output, 4, "%.*s", width, buf);
+fail_unless(rc == 3, "return code should be 3");
+fail_unless(!strcmp(output, "bug"), "wrong output");
+
+/* with a trailing zero */
+rc = curl_msnprintf(output, 4, "%.*s", width, str);
+fail_unless(rc == 3, "return code should be 3");
+fail_unless(!strcmp(output, "bug"), "wrong output");
+
+width = 2;
+/* one byte less */
+rc = curl_msnprintf(output, 4, "%.*s", width, buf);
+fail_unless(rc == 2, "return code should be 2");
+fail_unless(!strcmp(output, "bu"), "wrong output");
+
+/* string with larger precision */
+rc = curl_msnprintf(output, 8, "%.8s", str);
+fail_unless(rc == 3, "return code should be 3");
+fail_unless(!strcmp(output, "bug"), "wrong output");
+
+/* longer string with precision */
+rc = curl_msnprintf(output, 8, "%.3s", "0123456789");
+fail_unless(rc == 3, "return code should be 3");
+fail_unless(!strcmp(output, "012"), "wrong output");
+
+/* negative width */
+rc = curl_msnprintf(output, 8, "%-8s", str);
+fail_unless(rc == 8, "return code should be 8");
+fail_unless(!strcmp(output, "bug    "), "wrong output");
+
+/* larger width that string length */
+rc = curl_msnprintf(output, 8, "%8s", str);
+fail_unless(rc == 8, "return code should be 8");
+fail_unless(!strcmp(output, "     bu"), "wrong output");
+
+/* output a number in a limited output */
+rc = curl_msnprintf(output, 4, "%d", 10240);
+/* TODO: this should return 5 to be POSIX/snprintf compliant! */
+fail_unless(rc == 4, "return code should be 4");
+fail_unless(!strcmp(output, "102"), "wrong output");
+
+/* padded strings */
+rc = curl_msnprintf(output, 16, "%8s%8s", str, str);
+fail_unless(rc == 16, "return code should be 16");
+fail_unless(!strcmp(output, "     bug     bu"), "wrong output");
+
+/* padded numbers */
+rc = curl_msnprintf(output, 16, "%8d%8d", 1234, 5678);
+fail_unless(rc == 16, "return code should be 16");
+fail_unless(!strcmp(output, "    1234    567"), "wrong output");
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1600.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1600.c
new file mode 100644
index 0000000..11d718d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1600.c
@@ -0,0 +1,65 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "urldata.h"
+#include "curl_ntlm_core.h"
+
+static CURL *easy;
+
+static CURLcode unit_setup(void)
+{
+  easy = curl_easy_init();
+  return easy ? CURLE_OK : CURLE_OUT_OF_MEMORY;
+}
+
+static void unit_stop(void)
+{
+  curl_easy_cleanup(easy);
+}
+
+UNITTEST_START
+
+#if defined(USE_NTLM) && (!defined(USE_WINDOWS_SSPI) || \
+                          defined(USE_WIN32_CRYPTO))
+  unsigned char output[21];
+  unsigned char *testp = output;
+  Curl_ntlm_core_mk_nt_hash(easy, "1", output);
+
+  verify_memory(testp,
+              "\x69\x94\x3c\x5e\x63\xb4\xd2\xc1\x04\xdb"
+              "\xbc\xc1\x51\x38\xb7\x2b\x00\x00\x00\x00\x00", 21);
+
+  Curl_ntlm_core_mk_nt_hash(easy, "hello-you-fool", output);
+
+  verify_memory(testp,
+              "\x39\xaf\x87\xa6\x75\x0a\x7a\x00\xba\xa0"
+              "\xd3\x4f\x04\x9e\xc1\xd0\x00\x00\x00\x00\x00", 21);
+
+/* !checksrc! disable LONGLINE 2 */
+  Curl_ntlm_core_mk_nt_hash(easy, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", output);
+
+  verify_memory(testp,
+                "\x36\x9d\xae\x06\x84\x7e\xe1\xc1\x4a\x94\x39\xea\x6f\x44\x8c\x65\x00\x00\x00\x00\x00", 21);
+#endif
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1601.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1601.c
new file mode 100644
index 0000000..a6120e1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1601.c
@@ -0,0 +1,54 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "curl_md5.h"
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+UNITTEST_START
+
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+  unsigned char output[16];
+  unsigned char *testp = output;
+  Curl_md5it(output, (const unsigned char *)"1");
+
+/* !checksrc! disable LONGLINE 2 */
+  verify_memory(testp,
+                "\xc4\xca\x42\x38\xa0\xb9\x23\x82\x0d\xcc\x50\x9a\x6f\x75\x84\x9b", 16);
+
+  Curl_md5it(output, (const unsigned char *)"hello-you-fool");
+
+  verify_memory(testp,
+                "\x88\x67\x0b\x6d\x5d\x74\x2f\xad\xa5\xcd\xf9\xb6\x82\x87\x5f\x22", 16);
+#endif
+
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1602.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1602.c
new file mode 100644
index 0000000..5f1ee9f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1602.c
@@ -0,0 +1,78 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#define ENABLE_CURLX_PRINTF
+#include "curlx.h"
+
+#include "hash.h"
+
+#include "memdebug.h" /* LAST include file */
+
+static struct curl_hash hash_static;
+
+static void mydtor(void *p)
+{
+  int *ptr = (int *)p;
+  free(ptr);
+}
+
+static CURLcode unit_setup(void)
+{
+  return Curl_hash_init(&hash_static, 7, Curl_hash_str,
+                        Curl_str_key_compare, mydtor);
+}
+
+static void unit_stop(void)
+{
+  Curl_hash_destroy(&hash_static);
+}
+
+UNITTEST_START
+  int *value;
+  int *value2;
+  int *nodep;
+  size_t klen = sizeof(int);
+
+  int key = 20;
+  int key2 = 25;
+
+
+  value = malloc(sizeof(int));
+  abort_unless(value != NULL, "Out of memory");
+  *value = 199;
+  nodep = Curl_hash_add(&hash_static, &key, klen, value);
+  if(!nodep)
+    free(value);
+  abort_unless(nodep, "insertion into hash failed");
+  Curl_hash_clean(&hash_static);
+
+  /* Attempt to add another key/value pair */
+  value2 = malloc(sizeof(int));
+  abort_unless(value2 != NULL, "Out of memory");
+  *value2 = 204;
+  nodep = Curl_hash_add(&hash_static, &key2, klen, value2);
+  if(!nodep)
+    free(value2);
+  abort_unless(nodep, "insertion into hash failed");
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1603.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1603.c
new file mode 100644
index 0000000..c20b20b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1603.c
@@ -0,0 +1,150 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2015 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#define ENABLE_CURLX_PRINTF
+#include "curlx.h"
+
+#include "hash.h"
+
+#include "memdebug.h" /* LAST include file */
+
+static struct curl_hash hash_static;
+static const int slots = 3;
+
+static void mydtor(void *p)
+{
+  /* Data are statically allocated */
+ (void)p; /* unused */
+}
+
+static CURLcode unit_setup(void)
+{
+  return Curl_hash_init(&hash_static, slots, Curl_hash_str,
+                        Curl_str_key_compare, mydtor);
+}
+
+static void unit_stop(void)
+{
+  Curl_hash_destroy(&hash_static);
+}
+
+UNITTEST_START
+  char key1[] = "key1";
+  char key2[] = "key2b";
+  char key3[] = "key3";
+  char key4[] = "key4";
+  char notakey[] = "notakey";
+  char *nodep;
+  int rc;
+
+  /* Ensure the key hashes are as expected in order to test both hash
+     collisions and a full table. Unfortunately, the hashes can vary
+     between architectures. */
+  if(Curl_hash_str(key1, strlen(key1), slots) != 1 ||
+     Curl_hash_str(key2, strlen(key2), slots) != 0 ||
+     Curl_hash_str(key3, strlen(key3), slots) != 2 ||
+     Curl_hash_str(key4, strlen(key4), slots) != 1)
+    fprintf(stderr, "Warning: hashes are not computed as expected on this "
+            "architecture; test coverage will be less comprehensive\n");
+
+  nodep = Curl_hash_add(&hash_static, &key1, strlen(key1), &key1);
+  fail_unless(nodep, "insertion into hash failed");
+  nodep = Curl_hash_pick(&hash_static, &key1, strlen(key1));
+  fail_unless(nodep == key1, "hash retrieval failed");
+
+  nodep = Curl_hash_add(&hash_static, &key2, strlen(key2), &key2);
+  fail_unless(nodep, "insertion into hash failed");
+  nodep = Curl_hash_pick(&hash_static, &key2, strlen(key2));
+  fail_unless(nodep == key2, "hash retrieval failed");
+
+  nodep = Curl_hash_add(&hash_static, &key3, strlen(key3), &key3);
+  fail_unless(nodep, "insertion into hash failed");
+  nodep = Curl_hash_pick(&hash_static, &key3, strlen(key3));
+  fail_unless(nodep == key3, "hash retrieval failed");
+
+  /* The fourth element exceeds the number of slots & collides */
+  nodep = Curl_hash_add(&hash_static, &key4, strlen(key4), &key4);
+  fail_unless(nodep, "insertion into hash failed");
+  nodep = Curl_hash_pick(&hash_static, &key4, strlen(key4));
+  fail_unless(nodep == key4, "hash retrieval failed");
+
+  /* Make sure all elements are still accessible */
+  nodep = Curl_hash_pick(&hash_static, &key1, strlen(key1));
+  fail_unless(nodep == key1, "hash retrieval failed");
+  nodep = Curl_hash_pick(&hash_static, &key2, strlen(key2));
+  fail_unless(nodep == key2, "hash retrieval failed");
+  nodep = Curl_hash_pick(&hash_static, &key3, strlen(key3));
+  fail_unless(nodep == key3, "hash retrieval failed");
+  nodep = Curl_hash_pick(&hash_static, &key4, strlen(key4));
+  fail_unless(nodep == key4, "hash retrieval failed");
+
+  /* Delete the second of two entries in a bucket */
+  rc = Curl_hash_delete(&hash_static, &key4, strlen(key4));
+  fail_unless(rc == 0, "hash delete failed");
+  nodep = Curl_hash_pick(&hash_static, &key1, strlen(key1));
+  fail_unless(nodep == key1, "hash retrieval failed");
+  nodep = Curl_hash_pick(&hash_static, &key4, strlen(key4));
+  fail_unless(!nodep, "hash retrieval should have failed");
+
+  /* Insert that deleted node again */
+  nodep = Curl_hash_add(&hash_static, &key4, strlen(key4), &key4);
+  fail_unless(nodep, "insertion into hash failed");
+  nodep = Curl_hash_pick(&hash_static, &key4, strlen(key4));
+  fail_unless(nodep == key4, "hash retrieval failed");
+
+  /* Delete the first of two entries in a bucket */
+  rc = Curl_hash_delete(&hash_static, &key1, strlen(key1));
+  fail_unless(rc == 0, "hash delete failed");
+  nodep = Curl_hash_pick(&hash_static, &key1, strlen(key1));
+  fail_unless(!nodep, "hash retrieval should have failed");
+  nodep = Curl_hash_pick(&hash_static, &key4, strlen(key4));
+  fail_unless(nodep == key4, "hash retrieval failed");
+
+  /* Delete the remaining one of two entries in a bucket */
+  rc = Curl_hash_delete(&hash_static, &key4, strlen(key4));
+  fail_unless(rc == 0, "hash delete failed");
+  nodep = Curl_hash_pick(&hash_static, &key1, strlen(key1));
+  fail_unless(!nodep, "hash retrieval should have failed");
+  nodep = Curl_hash_pick(&hash_static, &key4, strlen(key4));
+  fail_unless(!nodep, "hash retrieval should have failed");
+
+  /* Delete an already deleted node */
+  rc = Curl_hash_delete(&hash_static, &key4, strlen(key4));
+  fail_unless(rc, "hash delete should have failed");
+
+  /* Replace an existing node */
+  nodep = Curl_hash_add(&hash_static, &key1, strlen(key1), &notakey);
+  fail_unless(nodep, "insertion into hash failed");
+  nodep = Curl_hash_pick(&hash_static, &key1, strlen(key1));
+  fail_unless(nodep == notakey, "hash retrieval failed");
+
+  /* Make sure all remaining elements are still accessible */
+  nodep = Curl_hash_pick(&hash_static, &key2, strlen(key2));
+  fail_unless(nodep == key2, "hash retrieval failed");
+  nodep = Curl_hash_pick(&hash_static, &key3, strlen(key3));
+  fail_unless(nodep == key3, "hash retrieval failed");
+
+  /* Clean up */
+  Curl_hash_clean(&hash_static);
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1604.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1604.c
new file mode 100644
index 0000000..f2d791d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1604.c
@@ -0,0 +1,353 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at http://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "tool_cfgable.h"
+#include "tool_doswin.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "memdebug.h" /* LAST include file */
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+#if defined(MSDOS) || defined(WIN32)
+
+static char *getflagstr(int flags)
+{
+  char *buf = malloc(256);
+  if(buf) {
+    snprintf(buf, 256, "%s,%s,%s,%s",
+      ((flags & SANITIZE_ALLOW_COLONS) ? "SANITIZE_ALLOW_COLONS" : ""),
+      ((flags & SANITIZE_ALLOW_PATH) ? "SANITIZE_ALLOW_PATH" : ""),
+      ((flags & SANITIZE_ALLOW_RESERVED) ? "SANITIZE_ALLOW_RESERVED" : ""),
+      ((flags & SANITIZE_ALLOW_TRUNCATE) ? "SANITIZE_ALLOW_TRUNCATE" : ""));
+  }
+  return buf;
+}
+
+static char *getcurlcodestr(int cc)
+{
+  char *buf = malloc(256);
+  if(buf) {
+    snprintf(buf, 256, "%s (%d)",
+      (cc == SANITIZE_ERR_OK ? "SANITIZE_ERR_OK" :
+       cc == SANITIZE_ERR_BAD_ARGUMENT ? "SANITIZE_ERR_BAD_ARGUMENT" :
+       cc == SANITIZE_ERR_INVALID_PATH ? "SANITIZE_ERR_INVALID_PATH" :
+       cc == SANITIZE_ERR_OUT_OF_MEMORY ? "SANITIZE_ERR_OUT_OF_MEMORY" :
+       "unexpected error code - add name"),
+      cc);
+  }
+  return buf;
+}
+
+struct data {
+  const char *input;
+  int flags;
+  const char *expected_output;
+  CURLcode expected_result;
+};
+
+UNITTEST_START
+
+{ /* START sanitize_file_name */
+  struct data data[] = {
+    { "", 0,
+      "", SANITIZE_ERR_OK
+    },
+    { "normal filename", 0,
+      "normal filename", SANITIZE_ERR_OK
+    },
+    { "control\tchar", 0,
+      "control_char", SANITIZE_ERR_OK
+    },
+    { "banned*char", 0,
+      "banned_char", SANITIZE_ERR_OK
+    },
+    { "f:foo", 0,
+      "f_foo", SANITIZE_ERR_OK
+    },
+    { "f:foo", SANITIZE_ALLOW_COLONS,
+      "f:foo", SANITIZE_ERR_OK
+    },
+    { "f:foo", SANITIZE_ALLOW_PATH,
+      "f:foo", SANITIZE_ERR_OK
+    },
+    { "f:\\foo", 0,
+      "f__foo", SANITIZE_ERR_OK
+    },
+    { "f:\\foo", SANITIZE_ALLOW_PATH,
+      "f:\\foo", SANITIZE_ERR_OK
+    },
+    { "f:/foo", 0,
+      "f__foo", SANITIZE_ERR_OK
+    },
+    { "f:/foo", SANITIZE_ALLOW_PATH,
+      "f:/foo", SANITIZE_ERR_OK
+    },
+#ifndef MSDOS
+    { "\\\\?\\C:\\foo", SANITIZE_ALLOW_PATH,
+      "\\\\?\\C:\\foo", SANITIZE_ERR_OK
+    },
+    { "\\\\?\\C:\\foo", 0,
+      "____C__foo", SANITIZE_ERR_OK
+    },
+#endif
+    { "foo:bar", 0,
+      "foo_bar", SANITIZE_ERR_OK
+    },
+    { "foo|<>/bar\\\":?*baz", 0,
+      "foo____bar_____baz", SANITIZE_ERR_OK
+    },
+    { "f:foo::$DATA", 0,
+      "f_foo__$DATA", SANITIZE_ERR_OK
+    },
+    { "con . air", 0,
+      "con _ air", SANITIZE_ERR_OK
+    },
+    { "con.air", 0,
+      "con_air", SANITIZE_ERR_OK
+    },
+    { "con:/x", 0,
+      "con__x", SANITIZE_ERR_OK
+    },
+    { "file . . . .  ..  .", 0,
+      "file", SANITIZE_ERR_OK
+    },
+    { "foo . . ? . . ", 0,
+      "foo . . _", SANITIZE_ERR_OK
+    },
+    { "com1", 0,
+      "_com1", SANITIZE_ERR_OK
+    },
+    { "com1", SANITIZE_ALLOW_RESERVED,
+      "com1", SANITIZE_ERR_OK
+    },
+    { "f:\\com1", 0,
+      "f__com1", SANITIZE_ERR_OK
+    },
+    { "f:\\com1", SANITIZE_ALLOW_PATH,
+      "f:\\_com1", SANITIZE_ERR_OK
+    },
+    { "f:\\com1", SANITIZE_ALLOW_RESERVED,
+      "f__com1", SANITIZE_ERR_OK
+    },
+    { "f:\\com1", SANITIZE_ALLOW_RESERVED | SANITIZE_ALLOW_COLONS,
+      "f:_com1", SANITIZE_ERR_OK
+    },
+    { "f:\\com1", SANITIZE_ALLOW_RESERVED | SANITIZE_ALLOW_PATH,
+      "f:\\com1", SANITIZE_ERR_OK
+    },
+    { "com1:\\com1", SANITIZE_ALLOW_PATH,
+      "_com1:\\_com1", SANITIZE_ERR_OK
+    },
+    { "com1:\\com1", SANITIZE_ALLOW_RESERVED | SANITIZE_ALLOW_PATH,
+      "com1:\\com1", SANITIZE_ERR_OK
+    },
+    { "com1:\\com1", SANITIZE_ALLOW_RESERVED,
+      "com1__com1", SANITIZE_ERR_OK
+    },
+#ifndef MSDOS
+    { "\\com1", SANITIZE_ALLOW_PATH,
+      "\\_com1", SANITIZE_ERR_OK
+    },
+    { "\\\\com1", SANITIZE_ALLOW_PATH,
+      "\\\\com1", SANITIZE_ERR_OK
+    },
+    { "\\\\?\\C:\\com1", SANITIZE_ALLOW_PATH,
+      "\\\\?\\C:\\com1", SANITIZE_ERR_OK
+    },
+#endif
+    { "CoM1", 0,
+      "_CoM1", SANITIZE_ERR_OK
+    },
+    { "CoM1", SANITIZE_ALLOW_RESERVED,
+      "CoM1", SANITIZE_ERR_OK
+    },
+    { "COM56", 0,
+      "COM56", SANITIZE_ERR_OK
+    },
+    /* At the moment we expect a maximum path length of 259. I assume MSDOS
+       has variable max path lengths depending on compiler that are shorter
+       so currently these "good" truncate tests won't run on MSDOS */
+#ifndef MSDOS
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE,
+      "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFFFF", SANITIZE_ERR_OK
+    },
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFF\\FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE | SANITIZE_ALLOW_PATH,
+      "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFF\\FFFFF", SANITIZE_ERR_OK
+    },
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFF\\FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE,
+      "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFF_F", SANITIZE_ERR_OK
+    },
+#endif /* !MSDOS */
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
+        0,
+      NULL, SANITIZE_ERR_INVALID_PATH
+    },
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFFF\\FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE,
+      NULL, SANITIZE_ERR_INVALID_PATH
+    },
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFFFFFFFFFFFFFFFFFFFFFFFF\\FFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE | SANITIZE_ALLOW_PATH,
+      NULL, SANITIZE_ERR_INVALID_PATH
+    },
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FFF\\FFFFFFFFFFFFFFFFFFFFF:FFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE | SANITIZE_ALLOW_PATH,
+      NULL, SANITIZE_ERR_INVALID_PATH
+    },
+    { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+      "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+      "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+      "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
+      "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+      "FF\\F:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
+        SANITIZE_ALLOW_TRUNCATE | SANITIZE_ALLOW_PATH,
+      NULL, SANITIZE_ERR_INVALID_PATH
+    },
+    { NULL, 0,
+      NULL, SANITIZE_ERR_BAD_ARGUMENT
+    },
+  };
+
+  size_t i;
+
+  for(i = 0; i < sizeof data / sizeof data[0]; ++i) {
+    char *output = NULL;
+    char *flagstr = NULL;
+    char *received_ccstr = NULL;
+    char *expected_ccstr = NULL;
+
+    CURLcode res = sanitize_file_name(&output, data[i].input, data[i].flags);
+
+    if(res == data[i].expected_result &&
+       ((!output && !data[i].expected_output) ||
+        (output && data[i].expected_output &&
+         !strcmp(output, data[i].expected_output)))) { /* OK */
+      free(output);
+      continue;
+    }
+
+    flagstr = getflagstr(data[i].flags);
+    abort_unless(flagstr, "out of memory");
+    received_ccstr = getcurlcodestr(res);
+    abort_unless(received_ccstr, "out of memory");
+    expected_ccstr = getcurlcodestr(data[i].expected_result);
+    abort_unless(expected_ccstr, "out of memory");
+
+    unitfail++;
+    fprintf(stderr, "\n"
+            "%s:%d sanitize_file_name failed.\n"
+            "input: %s\n"
+            "flags: %s\n"
+            "output: %s\n"
+            "result: %s\n"
+            "expected output: %s\n"
+            "expected result: %s\n",
+            __FILE__, __LINE__,
+            data[i].input,
+            flagstr,
+            (output ? output : "(null)"),
+            received_ccstr,
+            (data[i].expected_output ? data[i].expected_output : "(null)"),
+            expected_ccstr);
+
+    free(output);
+    free(flagstr);
+    free(received_ccstr);
+    free(expected_ccstr);
+  }
+} /* END sanitize_file_name */
+
+#else
+UNITTEST_START
+
+{
+  fprintf(stderr, "Skipped test not for this platform\n");
+}
+#endif /* MSDOS || WIN32 */
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1605.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1605.c
new file mode 100644
index 0000000..2fe3a5a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1605.c
@@ -0,0 +1,50 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "llist.h"
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+UNITTEST_START
+  int len;
+  char *esc;
+  CURL *easy = curl_easy_init();
+  abort_unless(easy, "out of memory");
+
+  esc = curl_easy_escape(easy, "", -1);
+  fail_unless(esc == NULL, "negative string length can't work");
+
+  esc = curl_easy_unescape(easy, "%41%41%41%41", -1, &len);
+  fail_unless(esc == NULL, "negative string length can't work");
+
+  curl_easy_cleanup(easy);
+
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1606.c b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1606.c
new file mode 100644
index 0000000..f08735b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/unit/unit1606.c
@@ -0,0 +1,90 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "curlcheck.h"
+
+#include "speedcheck.h"
+#include "urldata.h"
+
+static CURLcode unit_setup(void)
+{
+  return CURLE_OK;
+}
+
+static void unit_stop(void)
+{
+
+}
+
+static int runawhile(struct Curl_easy *easy,
+                     long time_limit,
+                     long speed_limit,
+                     curl_off_t speed,
+                     int dec)
+{
+  int counter = 1;
+  struct timeval now = {1, 0};
+  CURLcode result;
+  int finaltime;
+
+  curl_easy_setopt(easy, CURLOPT_LOW_SPEED_LIMIT, speed_limit);
+  curl_easy_setopt(easy, CURLOPT_LOW_SPEED_TIME, time_limit);
+  Curl_speedinit(easy);
+
+  do {
+    /* fake the current transfer speed */
+    easy->progress.current_speed = speed;
+    result = Curl_speedcheck(easy, now);
+    if(result)
+      break;
+    /* step the time */
+    now.tv_sec = ++counter;
+    speed -= dec;
+  } while(counter < 100);
+
+  finaltime = (int)(now.tv_sec - 1);
+
+  return finaltime;
+}
+
+UNITTEST_START
+{
+  struct Curl_easy *easy = curl_easy_init();
+  abort_unless(easy, "out of memory");
+
+  fail_unless(runawhile(easy, 41, 41, 40, 0) == 41,
+              "wrong low speed timeout");
+  fail_unless(runawhile(easy, 21, 21, 20, 0) == 21,
+              "wrong low speed timeout");
+  fail_unless(runawhile(easy, 60, 60, 40, 0) == 60,
+              "wrong log speed timeout");
+  fail_unless(runawhile(easy, 50, 50, 40, 0) == 50,
+              "wrong log speed timeout");
+  fail_unless(runawhile(easy, 40, 40, 40, 0) == 99,
+              "should not time out");
+  fail_unless(runawhile(easy, 10, 50, 100, 2) == 36,
+              "bad timeout");
+
+  curl_easy_cleanup(easy);
+
+  return 0;
+}
+UNITTEST_STOP
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/valgrind.pm b/ap/lib/libcurl/curl-7.54.1/tests/valgrind.pm
new file mode 100644
index 0000000..8b3d717
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/valgrind.pm
@@ -0,0 +1,34 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at https://curl.haxx.se/docs/copyright.html.
+#
+# You may opt to use, copy, modify, merge, publish, distribute and/or sell
+# copies of the Software, and permit persons to whom the Software is
+# furnished to do so, under the terms of the COPYING file.
+#
+# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+# KIND, either express or implied.
+#
+###########################################################################
+
+use File::Basename;
+
+sub valgrindparse {
+    my ($file) = @_;
+    my @o;
+    open(VAL, "<$file");
+    @o = <VAL>;
+    close(VAL);
+    return @o;
+}
+
+1;
diff --git a/ap/lib/libcurl/curl-7.54.1/tests/valgrind.supp b/ap/lib/libcurl/curl-7.54.1/tests/valgrind.supp
new file mode 100644
index 0000000..8c81327
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/tests/valgrind.supp
@@ -0,0 +1,89 @@
+{
+   libidn-idna_to_ascii-error
+   Memcheck:Addr4
+   fun:idna_to_ascii_4z
+   fun:idna_to_ascii_8z
+   fun:idna_to_ascii_lz
+   fun:fix_hostname
+   fun:resolve_server
+   fun:create_conn
+   fun:Curl_connect
+   fun:multi_runsingle
+   fun:curl_multi_perform
+   fun:easy_transfer
+   fun:easy_perform
+   fun:curl_easy_perform
+   fun:operate_do
+   fun:operate
+   fun:main
+}
+
+{
+   libidn-idna_to_ascii-error-eventbased
+   Memcheck:Addr4
+   fun:idna_to_ascii_4z
+   fun:idna_to_ascii_8z
+   fun:idna_to_ascii_lz
+   fun:fix_hostname
+   fun:resolve_server
+   fun:create_conn
+   fun:Curl_connect
+   fun:multi_runsingle
+   fun:multi_socket
+   fun:curl_multi_socket_action
+   fun:wait_or_timeout
+   fun:easy_events
+   fun:easy_perform
+   fun:curl_easy_perform_ev
+   fun:operate_do
+   fun:operate
+   fun:main
+}
+
+{
+   libidn-idna_to_ascii-error-inlined-functions
+   Memcheck:Addr4
+   fun:idna_to_ascii_4z
+   fun:idna_to_ascii_8z
+   fun:idna_to_ascii_lz
+   fun:fix_hostname
+   fun:Curl_connect
+   fun:multi_runsingle
+   fun:curl_multi_perform
+   fun:easy_perform.part.4
+   fun:operate_do
+   fun:operate
+   fun:main
+}
+
+{
+   libidn-idna_to_ascii-error-inlined-functions-alt
+   Memcheck:Addr4
+   fun:idna_to_ascii_4z
+   fun:idna_to_ascii_8z
+   fun:idna_to_ascii_lz
+   fun:fix_hostname
+   fun:Curl_connect
+   fun:multi_runsingle
+   fun:curl_multi_perform
+   fun:easy_perform
+   fun:operate_do.isra.0
+   fun:operate
+   fun:main
+}
+
+{
+   libidn-idna_to_ascii-error-inlined-functions-alt2
+   Memcheck:Addr4
+   fun:idna_to_ascii_4z
+   fun:idna_to_ascii_8z
+   fun:idna_to_ascii_lz
+   fun:fix_hostname
+   fun:Curl_connect
+   fun:multi_runsingle
+   fun:curl_multi_perform
+   fun:easy_perform
+   fun:operate_do
+   fun:operate
+   fun:main
+}