[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit

Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/ap/lib/libcurl/curl-7.54.1/src/CMakeLists.txt b/ap/lib/libcurl/curl-7.54.1/src/CMakeLists.txt
new file mode 100644
index 0000000..e6004ce
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/CMakeLists.txt
@@ -0,0 +1,79 @@
+set(EXE_NAME curl)
+
+if(USE_MANUAL)
+  # Use the C locale to ensure that only ASCII characters appear in the
+  # embedded text. NROFF and MANOPT are set in the parent CMakeLists.txt
+  add_custom_command(
+    OUTPUT tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "#include \"tool_setup.h\"" > tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "#ifndef HAVE_LIBZ" >> tool_hugehelp.c
+    COMMAND env LC_ALL=C "${NROFF}" ${NROFF_MANOPT}
+            "${CURL_BINARY_DIR}/docs/curl.1" |
+            "${PERL_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl"
+            "${CURL_SOURCE_DIR}/docs/MANUAL" >> tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "#else" >> tool_hugehelp.c
+    COMMAND env LC_ALL=C "${NROFF}" ${NROFF_MANOPT}
+            "${CURL_BINARY_DIR}/docs/curl.1" |
+            "${PERL_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" -c
+            "${CURL_SOURCE_DIR}/docs/MANUAL" >> tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "#endif /* HAVE_LIBZ */" >> tool_hugehelp.c
+    DEPENDS
+      "${CURL_SOURCE_DIR}/docs/MANUAL"
+      generate-curl.1
+      "${CURL_BINARY_DIR}/docs/curl.1"
+      "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl"
+      "${CMAKE_CURRENT_SOURCE_DIR}/tool_hugehelp.h"
+    VERBATIM)
+else()
+  add_custom_command(
+    OUTPUT tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "/* built-in manual is disabled, blank function */" > tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "#include \"tool_hugehelp.h\"" >> tool_hugehelp.c
+    COMMAND ${CMAKE_COMMAND} -E echo "void hugehelp(void) {}" >> tool_hugehelp.c
+    DEPENDS
+      "${CMAKE_CURRENT_SOURCE_DIR}/tool_hugehelp.h"
+    VERBATIM)
+
+endif()
+
+transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
+include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
+
+if(MSVC)
+  list(APPEND CURL_SOURCE curl.rc)
+endif()
+
+# CURL_FILES comes from Makefile.inc
+add_executable(
+  ${EXE_NAME}
+  ${CURL_FILES}
+  )
+
+source_group("curlX source files" FILES ${CURLX_CFILES})
+source_group("curl source files" FILES ${CURL_CFILES})
+source_group("curl header files" FILES ${CURL_HFILES})
+
+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"
+  # This is needed as tool_hugehelp.c is generated in the binary dir
+  ${CURL_SOURCE_DIR}/src        # To be able to reach "tool_hugehelp.h"
+  )
+
+#Build curl executable
+target_link_libraries( ${EXE_NAME} libcurl ${CURL_LIBS})
+
+################################################################################
+
+#SET_TARGET_PROPERTIES(${EXE_NAME} ARCHIVE_OUTPUT_DIRECTORY "blah blah blah")
+#SET_TARGET_PROPERTIES(${EXE_NAME} RUNTIME_OUTPUT_DIRECTORY "blah blah blah")
+#SET_TARGET_PROPERTIES(${EXE_NAME} LIBRARY_OUTPUT_DIRECTORY "blah blah blah")
+
+# Add the postfix to the executable since it is not added automatically as for modules and shared libraries
+set_target_properties(${EXE_NAME} PROPERTIES
+  DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
+
+#INCLUDE(ModuleInstall OPTIONAL)
+
+install(TARGETS ${EXE_NAME} DESTINATION bin)
diff --git a/ap/lib/libcurl/curl-7.54.1/src/Makefile.Watcom b/ap/lib/libcurl/curl-7.54.1/src/Makefile.Watcom
new file mode 100644
index 0000000..25cd3bf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.Watcom
@@ -0,0 +1,234 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2005 - 2008, Gisle Vanem <gvanem@yahoo.no>.
+# Copyright (C) 2005 - 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.
+#
+#***************************************************************************
+
+#
+#  Watcom / OpenWatcom / Win32 makefile for curl.
+#
+
+.ERASE
+
+!if $(__VERSION__) < 1280
+!message !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!message ! This Open Watcom version is too old and is no longer supported !
+!message !     Please download latest version from www.openwatcom.org     !
+!message !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!error Unsupported version of Open Watcom
+!endif
+
+!ifndef %watcom
+!error WATCOM environment variable not set!
+!endif
+
+# In order to process Makefile.inc wmake must be called with -u switch!
+!ifndef %MAKEFLAGS
+!error You MUST call wmake with the -u switch!
+!endif
+
+!ifdef %libname
+LIBNAME = $(%libname)
+!else
+LIBNAME = libcurl
+!endif
+
+TARGETS = curl.exe
+
+CC = wcc386
+LD = wlink
+AR = wlib
+RC = wrc
+
+!ifdef __LOADDLL__
+!  loaddll wcc386  wccd386
+!  loaddll wpp386  wppd386
+!  loaddll wlib    wlibd
+!  loaddll wlink   wlinkd
+!endif
+
+!ifdef __UNIX__
+CP = cp
+MD = mkdir -p
+!else
+CP = copy 2>NUL
+MD = mkdir
+!endif
+!if $(__VERSION__) > 1290
+RD = rm -rf
+!else ifdef __UNIX__
+RD = rm -rf
+!else
+RD = rmdir /q /s 2>NUL
+!endif
+
+SYS_INCL = -I"$(%watcom)/h/nt" -I"$(%watcom)/h"
+
+CFLAGS = -3r -mf -hc -zff -zgf -zq -zm -s -fr=con -w2 -fpi -oilrtfm &
+         -wcd=201 -bt=nt -bc -d+ -dWIN32 -dHAVE_STRTOLL             &
+         -I"../include" -I"../lib" $(SYS_INCL)
+
+!ifdef %debug
+DEBUG  = -dDEBUG=1 -dDEBUGBUILD
+CFLAGS += -d3 $(DEBUG)
+!else
+CFLAGS += -d0
+!endif
+
+!ifdef %use_ipv6
+CFLAGS += -d_WIN32_WINNT=0x0501 -dENABLE_IPV6
+!endif
+
+!ifdef %use_ssl
+CFLAGS += -wcd=138 -dUSE_OPENSSL -dUSE_OPENSSL -I"$(OPENSSL_ROOT)/inc32"
+!endif
+
+!ifdef %curl_static
+CFLAGS += -DCURL_STATICLIB
+!else
+CFLAGS += -br
+!endif
+
+#
+# Change to suite.
+#
+!ifdef %zlib_root
+ZLIB_ROOT = $(%zlib_root)
+!else
+ZLIB_ROOT = ../../zlib-1.2.8
+!endif
+
+!ifdef %libssh2_root
+LIBSSH2_ROOT = $(%libssh2_root)
+!else
+LIBSSH2_ROOT = ../../libssh2-1.5.0
+!endif
+
+!ifdef %librtmp_root
+LIBRTMP_ROOT = $(%librtmp_root)
+!else
+LIBRTMP_ROOT = ../../rtmpdump-2.3
+!endif
+
+!ifdef %openssl_root
+OPENSSL_ROOT = $(%openssl_root)
+!else
+OPENSSL_ROOT = ../../openssl-1.0.2a
+!endif
+
+!ifdef %ares_root
+ARES_ROOT = $(%ares_root)
+!else
+ARES_ROOT = ../ares
+!endif
+
+OBJ_DIR  = WC_Win32.obj
+LINK_ARG = $(OBJ_DIR)/wlink.arg
+
+!include Makefile.inc
+
+OBJS1 = $(OBJ_DIR)/$(CURL_CFILES)
+!ifndef %curl_static
+OBJS1 += $(CURLX_CFILES:../lib/=)
+!endif
+OBJS2 = $(OBJS1: = $(OBJ_DIR)/)
+OBJS = $(OBJS2:.c=.obj)
+
+RESOURCE = $(OBJ_DIR)/curl.res
+
+DIRS = $(OBJ_DIR)
+
+all: tool_hugehelp.c $(DIRS) $(TARGETS) .SYMBOLIC
+	@echo Welcome to curl
+
+clean: .SYMBOLIC
+	-rm -f $(OBJS)
+	-rm -f $(RESOURCE) $(LINK_ARG)
+
+vclean distclean: clean .SYMBOLIC
+	-$(RD) $(OBJ_DIR)
+	-rm -f curl.exe curl.sym tool_hugehelp.c
+
+tool_hugehelp.c: tool_hugehelp.c.cvs
+	$(CP) $[@ $^@
+
+tool_hugehelp.c.cvs: .EXISTSONLY
+	$(CP) tool_hugehelp.c $^@
+
+$(DIRS):
+	-$(MD) $^@
+
+curl.exe: $(OBJS) $(RESOURCE)
+	%create $(LINK_ARG)
+	@%append $(LINK_ARG) system nt
+!ifdef %debug
+	@%append $(LINK_ARG) debug all
+	@%append $(LINK_ARG) option symfile
+!endif
+	@%append $(LINK_ARG) option quiet, caseexact, eliminate
+	@%append $(LINK_ARG) option map=$(OBJ_DIR)/$^&.map
+	@%append $(LINK_ARG) option res=$(RESOURCE)
+	@%append $(LINK_ARG) file { $(OBJS) }
+!ifndef %curl_static
+	@%append $(LINK_ARG) library ../lib/$(LIBNAME)_imp.lib
+!else
+	@%append $(LINK_ARG) library ../lib/$(LIBNAME).lib
+	@%append $(LINK_ARG) library wldap32.lib
+! ifdef %use_zlib
+	@%append $(LINK_ARG) library '$(ZLIB_ROOT)/zlib.lib'
+! endif
+! ifdef %use_rtmp
+	@%append $(LINK_ARG) library '$(LIBRTMP_ROOT)/librtmp/librtmp.lib'
+	@%append $(LINK_ARG) library winmm.lib
+! endif
+! ifdef %use_ssh2
+	@%append $(LINK_ARG) library '$(LIBSSH2_ROOT)/win32/libssh2.lib'
+! endif
+! ifdef %use_ssl
+	@%append $(LINK_ARG) library '$(OPENSSL_ROOT)/out32/libeay32.lib'
+	@%append $(LINK_ARG) library '$(OPENSSL_ROOT)/out32/ssleay32.lib'
+! endif
+! ifdef %use_ares
+	@%append $(LINK_ARG) library '$(ARES_ROOT)/cares.lib'
+! endif
+! ifdef %use_winidn
+!  if $(__VERSION__) > 1290
+	@%append $(LINK_ARG) library normaliz.lib
+!  else
+	@%append $(LINK_ARG) import '_IdnToAscii@20' 'NORMALIZ.DLL'.'IdnToAscii'
+	@%append $(LINK_ARG) import '_IdnToUnicode@20' 'NORMALIZ.DLL'.'IdnToUnicode'
+!  endif
+! endif
+!endif
+!ifeq USE_WATT32 1
+	@%append $(LINK_ARG) library '$(%watt_root)/lib/wattcpw_imp.lib'
+!else
+	@%append $(LINK_ARG) library ws2_32.lib
+!endif
+	$(LD) name $^@ @$(LINK_ARG)
+
+$(RESOURCE): curl.rc
+	$(RC) $(DEBUG) -q -r -zm -bt=nt -I"../include" $(SYS_INCL) $[@ -fo=$^@
+
+# suffix search path - vpath-like hack
+.c: ../lib
+
+.c{$(OBJ_DIR)}.obj:
+	$(CC) $(CFLAGS) $[@ -fo=$^@
diff --git a/ap/lib/libcurl/curl-7.54.1/src/Makefile.am b/ap/lib/libcurl/curl-7.54.1/src/Makefile.am
new file mode 100644
index 0000000..950a7ba
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.am
@@ -0,0 +1,145 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  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
+
+# remove targets if the command fails
+.DELETE_ON_ERROR:
+
+# 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_builddir)/src is for curl's generated src/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_srcdir)/src is for curl's src/tool_setup.h and "curl-private" files
+
+AM_CPPFLAGS = -I$(top_builddir)/include/curl \
+              -I$(top_builddir)/include      \
+              -I$(top_srcdir)/include        \
+              -I$(top_builddir)/lib          \
+              -I$(top_builddir)/src          \
+              -I$(top_srcdir)/lib            \
+              -I$(top_srcdir)/src
+
+bin_PROGRAMS = curl
+
+if USE_CPPFLAG_CURL_STATICLIB
+AM_CPPFLAGS += -DCURL_STATICLIB
+endif
+
+include Makefile.inc
+
+# CURL_FILES comes from Makefile.inc
+curl_SOURCES = $(CURL_FILES)
+
+# This might hold -Werror
+CFLAGS += @CURL_CFLAG_EXTRAS@
+
+# Prevent LIBS from being used for all link targets
+LIBS = $(BLANK_AT_MAKETIME)
+
+if USE_EXPLICIT_LIB_DEPS
+curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @LIBCURL_LIBS@
+else
+curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @NSS_LIBS@ @SSL_LIBS@ @ZLIB_LIBS@ @CURL_NETWORK_AND_TIME_LIBS@
+endif
+
+curl_LDFLAGS = @LIBMETALINK_LDFLAGS@
+curl_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
+
+@CODE_COVERAGE_RULES@
+curl_LDFLAGS += $(CODE_COVERAGE_LDFLAGS)
+CFLAGS += $(CODE_COVERAGE_CFLAGS)
+
+# if unit tests are enabled, build a static library to link them with
+if BUILD_UNITTESTS
+noinst_LTLIBRARIES = libcurltool.la
+libcurltool_la_CPPFLAGS = $(LIBMETALINK_CPPFLAGS) $(AM_CPPFLAGS) \
+                          -DCURL_STATICLIB -DUNITTESTS
+libcurltool_la_CFLAGS =
+libcurltool_la_LDFLAGS = -static $(LINKFLAGS)
+libcurltool_la_SOURCES = $(curl_SOURCES)
+endif
+
+BUILT_SOURCES = tool_hugehelp.c
+CLEANFILES = tool_hugehelp.c
+# Use the C locale to ensure that only ASCII characters appear in the
+# embedded text.
+NROFF=env LC_ALL=C @NROFF@ @MANOPT@ # figured out by the configure script
+
+EXTRA_DIST = mkhelp.pl makefile.dj Makefile.b32		\
+ Makefile.m32 macos/curl.mcp.xml.sit.hqx macos/MACINSTALL.TXT		\
+ macos/src/curl_GUSIConfig.cpp macos/src/macos_main.cpp makefile.amiga	\
+ curl.rc Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt
+
+# Use absolute directory to disable VPATH
+MANPAGE=$(abs_top_builddir)/docs/curl.1
+README=$(top_srcdir)/docs/MANUAL
+MKHELP=$(top_srcdir)/src/mkhelp.pl
+HUGE=tool_hugehelp.c
+
+if USE_MANUAL
+# Here are the stuff to create a built-in manual
+
+$(MANPAGE):
+	cd $(top_builddir)/docs && $(MAKE)
+
+if HAVE_LIBZ
+# This generates the tool_hugehelp.c file in both uncompressed and
+# compressed formats.
+$(HUGE): $(MANPAGE) $(README) $(MKHELP)
+	echo '#include "tool_setup.h"' > $(HUGE)
+	echo '#ifndef HAVE_LIBZ' >> $(HUGE)
+	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
+	echo '#else' >> $(HUGE)
+	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) -c $(README) >> $(HUGE)
+	echo '#endif /* HAVE_LIBZ */' >> $(HUGE)
+else # HAVE_LIBZ
+# This generates the tool_hugehelp.c file uncompressed only
+$(HUGE): $(MANPAGE) $(README) mkhelp.pl
+	echo '#include "tool_setup.h"' > $(HUGE)
+	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
+endif
+
+else # USE_MANUAL
+# built-in manual has been disabled, make a blank file
+$(HUGE):
+	echo "/* built-in manual is disabled, blank function */" > $(HUGE)
+	echo '#include "tool_hugehelp.h"' >> $(HUGE)
+	echo "void hugehelp(void) {}" >>$(HUGE)
+endif
+
+# ignore tool_hugehelp.c since it is generated source code and it plays
+# by slightly different rules!
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl -D$(srcdir)        \
+	-W$(srcdir)/tool_hugehelp.c $(srcdir)/*.[ch]
+
+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/src/Makefile.b32 b/ap/lib/libcurl/curl-7.54.1/src/Makefile.b32
new file mode 100644
index 0000000..a60b3db
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.b32
@@ -0,0 +1,154 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2000, Jaepil Kim, <pit@paradise.net.nz>.
+# Copyright (C) 2001 - 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.
+#
+#***************************************************************************
+
+############################################################
+#
+#  Makefile.b32 - Borland's C++ Compiler 5.X
+#
+#  'BCCDIR' has to be set up to point to the base directory
+#  of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
+#
+############################################################
+
+!if "$(__MAKE__)" == ""
+!error __MAKE__ not defined. Use Borlands's MAKE to process this makefile.
+!endif
+
+# Borland's $(MAKEDIR) expands to the path where make.exe is located,
+# use this feature to define BCCDIR when user has not defined BCCDIR.
+!ifndef BCCDIR
+BCCDIR = $(MAKEDIR)\..
+!endif
+
+# Edit the path below to point to the base of your Zlib sources.
+!ifndef ZLIB_PATH
+ZLIB_PATH = ..\..\zlib-1.2.8
+!endif
+
+# Edit the path below to point to the base of your OpenSSL package.
+!ifndef OPENSSL_PATH
+OPENSSL_PATH = ..\..\openssl-1.0.2a
+!endif
+
+# Set program's name
+PROGNAME = curl.exe
+
+# Setup environment
+PP_CMD   = cpp32 -q -P-
+CC_CMD   = bcc32 -q -c
+LD       = bcc32
+RM       = del 2>NUL
+MKDIR    = md
+RMDIR    = rd /q 2>NUL
+COPY     = $(COMSPEC) /c copy /y
+
+CC_FLAGS = -5 -O2 -tWM -w -w-aus -w-ccc -w-dup -w-prc -w-pro -w-rch -w-sig -w-spa -w-inl -w-pia -w-pin -Dinline=__inline
+LDFLAGS  = -q -lq -lap
+
+SRCDIRS  = .;..\lib
+OBJDIR   = .\BCC_objs
+INCDIRS  = -I.;..\include;..\lib
+LINKLIB  = $(BCCDIR)\lib\cw32mt.lib $(BCCDIR)\lib\ws2_32.lib
+DEFINES  = -DNDEBUG -DWIN32
+
+!ifdef DYNAMIC
+LIBCURL_LIB = ..\lib\libcurl_imp.lib
+!else
+LIBCURL_LIB = ..\lib\libcurl.lib
+DEFINES = $(DEFINES) -DCURL_STATICLIB
+!endif
+
+# ZLIB support is enabled setting WITH_ZLIB=1
+!ifdef WITH_ZLIB
+DEFINES  = $(DEFINES) -DHAVE_LIBZ -DHAVE_ZLIB_H
+INCDIRS  = $(INCDIRS);$(ZLIB_PATH)
+LINKLIB  = $(LINKLIB) $(ZLIB_PATH)\zlib.lib
+!endif
+
+# SSL support is enabled setting WITH_SSL=1
+!ifdef WITH_SSL
+DEFINES  = $(DEFINES) -DUSE_OPENSSL
+INCDIRS  = $(INCDIRS);$(OPENSSL_PATH)\inc32;$(OPENSSL_PATH)\inc32\openssl
+LINKLIB  = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\libeay32.lib
+!endif
+
+.autodepend
+
+.path.c   = $(SRCDIRS)
+.path.obj = $(OBJDIR)
+.path.int = $(OBJDIR)
+
+# Makefile.inc provides the CSOURCES and HHEADERS defines
+!include Makefile.inc
+
+CSOURCES = $(CURL_CFILES) $(CURLX_CFILES:../lib/=)
+OBJECTS  = $(CSOURCES:.c=.obj)
+PREPROCESSED = $(CSOURCES:.c=.int)
+
+# Borland's command line compiler (BCC32) version 5.5.1 integrated
+# preprocessor has a bug which results in silently generating wrong
+# definitions for libcurl macros such as CURL_OFF_T_C, on the other
+# hand Borland's command line preprocessor (CPP32) version 5.5.1 does
+# not have the bug and achieves proper results. In order to avoid the
+# silent bug we first preprocess source files and later compile the
+# preprocessed result.
+
+.c.obj:
+	@-$(RM) $(@R).int
+	$(PP_CMD) $(CC_FLAGS) $(INCDIRS) $(DEFINES) -o$(@R).int $(<)
+	$(CC_CMD) $(CC_FLAGS) -o$(@) $(@R).int
+
+all:	$(OBJDIR) tool_hugehelp $(PROGNAME)
+
+clean:
+	cd $(OBJDIR)
+	@-$(RM) $(OBJECTS)
+	@-$(RM) $(PREPROCESSED)
+	cd ..
+	@-$(RMDIR) $(OBJDIR)
+	@-$(RM) $(PROGNAME)
+	@-$(RM) curl.tds
+
+$(OBJDIR):
+	@-$(RMDIR) $(OBJDIR)
+	@-$(MKDIR) $(OBJDIR)
+
+!ifdef WITH_ZLIB
+tool_hugehelp: ..\docs\MANUAL ..\docs\curl.1 mkhelp.pl
+        groff -Tascii -man -P -c ../docs/curl.1 > tool_hugehelp.tmp
+        perl -w mkhelp.pl -c ../docs/MANUAL < tool_hugehelp.tmp > tool_hugehelp.c
+	@-$(RM) tool_hugehelp.tmp
+!else
+tool_hugehelp:
+	if exist ..\GIT-INFO $(COPY) tool_hugehelp.c.cvs tool_hugehelp.c
+!endif
+
+$(PROGNAME): $(OBJECTS) $(LIBCURL_LIB) $(LINKLIB)
+	@-$(RM) $(PROGNAME)
+	$(LD) $(LDFLAGS) -e$@ @&&!
+$(**: = ^
+)
+!
+
+
+# End of Makefile.b32
diff --git a/ap/lib/libcurl/curl-7.54.1/src/Makefile.in b/ap/lib/libcurl/curl-7.54.1/src/Makefile.in
new file mode 100644
index 0000000..2644fe2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.in
@@ -0,0 +1,2051 @@
+# 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@
+
+# ./src/Makefile.inc
+# Using the backslash as line continuation character might be problematic
+# with some make flavours, as Watcom's wmake showed us already. If we
+# ever want to change this in a portable manner then we should consider
+# this idea (posted to the libcurl list by Adam Kellas):
+# CSRC1 = file1.c file2.c file3.c
+# CSRC2 = file4.c file5.c file6.c
+# CSOURCES = $(CSRC1) $(CSRC2)
+
+
+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@
+bin_PROGRAMS = curl$(EXEEXT)
+@USE_CPPFLAG_CURL_STATICLIB_TRUE@am__append_1 = -DCURL_STATICLIB
+subdir = src
+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)
+libcurltool_la_LIBADD =
+am__libcurltool_la_SOURCES_DIST = slist_wc.c tool_binmode.c \
+	tool_bname.c tool_cb_dbg.c tool_cb_hdr.c tool_cb_prg.c \
+	tool_cb_rea.c tool_cb_see.c tool_cb_wrt.c tool_cfgable.c \
+	tool_convert.c tool_dirhie.c tool_doswin.c tool_easysrc.c \
+	tool_formparse.c tool_getparam.c tool_getpass.c tool_help.c \
+	tool_helpers.c tool_homedir.c tool_hugehelp.c tool_libinfo.c \
+	tool_main.c tool_metalink.c tool_mfiles.c tool_msgs.c \
+	tool_operate.c tool_operhlp.c tool_panykey.c tool_paramhlp.c \
+	tool_parsecfg.c tool_strdup.c tool_setopt.c tool_sleep.c \
+	tool_urlglob.c tool_util.c tool_vms.c tool_writeout.c \
+	tool_xattr.c ../lib/strtoofft.c ../lib/nonblock.c \
+	../lib/warnless.c slist_wc.h tool_binmode.h tool_bname.h \
+	tool_cb_dbg.h tool_cb_hdr.h tool_cb_prg.h tool_cb_rea.h \
+	tool_cb_see.h tool_cb_wrt.h tool_cfgable.h tool_convert.h \
+	tool_dirhie.h tool_doswin.h tool_easysrc.h tool_formparse.h \
+	tool_getparam.h tool_getpass.h tool_help.h tool_helpers.h \
+	tool_homedir.h tool_hugehelp.h tool_libinfo.h tool_main.h \
+	tool_metalink.h tool_mfiles.h tool_msgs.h tool_operate.h \
+	tool_operhlp.h tool_panykey.h tool_paramhlp.h tool_parsecfg.h \
+	tool_sdecls.h tool_setopt.h tool_setup.h tool_sleep.h \
+	tool_strdup.h tool_urlglob.h tool_util.h tool_version.h \
+	tool_vms.h tool_writeout.h tool_xattr.h
+am__objects_1 = libcurltool_la-slist_wc.lo \
+	libcurltool_la-tool_binmode.lo libcurltool_la-tool_bname.lo \
+	libcurltool_la-tool_cb_dbg.lo libcurltool_la-tool_cb_hdr.lo \
+	libcurltool_la-tool_cb_prg.lo libcurltool_la-tool_cb_rea.lo \
+	libcurltool_la-tool_cb_see.lo libcurltool_la-tool_cb_wrt.lo \
+	libcurltool_la-tool_cfgable.lo libcurltool_la-tool_convert.lo \
+	libcurltool_la-tool_dirhie.lo libcurltool_la-tool_doswin.lo \
+	libcurltool_la-tool_easysrc.lo \
+	libcurltool_la-tool_formparse.lo \
+	libcurltool_la-tool_getparam.lo libcurltool_la-tool_getpass.lo \
+	libcurltool_la-tool_help.lo libcurltool_la-tool_helpers.lo \
+	libcurltool_la-tool_homedir.lo libcurltool_la-tool_hugehelp.lo \
+	libcurltool_la-tool_libinfo.lo libcurltool_la-tool_main.lo \
+	libcurltool_la-tool_metalink.lo libcurltool_la-tool_mfiles.lo \
+	libcurltool_la-tool_msgs.lo libcurltool_la-tool_operate.lo \
+	libcurltool_la-tool_operhlp.lo libcurltool_la-tool_panykey.lo \
+	libcurltool_la-tool_paramhlp.lo \
+	libcurltool_la-tool_parsecfg.lo libcurltool_la-tool_strdup.lo \
+	libcurltool_la-tool_setopt.lo libcurltool_la-tool_sleep.lo \
+	libcurltool_la-tool_urlglob.lo libcurltool_la-tool_util.lo \
+	libcurltool_la-tool_vms.lo libcurltool_la-tool_writeout.lo \
+	libcurltool_la-tool_xattr.lo
+am__dirstamp = $(am__leading_dot)dirstamp
+am__objects_2 = ../lib/libcurltool_la-strtoofft.lo \
+	../lib/libcurltool_la-nonblock.lo \
+	../lib/libcurltool_la-warnless.lo
+am__objects_3 =
+am__objects_4 = $(am__objects_1) $(am__objects_2) $(am__objects_3)
+am__objects_5 = $(am__objects_4)
+@BUILD_UNITTESTS_TRUE@am_libcurltool_la_OBJECTS = $(am__objects_5)
+libcurltool_la_OBJECTS = $(am_libcurltool_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 = 
+libcurltool_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+	$(libcurltool_la_CFLAGS) $(CFLAGS) $(libcurltool_la_LDFLAGS) \
+	$(LDFLAGS) -o $@
+@BUILD_UNITTESTS_TRUE@am_libcurltool_la_rpath =
+am__installdirs = "$(DESTDIR)$(bindir)"
+PROGRAMS = $(bin_PROGRAMS)
+am__objects_6 = curl-slist_wc.$(OBJEXT) curl-tool_binmode.$(OBJEXT) \
+	curl-tool_bname.$(OBJEXT) curl-tool_cb_dbg.$(OBJEXT) \
+	curl-tool_cb_hdr.$(OBJEXT) curl-tool_cb_prg.$(OBJEXT) \
+	curl-tool_cb_rea.$(OBJEXT) curl-tool_cb_see.$(OBJEXT) \
+	curl-tool_cb_wrt.$(OBJEXT) curl-tool_cfgable.$(OBJEXT) \
+	curl-tool_convert.$(OBJEXT) curl-tool_dirhie.$(OBJEXT) \
+	curl-tool_doswin.$(OBJEXT) curl-tool_easysrc.$(OBJEXT) \
+	curl-tool_formparse.$(OBJEXT) curl-tool_getparam.$(OBJEXT) \
+	curl-tool_getpass.$(OBJEXT) curl-tool_help.$(OBJEXT) \
+	curl-tool_helpers.$(OBJEXT) curl-tool_homedir.$(OBJEXT) \
+	curl-tool_hugehelp.$(OBJEXT) curl-tool_libinfo.$(OBJEXT) \
+	curl-tool_main.$(OBJEXT) curl-tool_metalink.$(OBJEXT) \
+	curl-tool_mfiles.$(OBJEXT) curl-tool_msgs.$(OBJEXT) \
+	curl-tool_operate.$(OBJEXT) curl-tool_operhlp.$(OBJEXT) \
+	curl-tool_panykey.$(OBJEXT) curl-tool_paramhlp.$(OBJEXT) \
+	curl-tool_parsecfg.$(OBJEXT) curl-tool_strdup.$(OBJEXT) \
+	curl-tool_setopt.$(OBJEXT) curl-tool_sleep.$(OBJEXT) \
+	curl-tool_urlglob.$(OBJEXT) curl-tool_util.$(OBJEXT) \
+	curl-tool_vms.$(OBJEXT) curl-tool_writeout.$(OBJEXT) \
+	curl-tool_xattr.$(OBJEXT)
+am__objects_7 = ../lib/curl-strtoofft.$(OBJEXT) \
+	../lib/curl-nonblock.$(OBJEXT) ../lib/curl-warnless.$(OBJEXT)
+am__objects_8 = $(am__objects_6) $(am__objects_7) $(am__objects_3)
+am_curl_OBJECTS = $(am__objects_8)
+curl_OBJECTS = $(am_curl_OBJECTS)
+@USE_EXPLICIT_LIB_DEPS_FALSE@curl_DEPENDENCIES =  \
+@USE_EXPLICIT_LIB_DEPS_FALSE@	$(top_builddir)/lib/libcurl.la
+@USE_EXPLICIT_LIB_DEPS_TRUE@curl_DEPENDENCIES =  \
+@USE_EXPLICIT_LIB_DEPS_TRUE@	$(top_builddir)/lib/libcurl.la
+curl_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(curl_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 = $(libcurltool_la_SOURCES) $(curl_SOURCES)
+DIST_SOURCES = $(am__libcurltool_la_SOURCES_DIST) $(curl_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@
+
+# This might hold -Werror
+CFLAGS = @CFLAGS@ @CURL_CFLAG_EXTRAS@ $(CODE_COVERAGE_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@
+# Use the C locale to ensure that only ASCII characters appear in the
+# embedded text.
+NROFF = env LC_ALL=C @NROFF@ @MANOPT@ # figured out by the configure script
+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
+
+# 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_builddir)/src is for curl's generated src/curl_config.h file
+# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "borrowed" files
+# $(top_srcdir)/src is for curl's src/tool_setup.h and "curl-private" files
+AM_CPPFLAGS = -I$(top_builddir)/include/curl -I$(top_builddir)/include \
+	-I$(top_srcdir)/include -I$(top_builddir)/lib \
+	-I$(top_builddir)/src -I$(top_srcdir)/lib -I$(top_srcdir)/src \
+	$(am__append_1)
+
+# libcurl has sources that provide functions named curlx_* that aren't part of
+# the official API, but we re-use the code here to avoid duplication.
+CURLX_CFILES = \
+	../lib/strtoofft.c \
+	../lib/nonblock.c \
+	../lib/warnless.c
+
+CURLX_HFILES = \
+	../lib/curl_setup.h \
+	../lib/strtoofft.h \
+	../lib/nonblock.h \
+	../lib/warnless.h
+
+CURL_CFILES = \
+	slist_wc.c \
+	tool_binmode.c \
+	tool_bname.c \
+	tool_cb_dbg.c \
+	tool_cb_hdr.c \
+	tool_cb_prg.c \
+	tool_cb_rea.c \
+	tool_cb_see.c \
+	tool_cb_wrt.c \
+	tool_cfgable.c \
+	tool_convert.c \
+	tool_dirhie.c \
+	tool_doswin.c \
+	tool_easysrc.c \
+	tool_formparse.c \
+	tool_getparam.c \
+	tool_getpass.c \
+	tool_help.c \
+	tool_helpers.c \
+	tool_homedir.c \
+	tool_hugehelp.c \
+	tool_libinfo.c \
+	tool_main.c \
+	tool_metalink.c \
+	tool_mfiles.c \
+	tool_msgs.c \
+	tool_operate.c \
+	tool_operhlp.c \
+	tool_panykey.c \
+	tool_paramhlp.c \
+	tool_parsecfg.c \
+	tool_strdup.c \
+	tool_setopt.c \
+	tool_sleep.c \
+	tool_urlglob.c \
+	tool_util.c \
+	tool_vms.c \
+	tool_writeout.c \
+	tool_xattr.c
+
+CURL_HFILES = \
+	slist_wc.h \
+	tool_binmode.h \
+	tool_bname.h \
+	tool_cb_dbg.h \
+	tool_cb_hdr.h \
+	tool_cb_prg.h \
+	tool_cb_rea.h \
+	tool_cb_see.h \
+	tool_cb_wrt.h \
+	tool_cfgable.h \
+	tool_convert.h \
+	tool_dirhie.h \
+	tool_doswin.h \
+	tool_easysrc.h \
+	tool_formparse.h \
+	tool_getparam.h \
+	tool_getpass.h \
+	tool_help.h \
+	tool_helpers.h \
+	tool_homedir.h \
+	tool_hugehelp.h \
+	tool_libinfo.h \
+	tool_main.h \
+	tool_metalink.h \
+	tool_mfiles.h \
+	tool_msgs.h \
+	tool_operate.h \
+	tool_operhlp.h \
+	tool_panykey.h \
+	tool_paramhlp.h \
+	tool_parsecfg.h \
+	tool_sdecls.h \
+	tool_setopt.h \
+	tool_setup.h \
+	tool_sleep.h \
+	tool_strdup.h \
+	tool_urlglob.h \
+	tool_util.h \
+	tool_version.h \
+	tool_vms.h \
+	tool_writeout.h \
+	tool_xattr.h
+
+CURL_RCFILES = curl.rc
+
+# curl_SOURCES is special and gets assigned in src/Makefile.am
+CURL_FILES = $(CURL_CFILES) $(CURLX_CFILES) $(CURL_HFILES)
+
+# CURL_FILES comes from Makefile.inc
+curl_SOURCES = $(CURL_FILES)
+@USE_EXPLICIT_LIB_DEPS_FALSE@curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @NSS_LIBS@ @SSL_LIBS@ @ZLIB_LIBS@ @CURL_NETWORK_AND_TIME_LIBS@
+@USE_EXPLICIT_LIB_DEPS_TRUE@curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @LIBCURL_LIBS@
+curl_LDFLAGS = @LIBMETALINK_LDFLAGS@ $(CODE_COVERAGE_LDFLAGS)
+curl_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
+
+# if unit tests are enabled, build a static library to link them with
+@BUILD_UNITTESTS_TRUE@noinst_LTLIBRARIES = libcurltool.la
+@BUILD_UNITTESTS_TRUE@libcurltool_la_CPPFLAGS = $(LIBMETALINK_CPPFLAGS) $(AM_CPPFLAGS) \
+@BUILD_UNITTESTS_TRUE@                          -DCURL_STATICLIB -DUNITTESTS
+
+@BUILD_UNITTESTS_TRUE@libcurltool_la_CFLAGS = 
+@BUILD_UNITTESTS_TRUE@libcurltool_la_LDFLAGS = -static $(LINKFLAGS)
+@BUILD_UNITTESTS_TRUE@libcurltool_la_SOURCES = $(curl_SOURCES)
+BUILT_SOURCES = tool_hugehelp.c
+CLEANFILES = tool_hugehelp.c
+EXTRA_DIST = mkhelp.pl makefile.dj Makefile.b32		\
+ Makefile.m32 macos/curl.mcp.xml.sit.hqx macos/MACINSTALL.TXT		\
+ macos/src/curl_GUSIConfig.cpp macos/src/macos_main.cpp makefile.amiga	\
+ curl.rc Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt
+
+
+# Use absolute directory to disable VPATH
+MANPAGE = $(abs_top_builddir)/docs/curl.1
+README = $(top_srcdir)/docs/MANUAL
+MKHELP = $(top_srcdir)/src/mkhelp.pl
+HUGE = tool_hugehelp.c
+all: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) 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 src/Makefile'; \
+	$(am__cd) $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign src/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}; \
+	}
+../lib/$(am__dirstamp):
+	@$(MKDIR_P) ../lib
+	@: > ../lib/$(am__dirstamp)
+../lib/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ../lib/$(DEPDIR)
+	@: > ../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/libcurltool_la-strtoofft.lo: ../lib/$(am__dirstamp) \
+	../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/libcurltool_la-nonblock.lo: ../lib/$(am__dirstamp) \
+	../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/libcurltool_la-warnless.lo: ../lib/$(am__dirstamp) \
+	../lib/$(DEPDIR)/$(am__dirstamp)
+
+libcurltool.la: $(libcurltool_la_OBJECTS) $(libcurltool_la_DEPENDENCIES) $(EXTRA_libcurltool_la_DEPENDENCIES) 
+	$(AM_V_CCLD)$(libcurltool_la_LINK) $(am_libcurltool_la_rpath) $(libcurltool_la_OBJECTS) $(libcurltool_la_LIBADD) $(LIBS)
+install-binPROGRAMS: $(bin_PROGRAMS)
+	@$(NORMAL_INSTALL)
+	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+	fi; \
+	for p in $$list; do echo "$$p $$p"; done | \
+	sed 's/$(EXEEXT)$$//' | \
+	while read p p1; do if test -f $$p \
+	 || test -f $$p1 \
+	  ; then echo "$$p"; echo "$$p"; else :; fi; \
+	done | \
+	sed -e 'p;s,.*/,,;n;h' \
+	    -e 's|.*|.|' \
+	    -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+	sed 'N;N;N;s,\n, ,g' | \
+	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+	    if ($$2 == $$4) files[d] = files[d] " " $$1; \
+	    else { print "f", $$3 "/" $$4, $$1; } } \
+	  END { for (d in files) print "f", d, files[d] }' | \
+	while read type dir files; do \
+	    if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+	    test -z "$$files" || { \
+	    echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+	    $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+	    } \
+	; done
+
+uninstall-binPROGRAMS:
+	@$(NORMAL_UNINSTALL)
+	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+	files=`for p in $$list; do echo "$$p"; done | \
+	  sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+	      -e 's/$$/$(EXEEXT)/' \
+	`; \
+	test -n "$$list" || exit 0; \
+	echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+	cd "$(DESTDIR)$(bindir)" && rm -f $$files
+
+clean-binPROGRAMS:
+	@list='$(bin_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/curl-strtoofft.$(OBJEXT): ../lib/$(am__dirstamp) \
+	../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/curl-nonblock.$(OBJEXT): ../lib/$(am__dirstamp) \
+	../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/curl-warnless.$(OBJEXT): ../lib/$(am__dirstamp) \
+	../lib/$(DEPDIR)/$(am__dirstamp)
+
+curl$(EXEEXT): $(curl_OBJECTS) $(curl_DEPENDENCIES) $(EXTRA_curl_DEPENDENCIES) 
+	@rm -f curl$(EXEEXT)
+	$(AM_V_CCLD)$(curl_LINK) $(curl_OBJECTS) $(curl_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+	-rm -f ../lib/*.$(OBJEXT)
+	-rm -f ../lib/*.lo
+
+distclean-compile:
+	-rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/curl-nonblock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/curl-strtoofft.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/curl-warnless.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/libcurltool_la-nonblock.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/libcurltool_la-strtoofft.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/libcurltool_la-warnless.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-slist_wc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_binmode.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_bname.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cb_dbg.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cb_hdr.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cb_prg.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cb_rea.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cb_see.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cb_wrt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_cfgable.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_convert.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_dirhie.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_doswin.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_easysrc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_formparse.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_getparam.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_getpass.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_help.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_helpers.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_homedir.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_hugehelp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_libinfo.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_main.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_metalink.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_mfiles.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_msgs.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_operate.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_operhlp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_panykey.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_paramhlp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_parsecfg.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_setopt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_sleep.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_strdup.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_urlglob.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_util.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_vms.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_writeout.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/curl-tool_xattr.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-slist_wc.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_binmode.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_bname.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cb_dbg.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cb_hdr.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cb_prg.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cb_rea.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cb_see.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cb_wrt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_cfgable.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_convert.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_dirhie.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_doswin.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_easysrc.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_formparse.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_getparam.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_getpass.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_help.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_helpers.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_homedir.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_hugehelp.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_libinfo.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_main.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_metalink.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_mfiles.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_msgs.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_operate.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_operhlp.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_panykey.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_paramhlp.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_parsecfg.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_setopt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_sleep.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_strdup.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_urlglob.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_util.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_vms.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_writeout.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurltool_la-tool_xattr.Plo@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 $@ $<
+
+libcurltool_la-slist_wc.lo: slist_wc.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-slist_wc.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-slist_wc.Tpo -c -o libcurltool_la-slist_wc.lo `test -f 'slist_wc.c' || echo '$(srcdir)/'`slist_wc.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-slist_wc.Tpo $(DEPDIR)/libcurltool_la-slist_wc.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='slist_wc.c' object='libcurltool_la-slist_wc.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-slist_wc.lo `test -f 'slist_wc.c' || echo '$(srcdir)/'`slist_wc.c
+
+libcurltool_la-tool_binmode.lo: tool_binmode.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_binmode.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_binmode.Tpo -c -o libcurltool_la-tool_binmode.lo `test -f 'tool_binmode.c' || echo '$(srcdir)/'`tool_binmode.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_binmode.Tpo $(DEPDIR)/libcurltool_la-tool_binmode.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_binmode.c' object='libcurltool_la-tool_binmode.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_binmode.lo `test -f 'tool_binmode.c' || echo '$(srcdir)/'`tool_binmode.c
+
+libcurltool_la-tool_bname.lo: tool_bname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_bname.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_bname.Tpo -c -o libcurltool_la-tool_bname.lo `test -f 'tool_bname.c' || echo '$(srcdir)/'`tool_bname.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_bname.Tpo $(DEPDIR)/libcurltool_la-tool_bname.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_bname.c' object='libcurltool_la-tool_bname.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_bname.lo `test -f 'tool_bname.c' || echo '$(srcdir)/'`tool_bname.c
+
+libcurltool_la-tool_cb_dbg.lo: tool_cb_dbg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cb_dbg.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cb_dbg.Tpo -c -o libcurltool_la-tool_cb_dbg.lo `test -f 'tool_cb_dbg.c' || echo '$(srcdir)/'`tool_cb_dbg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cb_dbg.Tpo $(DEPDIR)/libcurltool_la-tool_cb_dbg.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_dbg.c' object='libcurltool_la-tool_cb_dbg.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cb_dbg.lo `test -f 'tool_cb_dbg.c' || echo '$(srcdir)/'`tool_cb_dbg.c
+
+libcurltool_la-tool_cb_hdr.lo: tool_cb_hdr.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cb_hdr.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cb_hdr.Tpo -c -o libcurltool_la-tool_cb_hdr.lo `test -f 'tool_cb_hdr.c' || echo '$(srcdir)/'`tool_cb_hdr.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cb_hdr.Tpo $(DEPDIR)/libcurltool_la-tool_cb_hdr.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_hdr.c' object='libcurltool_la-tool_cb_hdr.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cb_hdr.lo `test -f 'tool_cb_hdr.c' || echo '$(srcdir)/'`tool_cb_hdr.c
+
+libcurltool_la-tool_cb_prg.lo: tool_cb_prg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cb_prg.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cb_prg.Tpo -c -o libcurltool_la-tool_cb_prg.lo `test -f 'tool_cb_prg.c' || echo '$(srcdir)/'`tool_cb_prg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cb_prg.Tpo $(DEPDIR)/libcurltool_la-tool_cb_prg.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_prg.c' object='libcurltool_la-tool_cb_prg.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cb_prg.lo `test -f 'tool_cb_prg.c' || echo '$(srcdir)/'`tool_cb_prg.c
+
+libcurltool_la-tool_cb_rea.lo: tool_cb_rea.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cb_rea.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cb_rea.Tpo -c -o libcurltool_la-tool_cb_rea.lo `test -f 'tool_cb_rea.c' || echo '$(srcdir)/'`tool_cb_rea.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cb_rea.Tpo $(DEPDIR)/libcurltool_la-tool_cb_rea.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_rea.c' object='libcurltool_la-tool_cb_rea.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cb_rea.lo `test -f 'tool_cb_rea.c' || echo '$(srcdir)/'`tool_cb_rea.c
+
+libcurltool_la-tool_cb_see.lo: tool_cb_see.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cb_see.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cb_see.Tpo -c -o libcurltool_la-tool_cb_see.lo `test -f 'tool_cb_see.c' || echo '$(srcdir)/'`tool_cb_see.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cb_see.Tpo $(DEPDIR)/libcurltool_la-tool_cb_see.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_see.c' object='libcurltool_la-tool_cb_see.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cb_see.lo `test -f 'tool_cb_see.c' || echo '$(srcdir)/'`tool_cb_see.c
+
+libcurltool_la-tool_cb_wrt.lo: tool_cb_wrt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cb_wrt.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cb_wrt.Tpo -c -o libcurltool_la-tool_cb_wrt.lo `test -f 'tool_cb_wrt.c' || echo '$(srcdir)/'`tool_cb_wrt.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cb_wrt.Tpo $(DEPDIR)/libcurltool_la-tool_cb_wrt.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_wrt.c' object='libcurltool_la-tool_cb_wrt.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cb_wrt.lo `test -f 'tool_cb_wrt.c' || echo '$(srcdir)/'`tool_cb_wrt.c
+
+libcurltool_la-tool_cfgable.lo: tool_cfgable.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_cfgable.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_cfgable.Tpo -c -o libcurltool_la-tool_cfgable.lo `test -f 'tool_cfgable.c' || echo '$(srcdir)/'`tool_cfgable.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_cfgable.Tpo $(DEPDIR)/libcurltool_la-tool_cfgable.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cfgable.c' object='libcurltool_la-tool_cfgable.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_cfgable.lo `test -f 'tool_cfgable.c' || echo '$(srcdir)/'`tool_cfgable.c
+
+libcurltool_la-tool_convert.lo: tool_convert.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_convert.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_convert.Tpo -c -o libcurltool_la-tool_convert.lo `test -f 'tool_convert.c' || echo '$(srcdir)/'`tool_convert.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_convert.Tpo $(DEPDIR)/libcurltool_la-tool_convert.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_convert.c' object='libcurltool_la-tool_convert.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_convert.lo `test -f 'tool_convert.c' || echo '$(srcdir)/'`tool_convert.c
+
+libcurltool_la-tool_dirhie.lo: tool_dirhie.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_dirhie.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_dirhie.Tpo -c -o libcurltool_la-tool_dirhie.lo `test -f 'tool_dirhie.c' || echo '$(srcdir)/'`tool_dirhie.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_dirhie.Tpo $(DEPDIR)/libcurltool_la-tool_dirhie.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_dirhie.c' object='libcurltool_la-tool_dirhie.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_dirhie.lo `test -f 'tool_dirhie.c' || echo '$(srcdir)/'`tool_dirhie.c
+
+libcurltool_la-tool_doswin.lo: tool_doswin.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_doswin.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_doswin.Tpo -c -o libcurltool_la-tool_doswin.lo `test -f 'tool_doswin.c' || echo '$(srcdir)/'`tool_doswin.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_doswin.Tpo $(DEPDIR)/libcurltool_la-tool_doswin.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_doswin.c' object='libcurltool_la-tool_doswin.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_doswin.lo `test -f 'tool_doswin.c' || echo '$(srcdir)/'`tool_doswin.c
+
+libcurltool_la-tool_easysrc.lo: tool_easysrc.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_easysrc.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_easysrc.Tpo -c -o libcurltool_la-tool_easysrc.lo `test -f 'tool_easysrc.c' || echo '$(srcdir)/'`tool_easysrc.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_easysrc.Tpo $(DEPDIR)/libcurltool_la-tool_easysrc.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_easysrc.c' object='libcurltool_la-tool_easysrc.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_easysrc.lo `test -f 'tool_easysrc.c' || echo '$(srcdir)/'`tool_easysrc.c
+
+libcurltool_la-tool_formparse.lo: tool_formparse.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_formparse.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_formparse.Tpo -c -o libcurltool_la-tool_formparse.lo `test -f 'tool_formparse.c' || echo '$(srcdir)/'`tool_formparse.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_formparse.Tpo $(DEPDIR)/libcurltool_la-tool_formparse.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_formparse.c' object='libcurltool_la-tool_formparse.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_formparse.lo `test -f 'tool_formparse.c' || echo '$(srcdir)/'`tool_formparse.c
+
+libcurltool_la-tool_getparam.lo: tool_getparam.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_getparam.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_getparam.Tpo -c -o libcurltool_la-tool_getparam.lo `test -f 'tool_getparam.c' || echo '$(srcdir)/'`tool_getparam.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_getparam.Tpo $(DEPDIR)/libcurltool_la-tool_getparam.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_getparam.c' object='libcurltool_la-tool_getparam.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_getparam.lo `test -f 'tool_getparam.c' || echo '$(srcdir)/'`tool_getparam.c
+
+libcurltool_la-tool_getpass.lo: tool_getpass.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_getpass.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_getpass.Tpo -c -o libcurltool_la-tool_getpass.lo `test -f 'tool_getpass.c' || echo '$(srcdir)/'`tool_getpass.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_getpass.Tpo $(DEPDIR)/libcurltool_la-tool_getpass.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_getpass.c' object='libcurltool_la-tool_getpass.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_getpass.lo `test -f 'tool_getpass.c' || echo '$(srcdir)/'`tool_getpass.c
+
+libcurltool_la-tool_help.lo: tool_help.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_help.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_help.Tpo -c -o libcurltool_la-tool_help.lo `test -f 'tool_help.c' || echo '$(srcdir)/'`tool_help.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_help.Tpo $(DEPDIR)/libcurltool_la-tool_help.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_help.c' object='libcurltool_la-tool_help.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_help.lo `test -f 'tool_help.c' || echo '$(srcdir)/'`tool_help.c
+
+libcurltool_la-tool_helpers.lo: tool_helpers.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_helpers.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_helpers.Tpo -c -o libcurltool_la-tool_helpers.lo `test -f 'tool_helpers.c' || echo '$(srcdir)/'`tool_helpers.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_helpers.Tpo $(DEPDIR)/libcurltool_la-tool_helpers.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_helpers.c' object='libcurltool_la-tool_helpers.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_helpers.lo `test -f 'tool_helpers.c' || echo '$(srcdir)/'`tool_helpers.c
+
+libcurltool_la-tool_homedir.lo: tool_homedir.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_homedir.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_homedir.Tpo -c -o libcurltool_la-tool_homedir.lo `test -f 'tool_homedir.c' || echo '$(srcdir)/'`tool_homedir.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_homedir.Tpo $(DEPDIR)/libcurltool_la-tool_homedir.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_homedir.c' object='libcurltool_la-tool_homedir.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_homedir.lo `test -f 'tool_homedir.c' || echo '$(srcdir)/'`tool_homedir.c
+
+libcurltool_la-tool_hugehelp.lo: tool_hugehelp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_hugehelp.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_hugehelp.Tpo -c -o libcurltool_la-tool_hugehelp.lo `test -f 'tool_hugehelp.c' || echo '$(srcdir)/'`tool_hugehelp.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_hugehelp.Tpo $(DEPDIR)/libcurltool_la-tool_hugehelp.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_hugehelp.c' object='libcurltool_la-tool_hugehelp.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_hugehelp.lo `test -f 'tool_hugehelp.c' || echo '$(srcdir)/'`tool_hugehelp.c
+
+libcurltool_la-tool_libinfo.lo: tool_libinfo.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_libinfo.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_libinfo.Tpo -c -o libcurltool_la-tool_libinfo.lo `test -f 'tool_libinfo.c' || echo '$(srcdir)/'`tool_libinfo.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_libinfo.Tpo $(DEPDIR)/libcurltool_la-tool_libinfo.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_libinfo.c' object='libcurltool_la-tool_libinfo.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_libinfo.lo `test -f 'tool_libinfo.c' || echo '$(srcdir)/'`tool_libinfo.c
+
+libcurltool_la-tool_main.lo: tool_main.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_main.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_main.Tpo -c -o libcurltool_la-tool_main.lo `test -f 'tool_main.c' || echo '$(srcdir)/'`tool_main.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_main.Tpo $(DEPDIR)/libcurltool_la-tool_main.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_main.c' object='libcurltool_la-tool_main.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_main.lo `test -f 'tool_main.c' || echo '$(srcdir)/'`tool_main.c
+
+libcurltool_la-tool_metalink.lo: tool_metalink.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_metalink.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_metalink.Tpo -c -o libcurltool_la-tool_metalink.lo `test -f 'tool_metalink.c' || echo '$(srcdir)/'`tool_metalink.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_metalink.Tpo $(DEPDIR)/libcurltool_la-tool_metalink.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_metalink.c' object='libcurltool_la-tool_metalink.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_metalink.lo `test -f 'tool_metalink.c' || echo '$(srcdir)/'`tool_metalink.c
+
+libcurltool_la-tool_mfiles.lo: tool_mfiles.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_mfiles.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_mfiles.Tpo -c -o libcurltool_la-tool_mfiles.lo `test -f 'tool_mfiles.c' || echo '$(srcdir)/'`tool_mfiles.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_mfiles.Tpo $(DEPDIR)/libcurltool_la-tool_mfiles.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_mfiles.c' object='libcurltool_la-tool_mfiles.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_mfiles.lo `test -f 'tool_mfiles.c' || echo '$(srcdir)/'`tool_mfiles.c
+
+libcurltool_la-tool_msgs.lo: tool_msgs.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_msgs.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_msgs.Tpo -c -o libcurltool_la-tool_msgs.lo `test -f 'tool_msgs.c' || echo '$(srcdir)/'`tool_msgs.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_msgs.Tpo $(DEPDIR)/libcurltool_la-tool_msgs.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_msgs.c' object='libcurltool_la-tool_msgs.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_msgs.lo `test -f 'tool_msgs.c' || echo '$(srcdir)/'`tool_msgs.c
+
+libcurltool_la-tool_operate.lo: tool_operate.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_operate.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_operate.Tpo -c -o libcurltool_la-tool_operate.lo `test -f 'tool_operate.c' || echo '$(srcdir)/'`tool_operate.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_operate.Tpo $(DEPDIR)/libcurltool_la-tool_operate.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_operate.c' object='libcurltool_la-tool_operate.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_operate.lo `test -f 'tool_operate.c' || echo '$(srcdir)/'`tool_operate.c
+
+libcurltool_la-tool_operhlp.lo: tool_operhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_operhlp.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_operhlp.Tpo -c -o libcurltool_la-tool_operhlp.lo `test -f 'tool_operhlp.c' || echo '$(srcdir)/'`tool_operhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_operhlp.Tpo $(DEPDIR)/libcurltool_la-tool_operhlp.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_operhlp.c' object='libcurltool_la-tool_operhlp.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_operhlp.lo `test -f 'tool_operhlp.c' || echo '$(srcdir)/'`tool_operhlp.c
+
+libcurltool_la-tool_panykey.lo: tool_panykey.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_panykey.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_panykey.Tpo -c -o libcurltool_la-tool_panykey.lo `test -f 'tool_panykey.c' || echo '$(srcdir)/'`tool_panykey.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_panykey.Tpo $(DEPDIR)/libcurltool_la-tool_panykey.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_panykey.c' object='libcurltool_la-tool_panykey.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_panykey.lo `test -f 'tool_panykey.c' || echo '$(srcdir)/'`tool_panykey.c
+
+libcurltool_la-tool_paramhlp.lo: tool_paramhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_paramhlp.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_paramhlp.Tpo -c -o libcurltool_la-tool_paramhlp.lo `test -f 'tool_paramhlp.c' || echo '$(srcdir)/'`tool_paramhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_paramhlp.Tpo $(DEPDIR)/libcurltool_la-tool_paramhlp.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_paramhlp.c' object='libcurltool_la-tool_paramhlp.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_paramhlp.lo `test -f 'tool_paramhlp.c' || echo '$(srcdir)/'`tool_paramhlp.c
+
+libcurltool_la-tool_parsecfg.lo: tool_parsecfg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_parsecfg.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_parsecfg.Tpo -c -o libcurltool_la-tool_parsecfg.lo `test -f 'tool_parsecfg.c' || echo '$(srcdir)/'`tool_parsecfg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_parsecfg.Tpo $(DEPDIR)/libcurltool_la-tool_parsecfg.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_parsecfg.c' object='libcurltool_la-tool_parsecfg.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_parsecfg.lo `test -f 'tool_parsecfg.c' || echo '$(srcdir)/'`tool_parsecfg.c
+
+libcurltool_la-tool_strdup.lo: tool_strdup.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_strdup.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_strdup.Tpo -c -o libcurltool_la-tool_strdup.lo `test -f 'tool_strdup.c' || echo '$(srcdir)/'`tool_strdup.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_strdup.Tpo $(DEPDIR)/libcurltool_la-tool_strdup.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_strdup.c' object='libcurltool_la-tool_strdup.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_strdup.lo `test -f 'tool_strdup.c' || echo '$(srcdir)/'`tool_strdup.c
+
+libcurltool_la-tool_setopt.lo: tool_setopt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_setopt.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_setopt.Tpo -c -o libcurltool_la-tool_setopt.lo `test -f 'tool_setopt.c' || echo '$(srcdir)/'`tool_setopt.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_setopt.Tpo $(DEPDIR)/libcurltool_la-tool_setopt.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_setopt.c' object='libcurltool_la-tool_setopt.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_setopt.lo `test -f 'tool_setopt.c' || echo '$(srcdir)/'`tool_setopt.c
+
+libcurltool_la-tool_sleep.lo: tool_sleep.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_sleep.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_sleep.Tpo -c -o libcurltool_la-tool_sleep.lo `test -f 'tool_sleep.c' || echo '$(srcdir)/'`tool_sleep.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_sleep.Tpo $(DEPDIR)/libcurltool_la-tool_sleep.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_sleep.c' object='libcurltool_la-tool_sleep.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_sleep.lo `test -f 'tool_sleep.c' || echo '$(srcdir)/'`tool_sleep.c
+
+libcurltool_la-tool_urlglob.lo: tool_urlglob.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_urlglob.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_urlglob.Tpo -c -o libcurltool_la-tool_urlglob.lo `test -f 'tool_urlglob.c' || echo '$(srcdir)/'`tool_urlglob.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_urlglob.Tpo $(DEPDIR)/libcurltool_la-tool_urlglob.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_urlglob.c' object='libcurltool_la-tool_urlglob.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_urlglob.lo `test -f 'tool_urlglob.c' || echo '$(srcdir)/'`tool_urlglob.c
+
+libcurltool_la-tool_util.lo: tool_util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_util.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_util.Tpo -c -o libcurltool_la-tool_util.lo `test -f 'tool_util.c' || echo '$(srcdir)/'`tool_util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_util.Tpo $(DEPDIR)/libcurltool_la-tool_util.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_util.c' object='libcurltool_la-tool_util.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_util.lo `test -f 'tool_util.c' || echo '$(srcdir)/'`tool_util.c
+
+libcurltool_la-tool_vms.lo: tool_vms.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_vms.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_vms.Tpo -c -o libcurltool_la-tool_vms.lo `test -f 'tool_vms.c' || echo '$(srcdir)/'`tool_vms.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_vms.Tpo $(DEPDIR)/libcurltool_la-tool_vms.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_vms.c' object='libcurltool_la-tool_vms.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_vms.lo `test -f 'tool_vms.c' || echo '$(srcdir)/'`tool_vms.c
+
+libcurltool_la-tool_writeout.lo: tool_writeout.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_writeout.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_writeout.Tpo -c -o libcurltool_la-tool_writeout.lo `test -f 'tool_writeout.c' || echo '$(srcdir)/'`tool_writeout.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_writeout.Tpo $(DEPDIR)/libcurltool_la-tool_writeout.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_writeout.c' object='libcurltool_la-tool_writeout.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_writeout.lo `test -f 'tool_writeout.c' || echo '$(srcdir)/'`tool_writeout.c
+
+libcurltool_la-tool_xattr.lo: tool_xattr.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT libcurltool_la-tool_xattr.lo -MD -MP -MF $(DEPDIR)/libcurltool_la-tool_xattr.Tpo -c -o libcurltool_la-tool_xattr.lo `test -f 'tool_xattr.c' || echo '$(srcdir)/'`tool_xattr.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libcurltool_la-tool_xattr.Tpo $(DEPDIR)/libcurltool_la-tool_xattr.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_xattr.c' object='libcurltool_la-tool_xattr.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o libcurltool_la-tool_xattr.lo `test -f 'tool_xattr.c' || echo '$(srcdir)/'`tool_xattr.c
+
+../lib/libcurltool_la-strtoofft.lo: ../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT ../lib/libcurltool_la-strtoofft.lo -MD -MP -MF ../lib/$(DEPDIR)/libcurltool_la-strtoofft.Tpo -c -o ../lib/libcurltool_la-strtoofft.lo `test -f '../lib/strtoofft.c' || echo '$(srcdir)/'`../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/libcurltool_la-strtoofft.Tpo ../lib/$(DEPDIR)/libcurltool_la-strtoofft.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/strtoofft.c' object='../lib/libcurltool_la-strtoofft.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o ../lib/libcurltool_la-strtoofft.lo `test -f '../lib/strtoofft.c' || echo '$(srcdir)/'`../lib/strtoofft.c
+
+../lib/libcurltool_la-nonblock.lo: ../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT ../lib/libcurltool_la-nonblock.lo -MD -MP -MF ../lib/$(DEPDIR)/libcurltool_la-nonblock.Tpo -c -o ../lib/libcurltool_la-nonblock.lo `test -f '../lib/nonblock.c' || echo '$(srcdir)/'`../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/libcurltool_la-nonblock.Tpo ../lib/$(DEPDIR)/libcurltool_la-nonblock.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/nonblock.c' object='../lib/libcurltool_la-nonblock.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o ../lib/libcurltool_la-nonblock.lo `test -f '../lib/nonblock.c' || echo '$(srcdir)/'`../lib/nonblock.c
+
+../lib/libcurltool_la-warnless.lo: ../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -MT ../lib/libcurltool_la-warnless.lo -MD -MP -MF ../lib/$(DEPDIR)/libcurltool_la-warnless.Tpo -c -o ../lib/libcurltool_la-warnless.lo `test -f '../lib/warnless.c' || echo '$(srcdir)/'`../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/libcurltool_la-warnless.Tpo ../lib/$(DEPDIR)/libcurltool_la-warnless.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/warnless.c' object='../lib/libcurltool_la-warnless.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) $(libcurltool_la_CPPFLAGS) $(CPPFLAGS) $(libcurltool_la_CFLAGS) $(CFLAGS) -c -o ../lib/libcurltool_la-warnless.lo `test -f '../lib/warnless.c' || echo '$(srcdir)/'`../lib/warnless.c
+
+curl-slist_wc.o: slist_wc.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-slist_wc.o -MD -MP -MF $(DEPDIR)/curl-slist_wc.Tpo -c -o curl-slist_wc.o `test -f 'slist_wc.c' || echo '$(srcdir)/'`slist_wc.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-slist_wc.Tpo $(DEPDIR)/curl-slist_wc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='slist_wc.c' object='curl-slist_wc.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-slist_wc.o `test -f 'slist_wc.c' || echo '$(srcdir)/'`slist_wc.c
+
+curl-slist_wc.obj: slist_wc.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-slist_wc.obj -MD -MP -MF $(DEPDIR)/curl-slist_wc.Tpo -c -o curl-slist_wc.obj `if test -f 'slist_wc.c'; then $(CYGPATH_W) 'slist_wc.c'; else $(CYGPATH_W) '$(srcdir)/slist_wc.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-slist_wc.Tpo $(DEPDIR)/curl-slist_wc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='slist_wc.c' object='curl-slist_wc.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-slist_wc.obj `if test -f 'slist_wc.c'; then $(CYGPATH_W) 'slist_wc.c'; else $(CYGPATH_W) '$(srcdir)/slist_wc.c'; fi`
+
+curl-tool_binmode.o: tool_binmode.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_binmode.o -MD -MP -MF $(DEPDIR)/curl-tool_binmode.Tpo -c -o curl-tool_binmode.o `test -f 'tool_binmode.c' || echo '$(srcdir)/'`tool_binmode.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_binmode.Tpo $(DEPDIR)/curl-tool_binmode.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_binmode.c' object='curl-tool_binmode.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_binmode.o `test -f 'tool_binmode.c' || echo '$(srcdir)/'`tool_binmode.c
+
+curl-tool_binmode.obj: tool_binmode.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_binmode.obj -MD -MP -MF $(DEPDIR)/curl-tool_binmode.Tpo -c -o curl-tool_binmode.obj `if test -f 'tool_binmode.c'; then $(CYGPATH_W) 'tool_binmode.c'; else $(CYGPATH_W) '$(srcdir)/tool_binmode.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_binmode.Tpo $(DEPDIR)/curl-tool_binmode.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_binmode.c' object='curl-tool_binmode.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_binmode.obj `if test -f 'tool_binmode.c'; then $(CYGPATH_W) 'tool_binmode.c'; else $(CYGPATH_W) '$(srcdir)/tool_binmode.c'; fi`
+
+curl-tool_bname.o: tool_bname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_bname.o -MD -MP -MF $(DEPDIR)/curl-tool_bname.Tpo -c -o curl-tool_bname.o `test -f 'tool_bname.c' || echo '$(srcdir)/'`tool_bname.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_bname.Tpo $(DEPDIR)/curl-tool_bname.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_bname.c' object='curl-tool_bname.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_bname.o `test -f 'tool_bname.c' || echo '$(srcdir)/'`tool_bname.c
+
+curl-tool_bname.obj: tool_bname.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_bname.obj -MD -MP -MF $(DEPDIR)/curl-tool_bname.Tpo -c -o curl-tool_bname.obj `if test -f 'tool_bname.c'; then $(CYGPATH_W) 'tool_bname.c'; else $(CYGPATH_W) '$(srcdir)/tool_bname.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_bname.Tpo $(DEPDIR)/curl-tool_bname.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_bname.c' object='curl-tool_bname.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_bname.obj `if test -f 'tool_bname.c'; then $(CYGPATH_W) 'tool_bname.c'; else $(CYGPATH_W) '$(srcdir)/tool_bname.c'; fi`
+
+curl-tool_cb_dbg.o: tool_cb_dbg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_dbg.o -MD -MP -MF $(DEPDIR)/curl-tool_cb_dbg.Tpo -c -o curl-tool_cb_dbg.o `test -f 'tool_cb_dbg.c' || echo '$(srcdir)/'`tool_cb_dbg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_dbg.Tpo $(DEPDIR)/curl-tool_cb_dbg.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_dbg.c' object='curl-tool_cb_dbg.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_dbg.o `test -f 'tool_cb_dbg.c' || echo '$(srcdir)/'`tool_cb_dbg.c
+
+curl-tool_cb_dbg.obj: tool_cb_dbg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_dbg.obj -MD -MP -MF $(DEPDIR)/curl-tool_cb_dbg.Tpo -c -o curl-tool_cb_dbg.obj `if test -f 'tool_cb_dbg.c'; then $(CYGPATH_W) 'tool_cb_dbg.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_dbg.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_dbg.Tpo $(DEPDIR)/curl-tool_cb_dbg.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_dbg.c' object='curl-tool_cb_dbg.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_dbg.obj `if test -f 'tool_cb_dbg.c'; then $(CYGPATH_W) 'tool_cb_dbg.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_dbg.c'; fi`
+
+curl-tool_cb_hdr.o: tool_cb_hdr.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_hdr.o -MD -MP -MF $(DEPDIR)/curl-tool_cb_hdr.Tpo -c -o curl-tool_cb_hdr.o `test -f 'tool_cb_hdr.c' || echo '$(srcdir)/'`tool_cb_hdr.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_hdr.Tpo $(DEPDIR)/curl-tool_cb_hdr.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_hdr.c' object='curl-tool_cb_hdr.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_hdr.o `test -f 'tool_cb_hdr.c' || echo '$(srcdir)/'`tool_cb_hdr.c
+
+curl-tool_cb_hdr.obj: tool_cb_hdr.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_hdr.obj -MD -MP -MF $(DEPDIR)/curl-tool_cb_hdr.Tpo -c -o curl-tool_cb_hdr.obj `if test -f 'tool_cb_hdr.c'; then $(CYGPATH_W) 'tool_cb_hdr.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_hdr.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_hdr.Tpo $(DEPDIR)/curl-tool_cb_hdr.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_hdr.c' object='curl-tool_cb_hdr.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_hdr.obj `if test -f 'tool_cb_hdr.c'; then $(CYGPATH_W) 'tool_cb_hdr.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_hdr.c'; fi`
+
+curl-tool_cb_prg.o: tool_cb_prg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_prg.o -MD -MP -MF $(DEPDIR)/curl-tool_cb_prg.Tpo -c -o curl-tool_cb_prg.o `test -f 'tool_cb_prg.c' || echo '$(srcdir)/'`tool_cb_prg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_prg.Tpo $(DEPDIR)/curl-tool_cb_prg.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_prg.c' object='curl-tool_cb_prg.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_prg.o `test -f 'tool_cb_prg.c' || echo '$(srcdir)/'`tool_cb_prg.c
+
+curl-tool_cb_prg.obj: tool_cb_prg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_prg.obj -MD -MP -MF $(DEPDIR)/curl-tool_cb_prg.Tpo -c -o curl-tool_cb_prg.obj `if test -f 'tool_cb_prg.c'; then $(CYGPATH_W) 'tool_cb_prg.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_prg.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_prg.Tpo $(DEPDIR)/curl-tool_cb_prg.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_prg.c' object='curl-tool_cb_prg.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_prg.obj `if test -f 'tool_cb_prg.c'; then $(CYGPATH_W) 'tool_cb_prg.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_prg.c'; fi`
+
+curl-tool_cb_rea.o: tool_cb_rea.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_rea.o -MD -MP -MF $(DEPDIR)/curl-tool_cb_rea.Tpo -c -o curl-tool_cb_rea.o `test -f 'tool_cb_rea.c' || echo '$(srcdir)/'`tool_cb_rea.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_rea.Tpo $(DEPDIR)/curl-tool_cb_rea.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_rea.c' object='curl-tool_cb_rea.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_rea.o `test -f 'tool_cb_rea.c' || echo '$(srcdir)/'`tool_cb_rea.c
+
+curl-tool_cb_rea.obj: tool_cb_rea.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_rea.obj -MD -MP -MF $(DEPDIR)/curl-tool_cb_rea.Tpo -c -o curl-tool_cb_rea.obj `if test -f 'tool_cb_rea.c'; then $(CYGPATH_W) 'tool_cb_rea.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_rea.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_rea.Tpo $(DEPDIR)/curl-tool_cb_rea.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_rea.c' object='curl-tool_cb_rea.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_rea.obj `if test -f 'tool_cb_rea.c'; then $(CYGPATH_W) 'tool_cb_rea.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_rea.c'; fi`
+
+curl-tool_cb_see.o: tool_cb_see.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_see.o -MD -MP -MF $(DEPDIR)/curl-tool_cb_see.Tpo -c -o curl-tool_cb_see.o `test -f 'tool_cb_see.c' || echo '$(srcdir)/'`tool_cb_see.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_see.Tpo $(DEPDIR)/curl-tool_cb_see.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_see.c' object='curl-tool_cb_see.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_see.o `test -f 'tool_cb_see.c' || echo '$(srcdir)/'`tool_cb_see.c
+
+curl-tool_cb_see.obj: tool_cb_see.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_see.obj -MD -MP -MF $(DEPDIR)/curl-tool_cb_see.Tpo -c -o curl-tool_cb_see.obj `if test -f 'tool_cb_see.c'; then $(CYGPATH_W) 'tool_cb_see.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_see.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_see.Tpo $(DEPDIR)/curl-tool_cb_see.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_see.c' object='curl-tool_cb_see.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_see.obj `if test -f 'tool_cb_see.c'; then $(CYGPATH_W) 'tool_cb_see.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_see.c'; fi`
+
+curl-tool_cb_wrt.o: tool_cb_wrt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_wrt.o -MD -MP -MF $(DEPDIR)/curl-tool_cb_wrt.Tpo -c -o curl-tool_cb_wrt.o `test -f 'tool_cb_wrt.c' || echo '$(srcdir)/'`tool_cb_wrt.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_wrt.Tpo $(DEPDIR)/curl-tool_cb_wrt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_wrt.c' object='curl-tool_cb_wrt.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_wrt.o `test -f 'tool_cb_wrt.c' || echo '$(srcdir)/'`tool_cb_wrt.c
+
+curl-tool_cb_wrt.obj: tool_cb_wrt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cb_wrt.obj -MD -MP -MF $(DEPDIR)/curl-tool_cb_wrt.Tpo -c -o curl-tool_cb_wrt.obj `if test -f 'tool_cb_wrt.c'; then $(CYGPATH_W) 'tool_cb_wrt.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_wrt.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cb_wrt.Tpo $(DEPDIR)/curl-tool_cb_wrt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cb_wrt.c' object='curl-tool_cb_wrt.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cb_wrt.obj `if test -f 'tool_cb_wrt.c'; then $(CYGPATH_W) 'tool_cb_wrt.c'; else $(CYGPATH_W) '$(srcdir)/tool_cb_wrt.c'; fi`
+
+curl-tool_cfgable.o: tool_cfgable.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cfgable.o -MD -MP -MF $(DEPDIR)/curl-tool_cfgable.Tpo -c -o curl-tool_cfgable.o `test -f 'tool_cfgable.c' || echo '$(srcdir)/'`tool_cfgable.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cfgable.Tpo $(DEPDIR)/curl-tool_cfgable.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cfgable.c' object='curl-tool_cfgable.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cfgable.o `test -f 'tool_cfgable.c' || echo '$(srcdir)/'`tool_cfgable.c
+
+curl-tool_cfgable.obj: tool_cfgable.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_cfgable.obj -MD -MP -MF $(DEPDIR)/curl-tool_cfgable.Tpo -c -o curl-tool_cfgable.obj `if test -f 'tool_cfgable.c'; then $(CYGPATH_W) 'tool_cfgable.c'; else $(CYGPATH_W) '$(srcdir)/tool_cfgable.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_cfgable.Tpo $(DEPDIR)/curl-tool_cfgable.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_cfgable.c' object='curl-tool_cfgable.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_cfgable.obj `if test -f 'tool_cfgable.c'; then $(CYGPATH_W) 'tool_cfgable.c'; else $(CYGPATH_W) '$(srcdir)/tool_cfgable.c'; fi`
+
+curl-tool_convert.o: tool_convert.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_convert.o -MD -MP -MF $(DEPDIR)/curl-tool_convert.Tpo -c -o curl-tool_convert.o `test -f 'tool_convert.c' || echo '$(srcdir)/'`tool_convert.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_convert.Tpo $(DEPDIR)/curl-tool_convert.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_convert.c' object='curl-tool_convert.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_convert.o `test -f 'tool_convert.c' || echo '$(srcdir)/'`tool_convert.c
+
+curl-tool_convert.obj: tool_convert.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_convert.obj -MD -MP -MF $(DEPDIR)/curl-tool_convert.Tpo -c -o curl-tool_convert.obj `if test -f 'tool_convert.c'; then $(CYGPATH_W) 'tool_convert.c'; else $(CYGPATH_W) '$(srcdir)/tool_convert.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_convert.Tpo $(DEPDIR)/curl-tool_convert.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_convert.c' object='curl-tool_convert.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_convert.obj `if test -f 'tool_convert.c'; then $(CYGPATH_W) 'tool_convert.c'; else $(CYGPATH_W) '$(srcdir)/tool_convert.c'; fi`
+
+curl-tool_dirhie.o: tool_dirhie.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_dirhie.o -MD -MP -MF $(DEPDIR)/curl-tool_dirhie.Tpo -c -o curl-tool_dirhie.o `test -f 'tool_dirhie.c' || echo '$(srcdir)/'`tool_dirhie.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_dirhie.Tpo $(DEPDIR)/curl-tool_dirhie.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_dirhie.c' object='curl-tool_dirhie.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_dirhie.o `test -f 'tool_dirhie.c' || echo '$(srcdir)/'`tool_dirhie.c
+
+curl-tool_dirhie.obj: tool_dirhie.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_dirhie.obj -MD -MP -MF $(DEPDIR)/curl-tool_dirhie.Tpo -c -o curl-tool_dirhie.obj `if test -f 'tool_dirhie.c'; then $(CYGPATH_W) 'tool_dirhie.c'; else $(CYGPATH_W) '$(srcdir)/tool_dirhie.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_dirhie.Tpo $(DEPDIR)/curl-tool_dirhie.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_dirhie.c' object='curl-tool_dirhie.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_dirhie.obj `if test -f 'tool_dirhie.c'; then $(CYGPATH_W) 'tool_dirhie.c'; else $(CYGPATH_W) '$(srcdir)/tool_dirhie.c'; fi`
+
+curl-tool_doswin.o: tool_doswin.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_doswin.o -MD -MP -MF $(DEPDIR)/curl-tool_doswin.Tpo -c -o curl-tool_doswin.o `test -f 'tool_doswin.c' || echo '$(srcdir)/'`tool_doswin.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_doswin.Tpo $(DEPDIR)/curl-tool_doswin.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_doswin.c' object='curl-tool_doswin.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_doswin.o `test -f 'tool_doswin.c' || echo '$(srcdir)/'`tool_doswin.c
+
+curl-tool_doswin.obj: tool_doswin.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_doswin.obj -MD -MP -MF $(DEPDIR)/curl-tool_doswin.Tpo -c -o curl-tool_doswin.obj `if test -f 'tool_doswin.c'; then $(CYGPATH_W) 'tool_doswin.c'; else $(CYGPATH_W) '$(srcdir)/tool_doswin.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_doswin.Tpo $(DEPDIR)/curl-tool_doswin.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_doswin.c' object='curl-tool_doswin.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_doswin.obj `if test -f 'tool_doswin.c'; then $(CYGPATH_W) 'tool_doswin.c'; else $(CYGPATH_W) '$(srcdir)/tool_doswin.c'; fi`
+
+curl-tool_easysrc.o: tool_easysrc.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_easysrc.o -MD -MP -MF $(DEPDIR)/curl-tool_easysrc.Tpo -c -o curl-tool_easysrc.o `test -f 'tool_easysrc.c' || echo '$(srcdir)/'`tool_easysrc.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_easysrc.Tpo $(DEPDIR)/curl-tool_easysrc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_easysrc.c' object='curl-tool_easysrc.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_easysrc.o `test -f 'tool_easysrc.c' || echo '$(srcdir)/'`tool_easysrc.c
+
+curl-tool_easysrc.obj: tool_easysrc.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_easysrc.obj -MD -MP -MF $(DEPDIR)/curl-tool_easysrc.Tpo -c -o curl-tool_easysrc.obj `if test -f 'tool_easysrc.c'; then $(CYGPATH_W) 'tool_easysrc.c'; else $(CYGPATH_W) '$(srcdir)/tool_easysrc.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_easysrc.Tpo $(DEPDIR)/curl-tool_easysrc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_easysrc.c' object='curl-tool_easysrc.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_easysrc.obj `if test -f 'tool_easysrc.c'; then $(CYGPATH_W) 'tool_easysrc.c'; else $(CYGPATH_W) '$(srcdir)/tool_easysrc.c'; fi`
+
+curl-tool_formparse.o: tool_formparse.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_formparse.o -MD -MP -MF $(DEPDIR)/curl-tool_formparse.Tpo -c -o curl-tool_formparse.o `test -f 'tool_formparse.c' || echo '$(srcdir)/'`tool_formparse.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_formparse.Tpo $(DEPDIR)/curl-tool_formparse.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_formparse.c' object='curl-tool_formparse.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_formparse.o `test -f 'tool_formparse.c' || echo '$(srcdir)/'`tool_formparse.c
+
+curl-tool_formparse.obj: tool_formparse.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_formparse.obj -MD -MP -MF $(DEPDIR)/curl-tool_formparse.Tpo -c -o curl-tool_formparse.obj `if test -f 'tool_formparse.c'; then $(CYGPATH_W) 'tool_formparse.c'; else $(CYGPATH_W) '$(srcdir)/tool_formparse.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_formparse.Tpo $(DEPDIR)/curl-tool_formparse.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_formparse.c' object='curl-tool_formparse.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_formparse.obj `if test -f 'tool_formparse.c'; then $(CYGPATH_W) 'tool_formparse.c'; else $(CYGPATH_W) '$(srcdir)/tool_formparse.c'; fi`
+
+curl-tool_getparam.o: tool_getparam.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_getparam.o -MD -MP -MF $(DEPDIR)/curl-tool_getparam.Tpo -c -o curl-tool_getparam.o `test -f 'tool_getparam.c' || echo '$(srcdir)/'`tool_getparam.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_getparam.Tpo $(DEPDIR)/curl-tool_getparam.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_getparam.c' object='curl-tool_getparam.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_getparam.o `test -f 'tool_getparam.c' || echo '$(srcdir)/'`tool_getparam.c
+
+curl-tool_getparam.obj: tool_getparam.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_getparam.obj -MD -MP -MF $(DEPDIR)/curl-tool_getparam.Tpo -c -o curl-tool_getparam.obj `if test -f 'tool_getparam.c'; then $(CYGPATH_W) 'tool_getparam.c'; else $(CYGPATH_W) '$(srcdir)/tool_getparam.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_getparam.Tpo $(DEPDIR)/curl-tool_getparam.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_getparam.c' object='curl-tool_getparam.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_getparam.obj `if test -f 'tool_getparam.c'; then $(CYGPATH_W) 'tool_getparam.c'; else $(CYGPATH_W) '$(srcdir)/tool_getparam.c'; fi`
+
+curl-tool_getpass.o: tool_getpass.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_getpass.o -MD -MP -MF $(DEPDIR)/curl-tool_getpass.Tpo -c -o curl-tool_getpass.o `test -f 'tool_getpass.c' || echo '$(srcdir)/'`tool_getpass.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_getpass.Tpo $(DEPDIR)/curl-tool_getpass.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_getpass.c' object='curl-tool_getpass.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_getpass.o `test -f 'tool_getpass.c' || echo '$(srcdir)/'`tool_getpass.c
+
+curl-tool_getpass.obj: tool_getpass.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_getpass.obj -MD -MP -MF $(DEPDIR)/curl-tool_getpass.Tpo -c -o curl-tool_getpass.obj `if test -f 'tool_getpass.c'; then $(CYGPATH_W) 'tool_getpass.c'; else $(CYGPATH_W) '$(srcdir)/tool_getpass.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_getpass.Tpo $(DEPDIR)/curl-tool_getpass.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_getpass.c' object='curl-tool_getpass.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_getpass.obj `if test -f 'tool_getpass.c'; then $(CYGPATH_W) 'tool_getpass.c'; else $(CYGPATH_W) '$(srcdir)/tool_getpass.c'; fi`
+
+curl-tool_help.o: tool_help.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_help.o -MD -MP -MF $(DEPDIR)/curl-tool_help.Tpo -c -o curl-tool_help.o `test -f 'tool_help.c' || echo '$(srcdir)/'`tool_help.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_help.Tpo $(DEPDIR)/curl-tool_help.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_help.c' object='curl-tool_help.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_help.o `test -f 'tool_help.c' || echo '$(srcdir)/'`tool_help.c
+
+curl-tool_help.obj: tool_help.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_help.obj -MD -MP -MF $(DEPDIR)/curl-tool_help.Tpo -c -o curl-tool_help.obj `if test -f 'tool_help.c'; then $(CYGPATH_W) 'tool_help.c'; else $(CYGPATH_W) '$(srcdir)/tool_help.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_help.Tpo $(DEPDIR)/curl-tool_help.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_help.c' object='curl-tool_help.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_help.obj `if test -f 'tool_help.c'; then $(CYGPATH_W) 'tool_help.c'; else $(CYGPATH_W) '$(srcdir)/tool_help.c'; fi`
+
+curl-tool_helpers.o: tool_helpers.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_helpers.o -MD -MP -MF $(DEPDIR)/curl-tool_helpers.Tpo -c -o curl-tool_helpers.o `test -f 'tool_helpers.c' || echo '$(srcdir)/'`tool_helpers.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_helpers.Tpo $(DEPDIR)/curl-tool_helpers.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_helpers.c' object='curl-tool_helpers.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_helpers.o `test -f 'tool_helpers.c' || echo '$(srcdir)/'`tool_helpers.c
+
+curl-tool_helpers.obj: tool_helpers.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_helpers.obj -MD -MP -MF $(DEPDIR)/curl-tool_helpers.Tpo -c -o curl-tool_helpers.obj `if test -f 'tool_helpers.c'; then $(CYGPATH_W) 'tool_helpers.c'; else $(CYGPATH_W) '$(srcdir)/tool_helpers.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_helpers.Tpo $(DEPDIR)/curl-tool_helpers.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_helpers.c' object='curl-tool_helpers.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_helpers.obj `if test -f 'tool_helpers.c'; then $(CYGPATH_W) 'tool_helpers.c'; else $(CYGPATH_W) '$(srcdir)/tool_helpers.c'; fi`
+
+curl-tool_homedir.o: tool_homedir.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_homedir.o -MD -MP -MF $(DEPDIR)/curl-tool_homedir.Tpo -c -o curl-tool_homedir.o `test -f 'tool_homedir.c' || echo '$(srcdir)/'`tool_homedir.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_homedir.Tpo $(DEPDIR)/curl-tool_homedir.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_homedir.c' object='curl-tool_homedir.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_homedir.o `test -f 'tool_homedir.c' || echo '$(srcdir)/'`tool_homedir.c
+
+curl-tool_homedir.obj: tool_homedir.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_homedir.obj -MD -MP -MF $(DEPDIR)/curl-tool_homedir.Tpo -c -o curl-tool_homedir.obj `if test -f 'tool_homedir.c'; then $(CYGPATH_W) 'tool_homedir.c'; else $(CYGPATH_W) '$(srcdir)/tool_homedir.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_homedir.Tpo $(DEPDIR)/curl-tool_homedir.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_homedir.c' object='curl-tool_homedir.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_homedir.obj `if test -f 'tool_homedir.c'; then $(CYGPATH_W) 'tool_homedir.c'; else $(CYGPATH_W) '$(srcdir)/tool_homedir.c'; fi`
+
+curl-tool_hugehelp.o: tool_hugehelp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_hugehelp.o -MD -MP -MF $(DEPDIR)/curl-tool_hugehelp.Tpo -c -o curl-tool_hugehelp.o `test -f 'tool_hugehelp.c' || echo '$(srcdir)/'`tool_hugehelp.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_hugehelp.Tpo $(DEPDIR)/curl-tool_hugehelp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_hugehelp.c' object='curl-tool_hugehelp.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_hugehelp.o `test -f 'tool_hugehelp.c' || echo '$(srcdir)/'`tool_hugehelp.c
+
+curl-tool_hugehelp.obj: tool_hugehelp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_hugehelp.obj -MD -MP -MF $(DEPDIR)/curl-tool_hugehelp.Tpo -c -o curl-tool_hugehelp.obj `if test -f 'tool_hugehelp.c'; then $(CYGPATH_W) 'tool_hugehelp.c'; else $(CYGPATH_W) '$(srcdir)/tool_hugehelp.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_hugehelp.Tpo $(DEPDIR)/curl-tool_hugehelp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_hugehelp.c' object='curl-tool_hugehelp.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_hugehelp.obj `if test -f 'tool_hugehelp.c'; then $(CYGPATH_W) 'tool_hugehelp.c'; else $(CYGPATH_W) '$(srcdir)/tool_hugehelp.c'; fi`
+
+curl-tool_libinfo.o: tool_libinfo.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_libinfo.o -MD -MP -MF $(DEPDIR)/curl-tool_libinfo.Tpo -c -o curl-tool_libinfo.o `test -f 'tool_libinfo.c' || echo '$(srcdir)/'`tool_libinfo.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_libinfo.Tpo $(DEPDIR)/curl-tool_libinfo.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_libinfo.c' object='curl-tool_libinfo.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_libinfo.o `test -f 'tool_libinfo.c' || echo '$(srcdir)/'`tool_libinfo.c
+
+curl-tool_libinfo.obj: tool_libinfo.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_libinfo.obj -MD -MP -MF $(DEPDIR)/curl-tool_libinfo.Tpo -c -o curl-tool_libinfo.obj `if test -f 'tool_libinfo.c'; then $(CYGPATH_W) 'tool_libinfo.c'; else $(CYGPATH_W) '$(srcdir)/tool_libinfo.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_libinfo.Tpo $(DEPDIR)/curl-tool_libinfo.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_libinfo.c' object='curl-tool_libinfo.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_libinfo.obj `if test -f 'tool_libinfo.c'; then $(CYGPATH_W) 'tool_libinfo.c'; else $(CYGPATH_W) '$(srcdir)/tool_libinfo.c'; fi`
+
+curl-tool_main.o: tool_main.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_main.o -MD -MP -MF $(DEPDIR)/curl-tool_main.Tpo -c -o curl-tool_main.o `test -f 'tool_main.c' || echo '$(srcdir)/'`tool_main.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_main.Tpo $(DEPDIR)/curl-tool_main.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_main.c' object='curl-tool_main.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_main.o `test -f 'tool_main.c' || echo '$(srcdir)/'`tool_main.c
+
+curl-tool_main.obj: tool_main.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_main.obj -MD -MP -MF $(DEPDIR)/curl-tool_main.Tpo -c -o curl-tool_main.obj `if test -f 'tool_main.c'; then $(CYGPATH_W) 'tool_main.c'; else $(CYGPATH_W) '$(srcdir)/tool_main.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_main.Tpo $(DEPDIR)/curl-tool_main.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_main.c' object='curl-tool_main.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_main.obj `if test -f 'tool_main.c'; then $(CYGPATH_W) 'tool_main.c'; else $(CYGPATH_W) '$(srcdir)/tool_main.c'; fi`
+
+curl-tool_metalink.o: tool_metalink.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_metalink.o -MD -MP -MF $(DEPDIR)/curl-tool_metalink.Tpo -c -o curl-tool_metalink.o `test -f 'tool_metalink.c' || echo '$(srcdir)/'`tool_metalink.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_metalink.Tpo $(DEPDIR)/curl-tool_metalink.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_metalink.c' object='curl-tool_metalink.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_metalink.o `test -f 'tool_metalink.c' || echo '$(srcdir)/'`tool_metalink.c
+
+curl-tool_metalink.obj: tool_metalink.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_metalink.obj -MD -MP -MF $(DEPDIR)/curl-tool_metalink.Tpo -c -o curl-tool_metalink.obj `if test -f 'tool_metalink.c'; then $(CYGPATH_W) 'tool_metalink.c'; else $(CYGPATH_W) '$(srcdir)/tool_metalink.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_metalink.Tpo $(DEPDIR)/curl-tool_metalink.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_metalink.c' object='curl-tool_metalink.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_metalink.obj `if test -f 'tool_metalink.c'; then $(CYGPATH_W) 'tool_metalink.c'; else $(CYGPATH_W) '$(srcdir)/tool_metalink.c'; fi`
+
+curl-tool_mfiles.o: tool_mfiles.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_mfiles.o -MD -MP -MF $(DEPDIR)/curl-tool_mfiles.Tpo -c -o curl-tool_mfiles.o `test -f 'tool_mfiles.c' || echo '$(srcdir)/'`tool_mfiles.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_mfiles.Tpo $(DEPDIR)/curl-tool_mfiles.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_mfiles.c' object='curl-tool_mfiles.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_mfiles.o `test -f 'tool_mfiles.c' || echo '$(srcdir)/'`tool_mfiles.c
+
+curl-tool_mfiles.obj: tool_mfiles.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_mfiles.obj -MD -MP -MF $(DEPDIR)/curl-tool_mfiles.Tpo -c -o curl-tool_mfiles.obj `if test -f 'tool_mfiles.c'; then $(CYGPATH_W) 'tool_mfiles.c'; else $(CYGPATH_W) '$(srcdir)/tool_mfiles.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_mfiles.Tpo $(DEPDIR)/curl-tool_mfiles.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_mfiles.c' object='curl-tool_mfiles.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_mfiles.obj `if test -f 'tool_mfiles.c'; then $(CYGPATH_W) 'tool_mfiles.c'; else $(CYGPATH_W) '$(srcdir)/tool_mfiles.c'; fi`
+
+curl-tool_msgs.o: tool_msgs.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_msgs.o -MD -MP -MF $(DEPDIR)/curl-tool_msgs.Tpo -c -o curl-tool_msgs.o `test -f 'tool_msgs.c' || echo '$(srcdir)/'`tool_msgs.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_msgs.Tpo $(DEPDIR)/curl-tool_msgs.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_msgs.c' object='curl-tool_msgs.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_msgs.o `test -f 'tool_msgs.c' || echo '$(srcdir)/'`tool_msgs.c
+
+curl-tool_msgs.obj: tool_msgs.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_msgs.obj -MD -MP -MF $(DEPDIR)/curl-tool_msgs.Tpo -c -o curl-tool_msgs.obj `if test -f 'tool_msgs.c'; then $(CYGPATH_W) 'tool_msgs.c'; else $(CYGPATH_W) '$(srcdir)/tool_msgs.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_msgs.Tpo $(DEPDIR)/curl-tool_msgs.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_msgs.c' object='curl-tool_msgs.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_msgs.obj `if test -f 'tool_msgs.c'; then $(CYGPATH_W) 'tool_msgs.c'; else $(CYGPATH_W) '$(srcdir)/tool_msgs.c'; fi`
+
+curl-tool_operate.o: tool_operate.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_operate.o -MD -MP -MF $(DEPDIR)/curl-tool_operate.Tpo -c -o curl-tool_operate.o `test -f 'tool_operate.c' || echo '$(srcdir)/'`tool_operate.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_operate.Tpo $(DEPDIR)/curl-tool_operate.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_operate.c' object='curl-tool_operate.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_operate.o `test -f 'tool_operate.c' || echo '$(srcdir)/'`tool_operate.c
+
+curl-tool_operate.obj: tool_operate.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_operate.obj -MD -MP -MF $(DEPDIR)/curl-tool_operate.Tpo -c -o curl-tool_operate.obj `if test -f 'tool_operate.c'; then $(CYGPATH_W) 'tool_operate.c'; else $(CYGPATH_W) '$(srcdir)/tool_operate.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_operate.Tpo $(DEPDIR)/curl-tool_operate.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_operate.c' object='curl-tool_operate.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_operate.obj `if test -f 'tool_operate.c'; then $(CYGPATH_W) 'tool_operate.c'; else $(CYGPATH_W) '$(srcdir)/tool_operate.c'; fi`
+
+curl-tool_operhlp.o: tool_operhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_operhlp.o -MD -MP -MF $(DEPDIR)/curl-tool_operhlp.Tpo -c -o curl-tool_operhlp.o `test -f 'tool_operhlp.c' || echo '$(srcdir)/'`tool_operhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_operhlp.Tpo $(DEPDIR)/curl-tool_operhlp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_operhlp.c' object='curl-tool_operhlp.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_operhlp.o `test -f 'tool_operhlp.c' || echo '$(srcdir)/'`tool_operhlp.c
+
+curl-tool_operhlp.obj: tool_operhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_operhlp.obj -MD -MP -MF $(DEPDIR)/curl-tool_operhlp.Tpo -c -o curl-tool_operhlp.obj `if test -f 'tool_operhlp.c'; then $(CYGPATH_W) 'tool_operhlp.c'; else $(CYGPATH_W) '$(srcdir)/tool_operhlp.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_operhlp.Tpo $(DEPDIR)/curl-tool_operhlp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_operhlp.c' object='curl-tool_operhlp.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_operhlp.obj `if test -f 'tool_operhlp.c'; then $(CYGPATH_W) 'tool_operhlp.c'; else $(CYGPATH_W) '$(srcdir)/tool_operhlp.c'; fi`
+
+curl-tool_panykey.o: tool_panykey.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_panykey.o -MD -MP -MF $(DEPDIR)/curl-tool_panykey.Tpo -c -o curl-tool_panykey.o `test -f 'tool_panykey.c' || echo '$(srcdir)/'`tool_panykey.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_panykey.Tpo $(DEPDIR)/curl-tool_panykey.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_panykey.c' object='curl-tool_panykey.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_panykey.o `test -f 'tool_panykey.c' || echo '$(srcdir)/'`tool_panykey.c
+
+curl-tool_panykey.obj: tool_panykey.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_panykey.obj -MD -MP -MF $(DEPDIR)/curl-tool_panykey.Tpo -c -o curl-tool_panykey.obj `if test -f 'tool_panykey.c'; then $(CYGPATH_W) 'tool_panykey.c'; else $(CYGPATH_W) '$(srcdir)/tool_panykey.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_panykey.Tpo $(DEPDIR)/curl-tool_panykey.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_panykey.c' object='curl-tool_panykey.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_panykey.obj `if test -f 'tool_panykey.c'; then $(CYGPATH_W) 'tool_panykey.c'; else $(CYGPATH_W) '$(srcdir)/tool_panykey.c'; fi`
+
+curl-tool_paramhlp.o: tool_paramhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_paramhlp.o -MD -MP -MF $(DEPDIR)/curl-tool_paramhlp.Tpo -c -o curl-tool_paramhlp.o `test -f 'tool_paramhlp.c' || echo '$(srcdir)/'`tool_paramhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_paramhlp.Tpo $(DEPDIR)/curl-tool_paramhlp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_paramhlp.c' object='curl-tool_paramhlp.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_paramhlp.o `test -f 'tool_paramhlp.c' || echo '$(srcdir)/'`tool_paramhlp.c
+
+curl-tool_paramhlp.obj: tool_paramhlp.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_paramhlp.obj -MD -MP -MF $(DEPDIR)/curl-tool_paramhlp.Tpo -c -o curl-tool_paramhlp.obj `if test -f 'tool_paramhlp.c'; then $(CYGPATH_W) 'tool_paramhlp.c'; else $(CYGPATH_W) '$(srcdir)/tool_paramhlp.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_paramhlp.Tpo $(DEPDIR)/curl-tool_paramhlp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_paramhlp.c' object='curl-tool_paramhlp.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_paramhlp.obj `if test -f 'tool_paramhlp.c'; then $(CYGPATH_W) 'tool_paramhlp.c'; else $(CYGPATH_W) '$(srcdir)/tool_paramhlp.c'; fi`
+
+curl-tool_parsecfg.o: tool_parsecfg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_parsecfg.o -MD -MP -MF $(DEPDIR)/curl-tool_parsecfg.Tpo -c -o curl-tool_parsecfg.o `test -f 'tool_parsecfg.c' || echo '$(srcdir)/'`tool_parsecfg.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_parsecfg.Tpo $(DEPDIR)/curl-tool_parsecfg.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_parsecfg.c' object='curl-tool_parsecfg.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_parsecfg.o `test -f 'tool_parsecfg.c' || echo '$(srcdir)/'`tool_parsecfg.c
+
+curl-tool_parsecfg.obj: tool_parsecfg.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_parsecfg.obj -MD -MP -MF $(DEPDIR)/curl-tool_parsecfg.Tpo -c -o curl-tool_parsecfg.obj `if test -f 'tool_parsecfg.c'; then $(CYGPATH_W) 'tool_parsecfg.c'; else $(CYGPATH_W) '$(srcdir)/tool_parsecfg.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_parsecfg.Tpo $(DEPDIR)/curl-tool_parsecfg.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_parsecfg.c' object='curl-tool_parsecfg.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_parsecfg.obj `if test -f 'tool_parsecfg.c'; then $(CYGPATH_W) 'tool_parsecfg.c'; else $(CYGPATH_W) '$(srcdir)/tool_parsecfg.c'; fi`
+
+curl-tool_strdup.o: tool_strdup.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_strdup.o -MD -MP -MF $(DEPDIR)/curl-tool_strdup.Tpo -c -o curl-tool_strdup.o `test -f 'tool_strdup.c' || echo '$(srcdir)/'`tool_strdup.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_strdup.Tpo $(DEPDIR)/curl-tool_strdup.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_strdup.c' object='curl-tool_strdup.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_strdup.o `test -f 'tool_strdup.c' || echo '$(srcdir)/'`tool_strdup.c
+
+curl-tool_strdup.obj: tool_strdup.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_strdup.obj -MD -MP -MF $(DEPDIR)/curl-tool_strdup.Tpo -c -o curl-tool_strdup.obj `if test -f 'tool_strdup.c'; then $(CYGPATH_W) 'tool_strdup.c'; else $(CYGPATH_W) '$(srcdir)/tool_strdup.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_strdup.Tpo $(DEPDIR)/curl-tool_strdup.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_strdup.c' object='curl-tool_strdup.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_strdup.obj `if test -f 'tool_strdup.c'; then $(CYGPATH_W) 'tool_strdup.c'; else $(CYGPATH_W) '$(srcdir)/tool_strdup.c'; fi`
+
+curl-tool_setopt.o: tool_setopt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_setopt.o -MD -MP -MF $(DEPDIR)/curl-tool_setopt.Tpo -c -o curl-tool_setopt.o `test -f 'tool_setopt.c' || echo '$(srcdir)/'`tool_setopt.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_setopt.Tpo $(DEPDIR)/curl-tool_setopt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_setopt.c' object='curl-tool_setopt.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_setopt.o `test -f 'tool_setopt.c' || echo '$(srcdir)/'`tool_setopt.c
+
+curl-tool_setopt.obj: tool_setopt.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_setopt.obj -MD -MP -MF $(DEPDIR)/curl-tool_setopt.Tpo -c -o curl-tool_setopt.obj `if test -f 'tool_setopt.c'; then $(CYGPATH_W) 'tool_setopt.c'; else $(CYGPATH_W) '$(srcdir)/tool_setopt.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_setopt.Tpo $(DEPDIR)/curl-tool_setopt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_setopt.c' object='curl-tool_setopt.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_setopt.obj `if test -f 'tool_setopt.c'; then $(CYGPATH_W) 'tool_setopt.c'; else $(CYGPATH_W) '$(srcdir)/tool_setopt.c'; fi`
+
+curl-tool_sleep.o: tool_sleep.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_sleep.o -MD -MP -MF $(DEPDIR)/curl-tool_sleep.Tpo -c -o curl-tool_sleep.o `test -f 'tool_sleep.c' || echo '$(srcdir)/'`tool_sleep.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_sleep.Tpo $(DEPDIR)/curl-tool_sleep.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_sleep.c' object='curl-tool_sleep.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_sleep.o `test -f 'tool_sleep.c' || echo '$(srcdir)/'`tool_sleep.c
+
+curl-tool_sleep.obj: tool_sleep.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_sleep.obj -MD -MP -MF $(DEPDIR)/curl-tool_sleep.Tpo -c -o curl-tool_sleep.obj `if test -f 'tool_sleep.c'; then $(CYGPATH_W) 'tool_sleep.c'; else $(CYGPATH_W) '$(srcdir)/tool_sleep.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_sleep.Tpo $(DEPDIR)/curl-tool_sleep.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_sleep.c' object='curl-tool_sleep.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_sleep.obj `if test -f 'tool_sleep.c'; then $(CYGPATH_W) 'tool_sleep.c'; else $(CYGPATH_W) '$(srcdir)/tool_sleep.c'; fi`
+
+curl-tool_urlglob.o: tool_urlglob.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_urlglob.o -MD -MP -MF $(DEPDIR)/curl-tool_urlglob.Tpo -c -o curl-tool_urlglob.o `test -f 'tool_urlglob.c' || echo '$(srcdir)/'`tool_urlglob.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_urlglob.Tpo $(DEPDIR)/curl-tool_urlglob.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_urlglob.c' object='curl-tool_urlglob.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_urlglob.o `test -f 'tool_urlglob.c' || echo '$(srcdir)/'`tool_urlglob.c
+
+curl-tool_urlglob.obj: tool_urlglob.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_urlglob.obj -MD -MP -MF $(DEPDIR)/curl-tool_urlglob.Tpo -c -o curl-tool_urlglob.obj `if test -f 'tool_urlglob.c'; then $(CYGPATH_W) 'tool_urlglob.c'; else $(CYGPATH_W) '$(srcdir)/tool_urlglob.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_urlglob.Tpo $(DEPDIR)/curl-tool_urlglob.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_urlglob.c' object='curl-tool_urlglob.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_urlglob.obj `if test -f 'tool_urlglob.c'; then $(CYGPATH_W) 'tool_urlglob.c'; else $(CYGPATH_W) '$(srcdir)/tool_urlglob.c'; fi`
+
+curl-tool_util.o: tool_util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_util.o -MD -MP -MF $(DEPDIR)/curl-tool_util.Tpo -c -o curl-tool_util.o `test -f 'tool_util.c' || echo '$(srcdir)/'`tool_util.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_util.Tpo $(DEPDIR)/curl-tool_util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_util.c' object='curl-tool_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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_util.o `test -f 'tool_util.c' || echo '$(srcdir)/'`tool_util.c
+
+curl-tool_util.obj: tool_util.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_util.obj -MD -MP -MF $(DEPDIR)/curl-tool_util.Tpo -c -o curl-tool_util.obj `if test -f 'tool_util.c'; then $(CYGPATH_W) 'tool_util.c'; else $(CYGPATH_W) '$(srcdir)/tool_util.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_util.Tpo $(DEPDIR)/curl-tool_util.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_util.c' object='curl-tool_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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_util.obj `if test -f 'tool_util.c'; then $(CYGPATH_W) 'tool_util.c'; else $(CYGPATH_W) '$(srcdir)/tool_util.c'; fi`
+
+curl-tool_vms.o: tool_vms.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_vms.o -MD -MP -MF $(DEPDIR)/curl-tool_vms.Tpo -c -o curl-tool_vms.o `test -f 'tool_vms.c' || echo '$(srcdir)/'`tool_vms.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_vms.Tpo $(DEPDIR)/curl-tool_vms.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_vms.c' object='curl-tool_vms.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_vms.o `test -f 'tool_vms.c' || echo '$(srcdir)/'`tool_vms.c
+
+curl-tool_vms.obj: tool_vms.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_vms.obj -MD -MP -MF $(DEPDIR)/curl-tool_vms.Tpo -c -o curl-tool_vms.obj `if test -f 'tool_vms.c'; then $(CYGPATH_W) 'tool_vms.c'; else $(CYGPATH_W) '$(srcdir)/tool_vms.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_vms.Tpo $(DEPDIR)/curl-tool_vms.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_vms.c' object='curl-tool_vms.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_vms.obj `if test -f 'tool_vms.c'; then $(CYGPATH_W) 'tool_vms.c'; else $(CYGPATH_W) '$(srcdir)/tool_vms.c'; fi`
+
+curl-tool_writeout.o: tool_writeout.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_writeout.o -MD -MP -MF $(DEPDIR)/curl-tool_writeout.Tpo -c -o curl-tool_writeout.o `test -f 'tool_writeout.c' || echo '$(srcdir)/'`tool_writeout.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_writeout.Tpo $(DEPDIR)/curl-tool_writeout.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_writeout.c' object='curl-tool_writeout.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_writeout.o `test -f 'tool_writeout.c' || echo '$(srcdir)/'`tool_writeout.c
+
+curl-tool_writeout.obj: tool_writeout.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_writeout.obj -MD -MP -MF $(DEPDIR)/curl-tool_writeout.Tpo -c -o curl-tool_writeout.obj `if test -f 'tool_writeout.c'; then $(CYGPATH_W) 'tool_writeout.c'; else $(CYGPATH_W) '$(srcdir)/tool_writeout.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_writeout.Tpo $(DEPDIR)/curl-tool_writeout.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_writeout.c' object='curl-tool_writeout.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_writeout.obj `if test -f 'tool_writeout.c'; then $(CYGPATH_W) 'tool_writeout.c'; else $(CYGPATH_W) '$(srcdir)/tool_writeout.c'; fi`
+
+curl-tool_xattr.o: tool_xattr.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_xattr.o -MD -MP -MF $(DEPDIR)/curl-tool_xattr.Tpo -c -o curl-tool_xattr.o `test -f 'tool_xattr.c' || echo '$(srcdir)/'`tool_xattr.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_xattr.Tpo $(DEPDIR)/curl-tool_xattr.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_xattr.c' object='curl-tool_xattr.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_xattr.o `test -f 'tool_xattr.c' || echo '$(srcdir)/'`tool_xattr.c
+
+curl-tool_xattr.obj: tool_xattr.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT curl-tool_xattr.obj -MD -MP -MF $(DEPDIR)/curl-tool_xattr.Tpo -c -o curl-tool_xattr.obj `if test -f 'tool_xattr.c'; then $(CYGPATH_W) 'tool_xattr.c'; else $(CYGPATH_W) '$(srcdir)/tool_xattr.c'; fi`
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/curl-tool_xattr.Tpo $(DEPDIR)/curl-tool_xattr.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tool_xattr.c' object='curl-tool_xattr.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o curl-tool_xattr.obj `if test -f 'tool_xattr.c'; then $(CYGPATH_W) 'tool_xattr.c'; else $(CYGPATH_W) '$(srcdir)/tool_xattr.c'; fi`
+
+../lib/curl-strtoofft.o: ../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../lib/curl-strtoofft.o -MD -MP -MF ../lib/$(DEPDIR)/curl-strtoofft.Tpo -c -o ../lib/curl-strtoofft.o `test -f '../lib/strtoofft.c' || echo '$(srcdir)/'`../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/curl-strtoofft.Tpo ../lib/$(DEPDIR)/curl-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/strtoofft.c' object='../lib/curl-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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../lib/curl-strtoofft.o `test -f '../lib/strtoofft.c' || echo '$(srcdir)/'`../lib/strtoofft.c
+
+../lib/curl-strtoofft.obj: ../lib/strtoofft.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../lib/curl-strtoofft.obj -MD -MP -MF ../lib/$(DEPDIR)/curl-strtoofft.Tpo -c -o ../lib/curl-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)/curl-strtoofft.Tpo ../lib/$(DEPDIR)/curl-strtoofft.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/strtoofft.c' object='../lib/curl-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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../lib/curl-strtoofft.obj `if test -f '../lib/strtoofft.c'; then $(CYGPATH_W) '../lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/../lib/strtoofft.c'; fi`
+
+../lib/curl-nonblock.o: ../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../lib/curl-nonblock.o -MD -MP -MF ../lib/$(DEPDIR)/curl-nonblock.Tpo -c -o ../lib/curl-nonblock.o `test -f '../lib/nonblock.c' || echo '$(srcdir)/'`../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/curl-nonblock.Tpo ../lib/$(DEPDIR)/curl-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/nonblock.c' object='../lib/curl-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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../lib/curl-nonblock.o `test -f '../lib/nonblock.c' || echo '$(srcdir)/'`../lib/nonblock.c
+
+../lib/curl-nonblock.obj: ../lib/nonblock.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../lib/curl-nonblock.obj -MD -MP -MF ../lib/$(DEPDIR)/curl-nonblock.Tpo -c -o ../lib/curl-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)/curl-nonblock.Tpo ../lib/$(DEPDIR)/curl-nonblock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/nonblock.c' object='../lib/curl-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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../lib/curl-nonblock.obj `if test -f '../lib/nonblock.c'; then $(CYGPATH_W) '../lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/../lib/nonblock.c'; fi`
+
+../lib/curl-warnless.o: ../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../lib/curl-warnless.o -MD -MP -MF ../lib/$(DEPDIR)/curl-warnless.Tpo -c -o ../lib/curl-warnless.o `test -f '../lib/warnless.c' || echo '$(srcdir)/'`../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/curl-warnless.Tpo ../lib/$(DEPDIR)/curl-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/warnless.c' object='../lib/curl-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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../lib/curl-warnless.o `test -f '../lib/warnless.c' || echo '$(srcdir)/'`../lib/warnless.c
+
+../lib/curl-warnless.obj: ../lib/warnless.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../lib/curl-warnless.obj -MD -MP -MF ../lib/$(DEPDIR)/curl-warnless.Tpo -c -o ../lib/curl-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)/curl-warnless.Tpo ../lib/$(DEPDIR)/curl-warnless.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../lib/warnless.c' object='../lib/curl-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) $(curl_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../lib/curl-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
+	-rm -rf ../lib/.libs ../lib/_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: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) check-am
+@CURLDEBUG_FALSE@all-local:
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) all-local
+installdirs:
+	for dir in "$(DESTDIR)$(bindir)"; do \
+	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+	done
+install: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) 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:
+	-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)
+	-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."
+	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+clean: clean-am
+
+clean-am: clean-binPROGRAMS clean-generic clean-libtool \
+	clean-noinstLTLIBRARIES 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-binPROGRAMS
+
+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: uninstall-binPROGRAMS
+
+.MAKE: all check install install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+	clean-binPROGRAMS clean-generic clean-libtool \
+	clean-noinstLTLIBRARIES 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-binPROGRAMS 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 uninstall-binPROGRAMS
+
+.PRECIOUS: Makefile
+
+
+# remove targets if the command fails
+.DELETE_ON_ERROR:
+
+@CODE_COVERAGE_RULES@
+
+# Here are the stuff to create a built-in manual
+
+@USE_MANUAL_TRUE@$(MANPAGE):
+@USE_MANUAL_TRUE@	cd $(top_builddir)/docs && $(MAKE)
+
+# This generates the tool_hugehelp.c file in both uncompressed and
+# compressed formats.
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@$(HUGE): $(MANPAGE) $(README) $(MKHELP)
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#include "tool_setup.h"' > $(HUGE)
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#ifndef HAVE_LIBZ' >> $(HUGE)
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#else' >> $(HUGE)
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) -c $(README) >> $(HUGE)
+@HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#endif /* HAVE_LIBZ */' >> $(HUGE)
+# This generates the tool_hugehelp.c file uncompressed only
+@HAVE_LIBZ_FALSE@@USE_MANUAL_TRUE@$(HUGE): $(MANPAGE) $(README) mkhelp.pl
+@HAVE_LIBZ_FALSE@@USE_MANUAL_TRUE@	echo '#include "tool_setup.h"' > $(HUGE)
+@HAVE_LIBZ_FALSE@@USE_MANUAL_TRUE@	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
+
+# built-in manual has been disabled, make a blank file
+@USE_MANUAL_FALSE@$(HUGE):
+@USE_MANUAL_FALSE@	echo "/* built-in manual is disabled, blank function */" > $(HUGE)
+@USE_MANUAL_FALSE@	echo '#include "tool_hugehelp.h"' >> $(HUGE)
+@USE_MANUAL_FALSE@	echo "void hugehelp(void) {}" >>$(HUGE)
+
+# ignore tool_hugehelp.c since it is generated source code and it plays
+# by slightly different rules!
+checksrc:
+	@PERL@ $(top_srcdir)/lib/checksrc.pl -D$(srcdir)        \
+	-W$(srcdir)/tool_hugehelp.c $(srcdir)/*.[ch]
+
+# 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/src/Makefile.inc b/ap/lib/libcurl/curl-7.54.1/src/Makefile.inc
new file mode 100644
index 0000000..5074f8f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.inc
@@ -0,0 +1,111 @@
+# ./src/Makefile.inc
+# Using the backslash as line continuation character might be problematic
+# with some make flavours, as Watcom's wmake showed us already. If we
+# ever want to change this in a portable manner then we should consider
+# this idea (posted to the libcurl list by Adam Kellas):
+# CSRC1 = file1.c file2.c file3.c
+# CSRC2 = file4.c file5.c file6.c
+# CSOURCES = $(CSRC1) $(CSRC2)
+
+# libcurl has sources that provide functions named curlx_* that aren't part of
+# the official API, but we re-use the code here to avoid duplication.
+CURLX_CFILES = \
+	../lib/strtoofft.c \
+	../lib/nonblock.c \
+	../lib/warnless.c
+
+CURLX_HFILES = \
+	../lib/curl_setup.h \
+	../lib/strtoofft.h \
+	../lib/nonblock.h \
+	../lib/warnless.h
+
+CURL_CFILES = \
+	slist_wc.c \
+	tool_binmode.c \
+	tool_bname.c \
+	tool_cb_dbg.c \
+	tool_cb_hdr.c \
+	tool_cb_prg.c \
+	tool_cb_rea.c \
+	tool_cb_see.c \
+	tool_cb_wrt.c \
+	tool_cfgable.c \
+	tool_convert.c \
+	tool_dirhie.c \
+	tool_doswin.c \
+	tool_easysrc.c \
+	tool_formparse.c \
+	tool_getparam.c \
+	tool_getpass.c \
+	tool_help.c \
+	tool_helpers.c \
+	tool_homedir.c \
+	tool_hugehelp.c \
+	tool_libinfo.c \
+	tool_main.c \
+	tool_metalink.c \
+	tool_mfiles.c \
+	tool_msgs.c \
+	tool_operate.c \
+	tool_operhlp.c \
+	tool_panykey.c \
+	tool_paramhlp.c \
+	tool_parsecfg.c \
+	tool_strdup.c \
+	tool_setopt.c \
+	tool_sleep.c \
+	tool_urlglob.c \
+	tool_util.c \
+	tool_vms.c \
+	tool_writeout.c \
+	tool_xattr.c
+
+CURL_HFILES = \
+	slist_wc.h \
+	tool_binmode.h \
+	tool_bname.h \
+	tool_cb_dbg.h \
+	tool_cb_hdr.h \
+	tool_cb_prg.h \
+	tool_cb_rea.h \
+	tool_cb_see.h \
+	tool_cb_wrt.h \
+	tool_cfgable.h \
+	tool_convert.h \
+	tool_dirhie.h \
+	tool_doswin.h \
+	tool_easysrc.h \
+	tool_formparse.h \
+	tool_getparam.h \
+	tool_getpass.h \
+	tool_help.h \
+	tool_helpers.h \
+	tool_homedir.h \
+	tool_hugehelp.h \
+	tool_libinfo.h \
+	tool_main.h \
+	tool_metalink.h \
+	tool_mfiles.h \
+	tool_msgs.h \
+	tool_operate.h \
+	tool_operhlp.h \
+	tool_panykey.h \
+	tool_paramhlp.h \
+	tool_parsecfg.h \
+	tool_sdecls.h \
+	tool_setopt.h \
+	tool_setup.h \
+	tool_sleep.h \
+	tool_strdup.h \
+	tool_urlglob.h \
+	tool_util.h \
+	tool_version.h \
+	tool_vms.h \
+	tool_writeout.h \
+	tool_xattr.h
+
+CURL_RCFILES = curl.rc
+
+# curl_SOURCES is special and gets assigned in src/Makefile.am
+CURL_FILES = $(CURL_CFILES) $(CURLX_CFILES) $(CURL_HFILES)
diff --git a/ap/lib/libcurl/curl-7.54.1/src/Makefile.m32 b/ap/lib/libcurl/curl-7.54.1/src/Makefile.m32
new file mode 100644
index 0000000..40852e5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.m32
@@ -0,0 +1,377 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 1999 - 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.
+#
+#***************************************************************************
+
+###########################################################################
+#
+## Makefile for building curl.exe with MingW (GCC-3.2 or later)
+## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4)
+##
+## Usage:   mingw32-make -f Makefile.m32 CFG=-feature1[-feature2][-feature3][...]
+## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-sspi-winidn
+##
+## Hint: you can also set environment vars to control the build, f.e.:
+## set ZLIB_PATH=c:/zlib-1.2.8
+## set ZLIB=1
+#
+###########################################################################
+
+# Edit the path below to point to the base of your Zlib sources.
+ifndef ZLIB_PATH
+ZLIB_PATH = ../../zlib-1.2.8
+endif
+# Edit the path below to point to the base of your OpenSSL package.
+ifndef OPENSSL_PATH
+OPENSSL_PATH = ../../openssl-1.0.2a
+endif
+# Edit the path below to point to the base of your LibSSH2 package.
+ifndef LIBSSH2_PATH
+LIBSSH2_PATH = ../../libssh2-1.5.0
+endif
+# Edit the path below to point to the base of your librtmp package.
+ifndef LIBRTMP_PATH
+LIBRTMP_PATH = ../../librtmp-2.4
+endif
+# Edit the path below to point to the base of your libmetalink package.
+ifndef LIBMETALINK_PATH
+LIBMETALINK_PATH = ../../libmetalink-0.1.3
+endif
+# Edit the path below to point to the base of your libexpat package.
+ifndef LIBEXPAT_PATH
+LIBEXPAT_PATH = ../../expat-2.1.0
+endif
+# Edit the path below to point to the base of your libxml2 package.
+ifndef LIBXML2_PATH
+LIBXML2_PATH = ../../libxml2-2.9.2
+endif
+# Edit the path below to point to the base of your libidn package.
+ifndef LIBIDN_PATH
+LIBIDN_PATH = ../../libidn-1.32
+endif
+# Edit the path below to point to the base of your MS IDN package.
+# Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1
+# https://www.microsoft.com/en-us/download/details.aspx?id=734
+ifndef WINIDN_PATH
+WINIDN_PATH = ../../Microsoft IDN Mitigation APIs
+endif
+# Edit the path below to point to the base of your Novell LDAP NDK.
+ifndef LDAP_SDK
+LDAP_SDK = c:/novell/ndk/cldapsdk/win32
+endif
+# Edit the path below to point to the base of your nghttp2 package.
+ifndef NGHTTP2_PATH
+NGHTTP2_PATH = ../../nghttp2-1.0.0
+endif
+
+PROOT = ..
+
+# Edit the path below to point to the base of your c-ares package.
+ifndef LIBCARES_PATH
+LIBCARES_PATH = $(PROOT)/ares
+endif
+
+CC	= $(CROSSPREFIX)gcc
+CFLAGS	= $(CURL_CFLAG_EXTRAS) -g -O2 -Wall
+CFLAGS	+= -fno-strict-aliasing
+# comment LDFLAGS below to keep debug info
+LDFLAGS	= $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_EXE) -s
+AR	= $(CROSSPREFIX)ar
+RC	= $(CROSSPREFIX)windres
+RCFLAGS	= --include-dir=$(PROOT)/include -O COFF
+STRIP	= $(CROSSPREFIX)strip -g
+
+# We may need these someday
+# PERL = perl
+# NROFF = nroff
+
+# Set environment var ARCH to your architecture to override autodetection.
+ifndef ARCH
+ifeq ($(findstring x86_64,$(shell $(CC) -dumpmachine)),x86_64)
+ARCH	= w64
+else
+ARCH	= w32
+endif
+endif
+
+ifeq ($(ARCH),w64)
+CFLAGS  += -m64 -D_AMD64_
+LDFLAGS += -m64
+RCFLAGS += -F pe-x86-64
+else
+CFLAGS  += -m32
+LDFLAGS += -m32
+RCFLAGS += -F pe-i386
+endif
+
+# Platform-dependent helper tool macros
+ifeq ($(findstring /sh,$(SHELL)),/sh)
+DEL	= rm -f $1
+RMDIR	= rm -fr $1
+MKDIR	= mkdir -p $1
+COPY	= -cp -afv $1 $2
+#COPYR	= -cp -afr $1/* $2
+COPYR	= -rsync -aC $1/* $2
+TOUCH	= touch $1
+CAT	= cat
+ECHONL	= echo ""
+DL	= '
+else
+ifeq "$(OS)" "Windows_NT"
+DEL	= -del 2>NUL /q /f $(subst /,\,$1)
+RMDIR	= -rd 2>NUL /q /s $(subst /,\,$1)
+else
+DEL	= -del 2>NUL $(subst /,\,$1)
+RMDIR	= -deltree 2>NUL /y $(subst /,\,$1)
+endif
+MKDIR	= -md 2>NUL $(subst /,\,$1)
+COPY	= -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2)
+COPYR	= -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2)
+TOUCH	= copy 2>&1>NUL /b $(subst /,\,$1) +,,
+CAT	= type
+ECHONL	= $(ComSpec) /c echo.
+endif
+
+########################################################
+## Nothing more to do below this line!
+
+ifeq ($(findstring -dyn,$(CFG)),-dyn)
+DYN = 1
+endif
+ifeq ($(findstring -ares,$(CFG)),-ares)
+ARES = 1
+endif
+ifeq ($(findstring -sync,$(CFG)),-sync)
+SYNC = 1
+endif
+ifeq ($(findstring -rtmp,$(CFG)),-rtmp)
+RTMP = 1
+SSL = 1
+ZLIB = 1
+endif
+ifeq ($(findstring -ssh2,$(CFG)),-ssh2)
+SSH2 = 1
+ifneq ($(findstring -winssl,$(CFG)),-winssl)
+SSL = 1
+endif
+ZLIB = 1
+endif
+ifeq ($(findstring -ssl,$(CFG)),-ssl)
+SSL = 1
+endif
+ifeq ($(findstring -zlib,$(CFG)),-zlib)
+ZLIB = 1
+endif
+ifeq ($(findstring -idn,$(CFG)),-idn)
+IDN = 1
+endif
+ifeq ($(findstring -winidn,$(CFG)),-winidn)
+WINIDN = 1
+endif
+ifeq ($(findstring -sspi,$(CFG)),-sspi)
+SSPI = 1
+endif
+ifeq ($(findstring -ldaps,$(CFG)),-ldaps)
+LDAPS = 1
+endif
+ifeq ($(findstring -ipv6,$(CFG)),-ipv6)
+IPV6 = 1
+endif
+ifeq ($(findstring -metalink,$(CFG)),-metalink)
+METALINK = 1
+endif
+ifeq ($(findstring -winssl,$(CFG)),-winssl)
+WINSSL = 1
+SSPI = 1
+endif
+ifeq ($(findstring -nghttp2,$(CFG)),-nghttp2)
+NGHTTP2 = 1
+endif
+
+INCLUDES = -I. -I../include -I../lib
+
+ifdef DYN
+  curl_DEPENDENCIES = $(PROOT)/lib/libcurldll.a $(PROOT)/lib/libcurl.dll
+  curl_LDADD = -L$(PROOT)/lib -lcurldll
+else
+  curl_DEPENDENCIES = $(PROOT)/lib/libcurl.a
+  curl_LDADD = -L$(PROOT)/lib -lcurl
+  CFLAGS += -DCURL_STATICLIB
+  LDFLAGS += -static
+endif
+ifdef SYNC
+  CFLAGS += -DUSE_SYNC_DNS
+else
+  ifdef ARES
+    ifndef DYN
+      curl_DEPENDENCIES += $(LIBCARES_PATH)/libcares.a
+    endif
+    CFLAGS += -DUSE_ARES -DCARES_STATICLIB
+    curl_LDADD += -L"$(LIBCARES_PATH)" -lcares
+  endif
+endif
+ifdef RTMP
+  CFLAGS += -DUSE_LIBRTMP
+  curl_LDADD += -L"$(LIBRTMP_PATH)/librtmp" -lrtmp -lwinmm
+endif
+ifdef NGHTTP2
+  CFLAGS += -DUSE_NGHTTP2
+  curl_LDADD += -L"$(NGHTTP2_PATH)/lib" -lnghttp2
+endif
+ifdef SSH2
+  CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H
+  curl_LDADD += -L"$(LIBSSH2_PATH)/win32" -lssh2
+  ifdef WINSSL
+    ifndef DYN
+      curl_LDADD += -lbcrypt -lcrypt32
+    endif
+  endif
+endif
+ifdef SSL
+  ifndef OPENSSL_INCLUDE
+    ifeq "$(wildcard $(OPENSSL_PATH)/outinc)" "$(OPENSSL_PATH)/outinc"
+      OPENSSL_INCLUDE = $(OPENSSL_PATH)/outinc
+    endif
+    ifeq "$(wildcard $(OPENSSL_PATH)/include)" "$(OPENSSL_PATH)/include"
+      OPENSSL_INCLUDE = $(OPENSSL_PATH)/include
+    endif
+  endif
+  ifneq "$(wildcard $(OPENSSL_INCLUDE)/openssl/opensslv.h)" "$(OPENSSL_INCLUDE)/openssl/opensslv.h"
+  $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
+  endif
+  ifndef OPENSSL_LIBPATH
+    OPENSSL_LIBS = -lssl -lcrypto
+    ifeq "$(wildcard $(OPENSSL_PATH)/out)" "$(OPENSSL_PATH)/out"
+      OPENSSL_LIBPATH = $(OPENSSL_PATH)/out
+      ifdef DYN
+        OPENSSL_LIBS = -lssl32 -leay32
+      endif
+    endif
+    ifeq "$(wildcard $(OPENSSL_PATH)/lib)" "$(OPENSSL_PATH)/lib"
+      OPENSSL_LIBPATH = $(OPENSSL_PATH)/lib
+    endif
+  endif
+  ifndef DYN
+    OPENSSL_LIBS += -lgdi32 -lcrypt32
+  endif
+  INCLUDES += -I"$(OPENSSL_INCLUDE)"
+  CFLAGS += -DUSE_OPENSSL
+  curl_LDADD += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
+else
+ifdef WINSSL
+  curl_LDADD += -lcrypt32
+endif
+endif
+ifdef ZLIB
+  INCLUDES += -I"$(ZLIB_PATH)"
+  CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H
+  curl_LDADD += -L"$(ZLIB_PATH)" -lz
+endif
+ifdef IDN
+  CFLAGS += -DUSE_LIBIDN
+  curl_LDADD += -L"$(LIBIDN_PATH)/lib" -lidn
+else
+ifdef WINIDN
+  CFLAGS += -DUSE_WIN32_IDN
+  curl_LDADD += -L"$(WINIDN_PATH)" -lnormaliz
+endif
+endif
+ifdef METALINK
+  INCLUDES += -I"$(LIBMETALINK_PATH)/include"
+  CFLAGS += -DUSE_METALINK
+  curl_LDADD += -L"$(LIBMETALINK_PATH)/lib" -lmetalink
+  ifndef DYN
+    ifeq ($(findstring libexpat_metalink_parser.o,$(shell $(AR) t "$(LIBMETALINK_PATH)/lib/libmetalink.a")),libexpat_metalink_parser.o)
+      curl_LDADD += -L"$(LIBEXPAT_PATH)/lib" -lexpat
+    else
+      curl_LDADD += -L"$(LIBXML2_PATH)/lib" -lxml2
+    endif
+  endif
+endif
+ifdef SSPI
+  CFLAGS += -DUSE_WINDOWS_SSPI
+  ifdef WINSSL
+    CFLAGS += -DUSE_SCHANNEL
+  endif
+endif
+ifdef IPV6
+  CFLAGS += -DENABLE_IPV6 -D_WIN32_WINNT=0x0501
+endif
+ifdef LDAPS
+  CFLAGS += -DHAVE_LDAP_SSL
+endif
+ifdef USE_LDAP_NOVELL
+  CFLAGS += -DCURL_HAS_NOVELL_LDAPSDK
+  curl_LDADD += -L"$(LDAP_SDK)/lib/mscvc" -lldapsdk -lldapssl -lldapx
+endif
+ifdef USE_LDAP_OPENLDAP
+  CFLAGS += -DCURL_HAS_OPENLDAP_LDAPSDK
+  curl_LDADD += -L"$(LDAP_SDK)/lib" -lldap -llber
+endif
+ifndef USE_LDAP_NOVELL
+ifndef USE_LDAP_OPENLDAP
+curl_LDADD += -lwldap32
+endif
+endif
+curl_LDADD += -lws2_32
+
+# Makefile.inc provides the CSOURCES and HHEADERS defines
+include Makefile.inc
+
+curl_PROGRAMS = curl.exe
+curl_OBJECTS := $(patsubst %.c,%.o,$(strip $(CURL_CFILES)))
+curlx_OBJECTS := $(patsubst %.c,%.o,$(notdir $(strip $(CURLX_CFILES))))
+ifdef DYN
+curl_OBJECTS += $(curlx_OBJECTS)
+vpath %.c $(PROOT)/lib
+endif
+
+RESOURCE = curl.res
+
+
+all: $(curl_PROGRAMS)
+
+curl.exe: $(RESOURCE) $(curl_OBJECTS) $(curl_DEPENDENCIES)
+	$(call DEL, $@)
+	$(CC) $(LDFLAGS) -o $@ $< $(curl_OBJECTS) $(curl_LDADD)
+
+# We don't have nroff normally under win32
+# tool_hugehelp.c: $(PROOT)/docs/MANUAL $(PROOT)/docs/curl.1 mkhelp.pl
+#	@$(call DEL, tool_hugehelp.c)
+# 	$(NROFF) -man $(PROOT)/docs/curl.1 | $(PERL) mkhelp.pl $(PROOT)/docs/MANUAL > tool_hugehelp.c
+
+tool_hugehelp.c:
+	@echo Creating $@
+	@$(call COPY, $@.cvs, $@)
+
+%.o: %.c
+	$(CC) $(INCLUDES) $(CFLAGS) -c $<
+
+%.res: %.rc
+	$(RC) $(RCFLAGS) -i $< -o $@
+
+clean:
+ifeq "$(wildcard tool_hugehelp.c.cvs)" "tool_hugehelp.c.cvs"
+	@$(call DEL, tool_hugehelp.c)
+endif
+	@$(call DEL, $(curl_OBJECTS) $(curlx_OBJECTS) $(RESOURCE))
+
+distclean vclean: clean
+	@$(call DEL, $(curl_PROGRAMS))
diff --git a/ap/lib/libcurl/curl-7.54.1/src/Makefile.netware b/ap/lib/libcurl/curl-7.54.1/src/Makefile.netware
new file mode 100644
index 0000000..a927da5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/Makefile.netware
@@ -0,0 +1,524 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2004 - 2014, Guenter Knauf, <http://www.gknw.net/phpbb>.
+# Copyright (C) 2001 - 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.
+#
+#***************************************************************************
+
+#################################################################
+#
+## Makefile for building curl.nlm (NetWare version - gnu make)
+##
+## Use: make -f Makefile.netware
+#
+#################################################################
+
+# Edit the path below to point to the base of your Novell NDK.
+ifndef NDKBASE
+NDKBASE	= c:/novell
+endif
+
+# Edit the path below to point to the base of your Zlib sources.
+ifndef ZLIB_PATH
+ZLIB_PATH = ../../zlib-1.2.8
+endif
+
+# Edit the path below to point to the base of your OpenSSL package.
+ifndef OPENSSL_PATH
+OPENSSL_PATH = ../../openssl-1.0.2a
+endif
+
+# Edit the path below to point to the base of your LibSSH2 package.
+ifndef LIBSSH2_PATH
+LIBSSH2_PATH = ../../libssh2-1.5.0
+endif
+
+# Edit the path below to point to the base of your axTLS package.
+ifndef AXTLS_PATH
+AXTLS_PATH = ../../axTLS-1.2.7
+endif
+
+# Edit the path below to point to the base of your libidn package.
+ifndef LIBIDN_PATH
+LIBIDN_PATH = ../../libidn-1.18
+endif
+
+# Edit the path below to point to the base of your librtmp package.
+ifndef LIBRTMP_PATH
+LIBRTMP_PATH = ../../librtmp-2.3
+endif
+
+# Edit the path below to point to the base of your nghttp2 package.
+ifndef NGHTTP2_PATH
+NGHTTP2_PATH = ../../nghttp2-0.6.7
+endif
+
+# Edit the path below to point to the base of your fbopenssl package.
+ifndef FBOPENSSL_PATH
+FBOPENSSL_PATH = ../../fbopenssl-0.4
+endif
+
+# Edit the path below to point to the base of your libmetalink package.
+ifndef LIBMETALINK_PATH
+LIBMETALINK_PATH = ../../libmetalink-0.1.2
+endif
+
+# Edit the path below to point to the base of your libexpat package.
+ifndef LIBEXPAT_PATH
+LIBEXPAT_PATH = ../../expat-2.1.0
+endif
+
+# Edit the path below to point to the base of your libXML2 package.
+ifndef LIBXML2_PATH
+LIBXML2_PATH = ../../libxml2-2.8.0
+endif
+
+# Edit the path below to point to the base of your c-ares package.
+ifndef LIBCARES_PATH
+LIBCARES_PATH = ../ares
+endif
+
+ifndef INSTDIR
+INSTDIR	= ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
+endif
+
+# Edit the vars below to change NLM target settings.
+TARGET  = curl
+VERSION	= $(LIBCURL_VERSION)
+COPYR	= Copyright (C) $(LIBCURL_COPYRIGHT_STR)
+DESCR	= curl $(LIBCURL_VERSION_STR) ($(LIBARCH)) - https://curl.haxx.se
+MTSAFE	= YES
+STACK	= 64000
+SCREEN	= $(TARGET) commandline utility
+# Comment the line below if you dont want to load protected automatically.
+# LDRING = 3
+
+# Uncomment the next line to enable linking with POSIX semantics.
+# POSIXFL = 1
+
+# Edit the var below to point to your lib architecture.
+ifndef LIBARCH
+LIBARCH = LIBC
+endif
+
+# must be equal to NDEBUG or DEBUG, CURLDEBUG
+ifndef DB
+DB	= NDEBUG
+endif
+# Optimization: -O<n> or debugging: -g
+ifeq ($(DB),NDEBUG)
+	OPT	= -O2
+	OBJDIR	= release
+else
+	OPT	= -g
+	OBJDIR	= debug
+endif
+
+# The following lines defines your compiler.
+ifdef CWFolder
+	METROWERKS = $(CWFolder)
+endif
+ifdef METROWERKS
+	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
+	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
+	CC = mwccnlm
+else
+	CC = gcc
+endif
+PERL	= perl
+# Here you can find a native Win32 binary of the original awk:
+# http://www.gknw.net/development/prgtools/awk-20100523.zip
+AWK	= awk
+CP	= cp -afv
+MKDIR	= mkdir
+# RM	= rm -f
+# If you want to mark the target as MTSAFE you will need a tool for
+# generating the xdc data for the linker; here's a minimal tool:
+# http://www.gknw.net/development/prgtools/mkxdc.zip
+MPKXDC	= mkxdc
+
+# LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
+LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
+
+# Include the version info retrieved from curlver.h
+-include $(OBJDIR)/version.inc
+
+# Global flags for all compilers
+CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
+
+ifeq ($(CC),mwccnlm)
+LD	= mwldnlm
+LDFLAGS	= -nostdlib $(OBJS) $(PRELUDE) $(LDLIBS) -o $@ -commandfile
+LIBEXT	= lib
+CFLAGS	+= -gccinc -inline off -opt nointrinsics -proc 586
+CFLAGS	+= -relax_pointers
+#CFLAGS	+= -w on
+ifeq ($(LIBARCH),LIBC)
+ifeq ($(POSIXFL),1)
+	PRELUDE = $(NDK_LIBC)/imports/posixpre.o
+else
+	PRELUDE = $(NDK_LIBC)/imports/libcpre.o
+endif
+	CFLAGS += -align 4
+else
+	# PRELUDE = $(NDK_CLIB)/imports/clibpre.o
+	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
+	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
+	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
+	CFLAGS += -align 1
+endif
+else
+LD	= nlmconv
+LDFLAGS	= -T
+LIBEXT	= a
+CFLAGS	+= -m32
+CFLAGS  += -fno-builtin -fno-strict-aliasing
+ifeq ($(findstring gcc,$(CC)),gcc)
+CFLAGS  += -fpcc-struct-return
+endif
+CFLAGS	+= -Wall # -pedantic
+ifeq ($(LIBARCH),LIBC)
+ifeq ($(POSIXFL),1)
+	PRELUDE = $(NDK_LIBC)/imports/posixpre.gcc.o
+else
+	PRELUDE = $(NDK_LIBC)/imports/libcpre.gcc.o
+endif
+else
+	# PRELUDE = $(NDK_CLIB)/imports/clibpre.gcc.o
+	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
+	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
+	PRELUDE = $(NDK_ROOT)/pre/prelude.o
+	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
+endif
+endif
+
+NDK_ROOT = $(NDKBASE)/ndk
+ifndef NDK_CLIB
+NDK_CLIB = $(NDK_ROOT)/nwsdk
+endif
+ifndef NDK_LIBC
+NDK_LIBC = $(NDK_ROOT)/libc
+endif
+ifndef NDK_LDAP
+NDK_LDAP = $(NDK_ROOT)/cldapsdk/netware
+endif
+CURL_INC = ../include
+CURL_LIB = ../lib
+
+INCLUDES = -I$(CURL_INC) -I$(CURL_LIB)
+
+ifeq ($(findstring -static,$(CFG)),-static)
+LINK_STATIC = 1
+endif
+ifeq ($(findstring -ares,$(CFG)),-ares)
+WITH_ARES = 1
+endif
+ifeq ($(findstring -rtmp,$(CFG)),-rtmp)
+WITH_RTMP = 1
+WITH_SSL = 1
+WITH_ZLIB = 1
+endif
+ifeq ($(findstring -ssh2,$(CFG)),-ssh2)
+WITH_SSH2 = 1
+WITH_SSL = 1
+WITH_ZLIB = 1
+endif
+ifeq ($(findstring -axtls,$(CFG)),-axtls)
+WITH_AXTLS = 1
+WITH_SSL =
+else
+ifeq ($(findstring -ssl,$(CFG)),-ssl)
+WITH_SSL = 1
+endif
+endif
+ifeq ($(findstring -zlib,$(CFG)),-zlib)
+WITH_ZLIB = 1
+endif
+ifeq ($(findstring -idn,$(CFG)),-idn)
+WITH_IDN = 1
+endif
+ifeq ($(findstring -metalink,$(CFG)),-metalink)
+WITH_METALINK = 1
+WITH_SSL = 1
+endif
+ifeq ($(findstring -nghttp2,$(CFG)),-nghttp2)
+WITH_NGHTTP2 = 1
+endif
+ifeq ($(findstring -ipv6,$(CFG)),-ipv6)
+ENABLE_IPV6 = 1
+endif
+
+ifdef LINK_STATIC
+	LDLIBS	= $(CURL_LIB)/libcurl.$(LIBEXT)
+ifdef WITH_ARES
+	LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
+endif
+else
+	MODULES	= libcurl.nlm
+	IMPORTS	= @$(CURL_LIB)/libcurl.imp
+endif
+ifdef WITH_SSH2
+	# INCLUDES += -I$(LIBSSH2_PATH)/include
+ifdef LINK_STATIC
+	LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
+else
+	MODULES += libssh2.nlm
+	IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
+endif
+endif
+ifdef WITH_RTMP
+	# INCLUDES += -I$(LIBRTMP_PATH)
+ifdef LINK_STATIC
+	LDLIBS += $(LIBRTMP_PATH)/librtmp/librtmp.$(LIBEXT)
+endif
+endif
+ifdef WITH_SSL
+	# INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
+	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
+	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
+	IMPORTS += GetProcessSwitchCount RunningProcess
+else
+ifdef WITH_AXTLS
+	# INCLUDES += -I$(AXTLS_PATH)/inc
+ifdef LINK_STATIC
+	LDLIBS += $(AXTLS_PATH)/lib/libaxtls.$(LIBEXT)
+else
+	MODULES += libaxtls.nlm
+	IMPORTS += $(AXTLS_PATH)/lib/libaxtls.imp
+endif
+endif
+endif
+ifdef WITH_ZLIB
+	INCLUDES += -I$(ZLIB_PATH)
+ifdef LINK_STATIC
+	LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
+else
+	MODULES += libz.nlm
+	IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
+endif
+endif
+ifdef WITH_IDN
+	# INCLUDES += -I$(LIBIDN_PATH)/include
+	LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
+endif
+ifdef WITH_NGHTTP2
+	INCLUDES += -I$(NGHTTP2_PATH)/include
+	LDLIBS += $(NGHTTP2_PATH)/lib/libnghttp2.$(LIBEXT)
+endif
+ifdef WITH_METALINK
+	CFLAGS += -DUSE_METALINK
+	INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
+	INCLUDES += -I$(LIBMETALINK_PATH)/include
+	LDLIBS += $(LIBMETALINK_PATH)/lib/libmetalink.$(LIBEXT)
+ifdef WITH_LIBEXPAT
+	ifeq ($(LIBARCH),LIBC)
+		IMPORTS += @$(LIBEXPAT_PATH)/imports/expatlbc.imp
+		MODULES += expatlbc
+	else
+		IMPORTS += @$(LIBEXPAT_PATH)/imports/expatlib.imp
+		MODULES += expatlib
+	endif
+else
+ifdef WITH_LIBXML2
+	IMPORTS += @$(LIBXML2_PATH)/lib/libxml2.imp
+	MODULES += libxml2
+endif
+endif
+endif
+
+ifeq ($(LIBARCH),LIBC)
+	INCLUDES += -I$(NDK_LIBC)/include
+	# INCLUDES += -I$(NDK_LIBC)/include/nks
+	# INCLUDES += -I$(NDK_LIBC)/include/winsock
+	CFLAGS += -D_POSIX_SOURCE
+else
+	INCLUDES += -I$(NDK_CLIB)/include/nlm
+	# INCLUDES += -I$(NDK_CLIB)/include
+endif
+ifndef DISABLE_LDAP
+	# INCLUDES += -I$(NDK_LDAP)/$(LIBARCH_L)/inc
+endif
+CFLAGS	+= $(INCLUDES)
+
+ifeq ($(MTSAFE),YES)
+	XDCOPT = -n
+endif
+ifeq ($(MTSAFE),NO)
+	XDCOPT = -u
+endif
+ifdef XDCOPT
+	XDCDATA = $(OBJDIR)/$(TARGET).xdc
+endif
+
+ifeq ($(findstring /sh,$(SHELL)),/sh)
+DL	= '
+DS	= /
+PCT	= %
+#-include $(NDKBASE)/nlmconv/ncpfs.inc
+else
+DS	= \\
+PCT	= %%
+endif
+
+# Makefile.inc provides the CSOURCES and HHEADERS defines
+include Makefile.inc
+
+OBJX	:= $(patsubst %.c,$(OBJDIR)/%.o,$(notdir $(strip $(CURLX_CFILES))))
+OBJS	:= $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(CURL_CFILES)))
+ifndef LINK_STATIC
+OBJS	+= $(OBJX)
+endif
+
+vpath %.c $(CURL_LIB)
+
+all: prebuild $(TARGET).nlm
+
+prebuild: $(OBJDIR) $(OBJDIR)/version.inc
+
+$(OBJDIR)/%.o: %.c
+#	@echo Compiling $<
+	$(CC) $(CFLAGS) -c $< -o $@
+
+$(OBJDIR)/version.inc: $(CURL_INC)/curl/curlver.h $(OBJDIR)
+	@echo Creating $@
+	@$(AWK) -f ../packages/NetWare/get_ver.awk $< > $@
+
+install: $(INSTDIR) all
+	@-$(CP) ../docs/$(TARGET).pdf $(INSTDIR)
+	@-$(CP) ../docs/$(TARGET).html $(INSTDIR)
+	@$(CP) $(TARGET).nlm $(INSTDIR)
+
+clean:
+ifeq "$(wildcard tool_hugehelp.c.cvs)" "tool_hugehelp.c.cvs"
+	-$(RM) tool_hugehelp.c
+endif
+	-$(RM) -r $(OBJDIR)
+
+distclean vclean: clean
+	-$(RM) $(TARGET).nlm
+
+$(OBJDIR) $(INSTDIR):
+	@$(MKDIR) $@
+
+$(TARGET).nlm: $(OBJS) $(OBJDIR)/$(TARGET).def $(XDCDATA)
+	@echo Linking $@
+	@-$(RM) $@
+	@$(LD) $(LDFLAGS) $(OBJDIR)/$(TARGET).def
+
+$(OBJDIR)/%.xdc: Makefile.netware
+	@echo Creating $@
+	@$(MPKXDC) $(XDCOPT) $@
+
+$(OBJDIR)/%.def: Makefile.netware
+	@echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
+	@echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
+	@echo $(DL)# All your changes will be lost!!$(DL) >> $@
+	@echo $(DL)#$(DL) >> $@
+	@echo $(DL)copyright "$(COPYR)"$(DL) >> $@
+	@echo $(DL)description "$(DESCR)"$(DL) >> $@
+	@echo $(DL)version $(VERSION)$(DL) >> $@
+ifdef NLMTYPE
+	@echo $(DL)type $(NLMTYPE)$(DL) >> $@
+endif
+ifdef STACK
+	@echo $(DL)stack $(STACK)$(DL) >> $@
+endif
+ifdef SCREEN
+	@echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
+else
+	@echo $(DL)screenname "DEFAULT"$(DL) >> $@
+endif
+ifneq ($(DB),NDEBUG)
+	@echo $(DL)debug$(DL) >> $@
+endif
+	@echo $(DL)threadname "$(TARGET)"$(DL) >> $@
+ifdef XDCDATA
+	@echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
+endif
+ifeq ($(LDRING),0)
+	@echo $(DL)flag_on 16$(DL) >> $@
+endif
+ifeq ($(LDRING),3)
+	@echo $(DL)flag_on 512$(DL) >> $@
+endif
+ifeq ($(LIBARCH),CLIB)
+	@echo $(DL)start _Prelude$(DL) >> $@
+	@echo $(DL)exit _Stop$(DL) >> $@
+	@echo $(DL)import @$(NDK_CLIB)/imports/clib.imp$(DL) >> $@
+	@echo $(DL)import @$(NDK_CLIB)/imports/threads.imp$(DL) >> $@
+	@echo $(DL)import @$(NDK_CLIB)/imports/nlmlib.imp$(DL) >> $@
+	@echo $(DL)import @$(NDK_CLIB)/imports/socklib.imp$(DL) >> $@
+	@echo $(DL)module clib$(DL) >> $@
+ifndef DISABLE_LDAP
+	@echo $(DL)import @$(NDK_LDAP)/clib/imports/ldapsdk.imp$(DL) >> $@
+	@echo $(DL)import @$(NDK_LDAP)/clib/imports/ldapssl.imp$(DL) >> $@
+#	@echo $(DL)import @$(NDK_LDAP)/clib/imports/ldapx.imp$(DL) >> $@
+	@echo $(DL)module ldapsdk ldapssl$(DL) >> $@
+endif
+else
+ifeq ($(POSIXFL),1)
+	@echo $(DL)flag_on 4194304$(DL) >> $@
+endif
+	@echo $(DL)flag_on 64$(DL) >> $@
+	@echo $(DL)pseudopreemption$(DL) >> $@
+ifeq ($(findstring posixpre,$(PRELUDE)),posixpre)
+	@echo $(DL)start POSIX_Start$(DL) >> $@
+	@echo $(DL)exit POSIX_Stop$(DL) >> $@
+	@echo $(DL)check POSIX_CheckUnload$(DL) >> $@
+else
+	@echo $(DL)start _LibCPrelude$(DL) >> $@
+	@echo $(DL)exit _LibCPostlude$(DL) >> $@
+	@echo $(DL)check _LibCCheckUnload$(DL) >> $@
+endif
+	@echo $(DL)import @$(NDK_LIBC)/imports/libc.imp$(DL) >> $@
+	@echo $(DL)import @$(NDK_LIBC)/imports/netware.imp$(DL) >> $@
+	@echo $(DL)module libc$(DL) >> $@
+ifndef DISABLE_LDAP
+	@echo $(DL)import @$(NDK_LDAP)/libc/imports/lldapsdk.imp$(DL) >> $@
+	@echo $(DL)import @$(NDK_LDAP)/libc/imports/lldapssl.imp$(DL) >> $@
+#	@echo $(DL)import @$(NDK_LDAP)/libc/imports/lldapx.imp$(DL) >> $@
+	@echo $(DL)module lldapsdk lldapssl$(DL) >> $@
+endif
+endif
+ifdef MODULES
+	@echo $(DL)module $(MODULES)$(DL) >> $@
+endif
+ifdef EXPORTS
+	@echo $(DL)export $(EXPORTS)$(DL) >> $@
+endif
+ifdef IMPORTS
+	@echo $(DL)import $(IMPORTS)$(DL) >> $@
+endif
+ifeq ($(findstring nlmconv,$(LD)),nlmconv)
+	@echo $(DL)input $(PRELUDE)$(DL) >> $@
+	@echo $(DL)input $(OBJS)$(DL) >> $@
+ifdef LDLIBS
+	@echo $(DL)input $(LDLIBS)$(DL) >> $@
+endif
+	@echo $(DL)output $(TARGET).nlm$(DL) >> $@
+endif
+
+tool_hugehelp.c:
+	@echo Creating $@
+	@$(CP) tool_hugehelp.c.cvs $@
+
+$(LIBCARES_PATH)/libcares.$(LIBEXT):
+	$(MAKE) -C $(LIBCARES_PATH) -f Makefile.netware lib
+
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/curl.rc b/ap/lib/libcurl/curl-7.54.1/src/curl.rc
new file mode 100644
index 0000000..5f49d22
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/curl.rc
@@ -0,0 +1,63 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 <winver.h>
+#include "tool_version.h"
+
+LANGUAGE  0x09,0x01
+
+#define RC_VERSION  CURL_VERSION_MAJOR, CURL_VERSION_MINOR, CURL_VERSION_PATCH, 0
+
+VS_VERSION_INFO VERSIONINFO
+  FILEVERSION     RC_VERSION
+  PRODUCTVERSION  RC_VERSION
+  FILEFLAGSMASK   0x3fL
+#if defined(DEBUGBUILD) || defined(_DEBUG)
+  FILEFLAGS 1
+#else
+  FILEFLAGS 0
+#endif
+  FILEOS      VOS__WINDOWS32
+  FILETYPE    VFT_APP
+  FILESUBTYPE 0x0L
+
+BEGIN
+  BLOCK "StringFileInfo"
+  BEGIN
+    BLOCK "040904b0"
+    BEGIN
+      VALUE "CompanyName",      "curl, https://curl.haxx.se/\0"
+      VALUE "FileDescription",  "The curl executable\0"
+      VALUE "FileVersion",      CURL_VERSION "\0"
+      VALUE "InternalName",     "curl\0"
+      VALUE "OriginalFilename", "curl.exe\0"
+      VALUE "ProductName",      "The curl executable\0"
+      VALUE "ProductVersion",   CURL_VERSION "\0"
+      VALUE "LegalCopyright",   "\xa9 " CURL_COPYRIGHT "\0"  /* a9: Copyright symbol */
+      VALUE "License",          "https://curl.haxx.se/docs/copyright.html\0"
+    END
+  END
+
+  BLOCK "VarFileInfo"
+  BEGIN
+    VALUE "Translation", 0x409, 1200
+  END
+END
diff --git a/ap/lib/libcurl/curl-7.54.1/src/macos/MACINSTALL.TXT b/ap/lib/libcurl/curl-7.54.1/src/macos/MACINSTALL.TXT
new file mode 100644
index 0000000..ce4d1dc
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/macos/MACINSTALL.TXT
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/src/macos/curl.mcp.xml.sit.hqx b/ap/lib/libcurl/curl-7.54.1/src/macos/curl.mcp.xml.sit.hqx
new file mode 100644
index 0000000..01650b9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/macos/curl.mcp.xml.sit.hqx
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/src/macos/src/curl_GUSIConfig.cpp b/ap/lib/libcurl/curl-7.54.1/src/macos/src/curl_GUSIConfig.cpp
new file mode 100644
index 0000000..fc9378a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/macos/src/curl_GUSIConfig.cpp
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/src/macos/src/macos_main.cpp b/ap/lib/libcurl/curl-7.54.1/src/macos/src/macos_main.cpp
new file mode 100644
index 0000000..cf3075f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/macos/src/macos_main.cpp
Binary files differ
diff --git a/ap/lib/libcurl/curl-7.54.1/src/makefile.amiga b/ap/lib/libcurl/curl-7.54.1/src/makefile.amiga
new file mode 100644
index 0000000..9f3748b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/makefile.amiga
@@ -0,0 +1,30 @@
+#
+# $VER: curl Makefile for AmigaOS ...
+#
+
+# change the follow to where you have the AmiTCP SDK v4.3 includes:
+
+ATCPSDKI=	/GG/netinclude
+
+
+CC	=	m68k-amigaos-gcc
+CFLAGS	=	-I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
+LIBS	=	../lib/libcurl.a -lssl -lcrypto -lz
+MANPAGE =	../docs/curl.1
+README	=	../docs/MANUAL
+MKHELP	=	../src/mkhelp.pl
+
+include Makefile.inc
+
+OBJS = $(CURL_CFILES:.c=.o) $(CURLX_CFILES:.c=.o)
+
+all:	tool_hugehelp.c $(OBJS)
+	$(CC) $(CFLAGS) -o curl $(OBJS) $(LIBS) -Wl,-Map,curl.map,--cref
+
+tool_hugehelp.c: $(README) $(MANPAGE)  mkhelp.pl
+	rm -f tool_hugehelp.c
+	/bin/nroff -man $(MANPAGE) | /bin/perl $(MKHELP) -c $(README) > tool_hugehelp.c
+
+install:
+	$(INSTALL) -c curl /c/curl
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/makefile.dj b/ap/lib/libcurl/curl-7.54.1/src/makefile.dj
new file mode 100644
index 0000000..fbd2d37
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/makefile.dj
@@ -0,0 +1,94 @@
+#***************************************************************************
+#                                  _   _ ____  _
+#  Project                     ___| | | |  _ \| |
+#                             / __| | | | |_) | |
+#                            | (__| |_| |  _ <| |___
+#                             \___|\___/|_| \_\_____|
+#
+# Copyright (C) 2003 - 2007, Gisle Vanem <gvanem@yahoo.no>.
+# Copyright (C) 2003 - 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.
+#
+#***************************************************************************
+
+#
+#  Adapted for djgpp2 / Watt-32 / DOS
+#
+
+DEPEND_PREREQ = # tool_hugehelp.c
+
+TOPDIR = ..
+
+include ../packages/DOS/common.dj
+include Makefile.inc
+
+CSOURCES = $(CURL_CFILES)
+
+ifeq ($(USE_SSL),1)
+  EX_LIBS += $(OPENSSL_ROOT)/lib/libssl.a $(OPENSSL_ROOT)/lib/libcrypt.a
+endif
+
+ifeq ($(USE_ARES),1)
+  EX_LIBS += $(ARES_ROOT)/libcares.a
+endif
+
+ifeq ($(USE_ZLIB),1)
+  EX_LIBS += $(ZLIB_ROOT)/libz.a
+  CFLAGS  += -DUSE_MANUAL
+endif
+
+ifeq ($(USE_IDNA),1)
+  EX_LIBS += $(LIBIDN_ROOT)/lib/dj_obj/libidn.a -liconv
+endif
+
+EX_LIBS += $(WATT32_ROOT)/lib/libwatt.a
+
+PROGRAM  = curl.exe
+OBJECTS += $(addprefix $(OBJ_DIR)/, $(CSOURCES:.c=.o))
+
+all: $(OBJ_DIR) $(PROGRAM)
+	@echo Welcome to curl
+
+$(PROGRAM): $(OBJECTS) ../lib/libcurl.a
+	$(CC) -o $@ $^ $(LDFLAGS) $(EX_LIBS)
+
+#
+# groff 1.18+ requires "-P -c"
+#
+tool_hugehelp.c: ../docs/MANUAL ../docs/curl.1 mkhelp.pl
+	groff -Tascii -man ../docs/curl.1 | \
+	perl -w mkhelp.pl ../docs/MANUAL > $@
+
+# clean generated files
+#
+genclean:
+	- $(DELETE) tool_hugehelp.c
+
+# clean object files and subdir
+#
+objclean: genclean
+	- $(DELETE) $(OBJ_DIR)$(DS)*.o
+	- $(RMDIR) $(OBJ_DIR)
+
+# clean without removing built program
+#
+clean: objclean
+	- $(DELETE) depend.dj
+
+# clean everything
+#
+realclean vclean: clean
+	- $(DELETE) $(PROGRAM)
+
+-include depend.dj
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/mkhelp.pl b/ap/lib/libcurl/curl-7.54.1/src/mkhelp.pl
new file mode 100644
index 0000000..93bbde6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/mkhelp.pl
@@ -0,0 +1,258 @@
+#!/usr/local/bin/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.
+#
+###########################################################################
+
+# Yeah, I know, probably 1000 other persons already wrote a script like
+# this, but I'll tell ya:
+
+# THEY DON'T FIT ME :-)
+
+# Get readme file as parameter:
+
+if($ARGV[0] eq "-c") {
+    $c=1;
+    shift @ARGV;
+}
+
+my $README = $ARGV[0];
+
+if($README eq "") {
+    print "usage: mkreadme.pl [-c] <README> < manpage\n";
+    exit;
+}
+
+
+push @out, "                                  _   _ ____  _\n";
+push @out, "  Project                     ___| | | |  _ \\| |\n";
+push @out, "                             / __| | | | |_) | |\n";
+push @out, "                            | (__| |_| |  _ <| |___\n";
+push @out, "                             \\___|\\___/|_| \\_\\_____|\n";
+
+my $olen=0;
+while (<STDIN>) {
+    my $line = $_;
+
+    # this should be removed:
+    $line =~ s/(.|_)//g;
+
+    # remove trailing CR from line. msysgit checks out files as line+CRLF
+    $line =~ s/\r$//;
+
+    if($line =~ /^([ \t]*\n|curl)/i) {
+        # cut off headers and empty lines
+        $wline++; # count number of cut off lines
+        next;
+    }
+
+    my $text = $line;
+    $text =~ s/^\s+//g; # cut off preceding...
+    $text =~ s/\s+$//g; # and trailing whitespaces
+
+    $tlen = length($text);
+
+    if($wline && ($olen == $tlen)) {
+        # if the previous line with contents was exactly as long as
+        # this line, then we ignore the newlines!
+
+        # We do this magic because a header may abort a paragraph at
+        # any line, but we don't want that to be noticed in the output
+        # here
+        $wline=0;
+    }
+    $olen = $tlen;
+
+    if($wline) {
+        # we only make one empty line max
+        $wline = 0;
+        push @out, "\n";
+    }
+    push @out, $line;
+}
+push @out, "\n"; # just an extra newline
+
+open(READ, "<$README") ||
+    die "couldn't read the README infile $README";
+
+while(<READ>) {
+    my $line = $_;
+
+    # remove trailing CR from line. msysgit checks out files as line+CRLF
+    $line =~ s/\r$//;
+
+    push @out, $line;
+}
+close(READ);
+
+$now = localtime;
+print <<HEAD
+/*
+ * NEVER EVER edit this manually, fix the mkhelp.pl script instead!
+ * Generation time: $now
+ */
+#ifdef USE_MANUAL
+#include "tool_hugehelp.h"
+HEAD
+    ;
+if($c) {
+    # If compression requested, check that the Gzip module is available
+    # or else disable compression
+    $c = eval
+    {
+      require IO::Compress::Gzip;
+      IO::Compress::Gzip->import();
+      1;
+    };
+    print STDERR "Warning: compression requested but Gzip is not available\n" if (!$c)
+}
+
+if($c)
+{
+    my $content = join("", @out);
+    my $gzippedContent;
+    IO::Compress::Gzip::gzip(
+        \$content, \$gzippedContent, Level => 9, TextFlag => 1, Time=>0) or die "gzip failed:";
+    $gzip = length($content);
+    $gzipped = length($gzippedContent);
+
+    print <<HEAD
+#include <zlib.h>
+#include "memdebug.h" /* keep this as LAST include */
+static const unsigned char hugehelpgz[] = {
+  /* This mumbo-jumbo is the huge help text compressed with gzip.
+     Thanks to this operation, the size of this data shrank from $gzip
+     to $gzipped bytes. You can disable the use of compressed help
+     texts by NOT passing -c to the mkhelp.pl tool. */
+HEAD
+;
+
+    my $c=0;
+    print " ";
+    for(split(//, $gzippedContent)) {
+        my $num=ord($_);
+        printf(" 0x%02x,", 0+$num);
+        if(!(++$c % 12)) {
+            print "\n ";
+        }
+    }
+    print "\n};\n";
+
+    print <<EOF
+#define BUF_SIZE 0x10000
+static voidpf zalloc_func(voidpf opaque, unsigned int items, unsigned int size)
+{
+  (void) opaque;
+  /* not a typo, keep it calloc() */
+  return (voidpf) calloc(items, size);
+}
+static void zfree_func(voidpf opaque, voidpf ptr)
+{
+  (void) opaque;
+  free(ptr);
+}
+/* Decompress and send to stdout a gzip-compressed buffer */
+void hugehelp(void)
+{
+  unsigned char* buf;
+  int status,headerlen;
+  z_stream z;
+
+  /* Make sure no gzip options are set */
+  if (hugehelpgz[3] & 0xfe)
+    return;
+
+  headerlen = 10;
+  memset(&z, 0, sizeof(z_stream));
+  z.zalloc = (alloc_func)zalloc_func;
+  z.zfree = (free_func)zfree_func;
+  z.avail_in = (unsigned int)(sizeof(hugehelpgz) - headerlen);
+  z.next_in = (unsigned char *)hugehelpgz + headerlen;
+
+  if (inflateInit2(&z, -MAX_WBITS) != Z_OK)
+    return;
+
+  buf = malloc(BUF_SIZE);
+  if (buf) {
+    while(1) {
+      z.avail_out = BUF_SIZE;
+      z.next_out = buf;
+      status = inflate(&z, Z_SYNC_FLUSH);
+      if (status == Z_OK || status == Z_STREAM_END) {
+        fwrite(buf, BUF_SIZE - z.avail_out, 1, stdout);
+        if (status == Z_STREAM_END)
+          break;
+      }
+      else
+        break;    /* Error */
+    }
+    free(buf);
+  }
+  inflateEnd(&z);
+}
+EOF
+    ;
+foot();
+exit;
+}
+else {
+    print <<HEAD
+void hugehelp(void)
+{
+   fputs(
+HEAD
+         ;
+}
+
+$outsize=0;
+for(@out) {
+    chop;
+
+    $new = $_;
+
+    $outsize += length($new)+1; # one for the newline
+
+    $new =~ s/\\/\\\\/g;
+    $new =~ s/\"/\\\"/g;
+
+    # gcc 2.96 claims ISO C89 only is required to support 509 letter strings
+    if($outsize > 500) {
+        # terminate and make another fputs() call here
+        print ", stdout);\n fputs(\n";
+        $outsize=length($new)+1;
+    }
+    printf("\"%s\\n\"\n", $new);
+
+}
+
+print ", stdout) ;\n}\n";
+
+foot();
+
+sub foot {
+  print <<FOOT
+#else /* !USE_MANUAL */
+/* built-in manual is disabled, blank function */
+#include "tool_hugehelp.h"
+void hugehelp(void) {}
+#endif /* USE_MANUAL */
+FOOT
+  ;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/slist_wc.c b/ap/lib/libcurl/curl-7.54.1/src/slist_wc.c
new file mode 100644
index 0000000..5233b1b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/slist_wc.c
@@ -0,0 +1,72 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+
+#include "tool_setup.h"
+
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+
+#include "slist_wc.h"
+
+/* The last #include files should be: */
+#include "memdebug.h"
+
+/*
+ * slist_wc_append() appends a string to the linked list. This function can be
+ * used as an initialization function as well as an append function.
+ */
+struct slist_wc *slist_wc_append(struct slist_wc *list,
+                                 const char *data)
+{
+  struct curl_slist *new_item = curl_slist_append(NULL, data);
+
+  if(!new_item)
+    return NULL;
+
+  if(!list) {
+    list = malloc(sizeof(struct slist_wc));
+
+    if(!list) {
+      curl_slist_free_all(new_item);
+      return NULL;
+    }
+
+    list->first = new_item;
+    list->last = new_item;
+    return list;
+  }
+
+  list->last->next = new_item;
+  list->last = list->last->next;
+  return list;
+}
+
+/* be nice and clean up resources */
+void slist_wc_free_all(struct slist_wc *list)
+{
+  if(!list)
+    return;
+
+  curl_slist_free_all(list->first);
+  free(list);
+}
+
+#endif /* CURL_DISABLE_LIBCURL_OPTION */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/slist_wc.h b/ap/lib/libcurl/curl-7.54.1/src/slist_wc.h
new file mode 100644
index 0000000..d894312
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/slist_wc.h
@@ -0,0 +1,56 @@
+#ifndef HEADER_CURL_SLIST_WC_H
+#define HEADER_CURL_SLIST_WC_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+
+#include "tool_setup.h"
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+
+/* linked-list structure with last node cache for easysrc */
+struct slist_wc {
+  struct curl_slist *first;
+  struct curl_slist *last;
+};
+
+/*
+ * NAME curl_slist_wc_append()
+ *
+ * DESCRIPTION
+ *
+ * Appends a string to a linked list. If no list exists, it will be created
+ * first. Returns the new list, after appending.
+ */
+struct slist_wc *slist_wc_append(struct slist_wc *, const char *);
+
+/*
+ * NAME curl_slist_free_all()
+ *
+ * DESCRIPTION
+ *
+ * free a previously built curl_slist_wc.
+ */
+void slist_wc_free_all(struct slist_wc *);
+
+#endif /* CURL_DISABLE_LIBCURL_OPTION */
+
+#endif /* HEADER_CURL_SLIST_WC_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_binmode.c b/ap/lib/libcurl/curl-7.54.1/src/tool_binmode.c
new file mode 100644
index 0000000..5ca64cd
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_binmode.c
@@ -0,0 +1,52 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef HAVE_SETMODE
+
+#ifdef HAVE_IO_H
+#  include <io.h>
+#endif
+
+#ifdef HAVE_FCNTL_H
+#  include <fcntl.h>
+#endif
+
+#include "tool_binmode.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+void set_binmode(FILE *stream)
+{
+#ifdef O_BINARY
+#  ifdef __HIGHC__
+  _setmode(stream, O_BINARY);
+#  else
+  (void)setmode(fileno(stream), O_BINARY);
+#  endif
+#else
+  (void)stream;
+#endif
+}
+
+#endif /* HAVE_SETMODE */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_binmode.h b/ap/lib/libcurl/curl-7.54.1/src/tool_binmode.h
new file mode 100644
index 0000000..8b445ae
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_binmode.h
@@ -0,0 +1,37 @@
+#ifndef HEADER_CURL_TOOL_BINMODE_H
+#define HEADER_CURL_TOOL_BINMODE_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 "tool_setup.h"
+
+#ifdef HAVE_SETMODE
+
+void set_binmode(FILE *stream);
+
+#else
+
+#define set_binmode(x) Curl_nop_stmt
+
+#endif /* HAVE_SETMODE */
+
+#endif /* HEADER_CURL_TOOL_BINMODE_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_bname.c b/ap/lib/libcurl/curl-7.54.1/src/tool_bname.c
new file mode 100644
index 0000000..5cc5c15
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_bname.c
@@ -0,0 +1,50 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "tool_bname.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifndef HAVE_BASENAME
+
+char *tool_basename(char *path)
+{
+  char *s1;
+  char *s2;
+
+  s1 = strrchr(path, '/');
+  s2 = strrchr(path, '\\');
+
+  if(s1 && s2) {
+    path = (s1 > s2) ? s1 + 1 : s2 + 1;
+  }
+  else if(s1)
+    path = s1 + 1;
+  else if(s2)
+    path = s2 + 1;
+
+  return path;
+}
+
+#endif /* HAVE_BASENAME */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_bname.h b/ap/lib/libcurl/curl-7.54.1/src/tool_bname.h
new file mode 100644
index 0000000..61b97b4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_bname.h
@@ -0,0 +1,35 @@
+#ifndef HEADER_CURL_TOOL_BNAME_H
+#define HEADER_CURL_TOOL_BNAME_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 "tool_setup.h"
+
+#ifndef HAVE_BASENAME
+
+char *tool_basename(char *path);
+
+#define basename(x) tool_basename((x))
+
+#endif /* HAVE_BASENAME */
+
+#endif /* HEADER_CURL_TOOL_BNAME_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_dbg.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_dbg.c
new file mode 100644
index 0000000..b4fbe0b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_dbg.c
@@ -0,0 +1,279 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_convert.h"
+#include "tool_msgs.h"
+#include "tool_cb_dbg.h"
+#include "tool_util.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+static void dump(const char *timebuf, const char *text,
+                 FILE *stream, const unsigned char *ptr, size_t size,
+                 trace tracetype, curl_infotype infotype);
+
+/*
+** callback for CURLOPT_DEBUGFUNCTION
+*/
+
+int tool_debug_cb(CURL *handle, curl_infotype type,
+                  char *data, size_t size,
+                  void *userdata)
+{
+  struct OperationConfig *operation = userdata;
+  struct GlobalConfig *config = operation->global;
+  FILE *output = config->errors;
+  const char *text;
+  struct timeval tv;
+  struct tm *now;
+  char timebuf[20];
+  time_t secs;
+  static time_t epoch_offset;
+  static int    known_offset;
+
+  (void)handle; /* not used */
+
+  if(config->tracetime) {
+    tv = 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);
+  }
+  else
+    timebuf[0] = 0;
+
+  if(!config->trace_stream) {
+    /* open for append */
+    if(!strcmp("-", config->trace_dump))
+      config->trace_stream = stdout;
+    else if(!strcmp("%", config->trace_dump))
+      /* Ok, this is somewhat hackish but we do it undocumented for now */
+      config->trace_stream = config->errors;  /* aka stderr */
+    else {
+      config->trace_stream = fopen(config->trace_dump, FOPEN_WRITETEXT);
+      config->trace_fopened = TRUE;
+    }
+  }
+
+  if(config->trace_stream)
+    output = config->trace_stream;
+
+  if(!output) {
+    warnf(config, "Failed to create/open output");
+    return 0;
+  }
+
+  if(config->tracetype == TRACE_PLAIN) {
+    /*
+     * This is the trace look that is similar to what libcurl makes on its
+     * own.
+     */
+    static const char * const s_infotype[] = {
+      "*", "<", ">", "{", "}", "{", "}"
+    };
+    size_t i;
+    size_t st = 0;
+    static bool newl = FALSE;
+    static bool traced_data = FALSE;
+
+    switch(type) {
+    case CURLINFO_HEADER_OUT:
+      if(size > 0) {
+        for(i = 0; i < size - 1; i++) {
+          if(data[i] == '\n') { /* LF */
+            if(!newl) {
+              fprintf(output, "%s%s ", timebuf, s_infotype[type]);
+            }
+            (void)fwrite(data + st, i - st + 1, 1, output);
+            st = i + 1;
+            newl = FALSE;
+          }
+        }
+        if(!newl)
+          fprintf(output, "%s%s ", timebuf, s_infotype[type]);
+        (void)fwrite(data + st, i - st + 1, 1, output);
+      }
+      newl = (size && (data[size - 1] != '\n')) ? TRUE : FALSE;
+      traced_data = FALSE;
+      break;
+    case CURLINFO_TEXT:
+    case CURLINFO_HEADER_IN:
+      if(!newl)
+        fprintf(output, "%s%s ", timebuf, s_infotype[type]);
+      (void)fwrite(data, size, 1, output);
+      newl = (size && (data[size - 1] != '\n')) ? TRUE : FALSE;
+      traced_data = FALSE;
+      break;
+    case CURLINFO_DATA_OUT:
+    case CURLINFO_DATA_IN:
+    case CURLINFO_SSL_DATA_IN:
+    case CURLINFO_SSL_DATA_OUT:
+      if(!traced_data) {
+        /* if the data is output to a tty and we're sending this debug trace
+           to stderr or stdout, we don't display the alert about the data not
+           being shown as the data _is_ shown then just not via this
+           function */
+        if(!config->isatty || ((output != stderr) && (output != stdout))) {
+          if(!newl)
+            fprintf(output, "%s%s ", timebuf, s_infotype[type]);
+          fprintf(output, "[%zd bytes data]\n", size);
+          newl = FALSE;
+          traced_data = TRUE;
+        }
+      }
+      break;
+    default: /* nada */
+      newl = FALSE;
+      traced_data = FALSE;
+      break;
+    }
+
+    return 0;
+  }
+
+#ifdef CURL_DOES_CONVERSIONS
+  /* Special processing is needed for CURLINFO_HEADER_OUT blocks
+   * if they contain both headers and data (separated by CRLFCRLF).
+   * We dump the header text and then switch type to CURLINFO_DATA_OUT.
+   */
+  if((type == CURLINFO_HEADER_OUT) && (size > 4)) {
+    size_t i;
+    for(i = 0; i < size - 4; i++) {
+      if(memcmp(&data[i], "\r\n\r\n", 4) == 0) {
+        /* dump everything through the CRLFCRLF as a sent header */
+        text = "=> Send header";
+        dump(timebuf, text, output, (unsigned char *)data, i + 4,
+             config->tracetype, type);
+        data += i + 3;
+        size -= i + 4;
+        type = CURLINFO_DATA_OUT;
+        data += 1;
+        break;
+      }
+    }
+  }
+#endif /* CURL_DOES_CONVERSIONS */
+
+  switch(type) {
+  case CURLINFO_TEXT:
+    fprintf(output, "%s== Info: %s", timebuf, 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_HEADER_IN:
+    text = "<= Recv header";
+    break;
+  case CURLINFO_DATA_IN:
+    text = "<= Recv data";
+    break;
+  case CURLINFO_SSL_DATA_IN:
+    text = "<= Recv SSL data";
+    break;
+  case CURLINFO_SSL_DATA_OUT:
+    text = "=> Send SSL data";
+    break;
+  }
+
+  dump(timebuf, text, output, (unsigned char *) data, size, config->tracetype,
+       type);
+  return 0;
+}
+
+static void dump(const char *timebuf, const char *text,
+                 FILE *stream, const unsigned char *ptr, size_t size,
+                 trace tracetype, curl_infotype infotype)
+{
+  size_t i;
+  size_t c;
+
+  unsigned int width = 0x10;
+
+  if(tracetype == TRACE_ASCII)
+    /* without the hex output, we can fit more on screen */
+    width = 0x40;
+
+  fprintf(stream, "%s%s, %zd bytes (0x%zx)\n", timebuf, text, size, size);
+
+  for(i = 0; i < size; i += width) {
+
+    fprintf(stream, "%04zx: ", i);
+
+    if(tracetype == TRACE_BIN) {
+      /* 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((tracetype == TRACE_ASCII) &&
+         (i+c+1 < size) && (ptr[i+c] == 0x0D) && (ptr[i+c+1] == 0x0A)) {
+        i += (c+2-width);
+        break;
+      }
+#ifdef CURL_DOES_CONVERSIONS
+      /* repeat the 0D0A check above but use the host encoding for CRLF */
+      if((tracetype == TRACE_ASCII) &&
+         (i+c+1 < size) && (ptr[i+c] == '\r') && (ptr[i+c+1] == '\n')) {
+        i += (c+2-width);
+        break;
+      }
+      /* convert to host encoding and print this character */
+      fprintf(stream, "%c", convert_char(infotype, ptr[i+c]));
+#else
+      (void)infotype;
+      fprintf(stream, "%c", ((ptr[i+c] >= 0x20) && (ptr[i+c] < 0x80)) ?
+              ptr[i+c] : UNPRINTABLE_CHAR);
+#endif /* CURL_DOES_CONVERSIONS */
+      /* check again for 0D0A, to avoid an extra \n if it's at width */
+      if((tracetype == TRACE_ASCII) &&
+         (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);
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_dbg.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_dbg.h
new file mode 100644
index 0000000..c1cbc80
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_dbg.h
@@ -0,0 +1,35 @@
+#ifndef HEADER_CURL_TOOL_CB_DBG_H
+#define HEADER_CURL_TOOL_CB_DBG_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 "tool_setup.h"
+
+/*
+** callback for CURLOPT_DEBUGFUNCTION
+*/
+
+int tool_debug_cb(CURL *handle, curl_infotype type,
+                  char *data, size_t size,
+                  void *userdata);
+
+#endif /* HEADER_CURL_TOOL_CB_DBG_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_hdr.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_hdr.c
new file mode 100644
index 0000000..0e13eec
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_hdr.c
@@ -0,0 +1,239 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_doswin.h"
+#include "tool_msgs.h"
+#include "tool_cb_hdr.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+static char *parse_filename(const char *ptr, size_t len);
+
+/*
+** callback for CURLOPT_HEADERFUNCTION
+*/
+
+size_t tool_header_cb(char *ptr, size_t size, size_t nmemb, void *userdata)
+{
+  struct HdrCbData *hdrcbdata = userdata;
+  struct OutStruct *outs = hdrcbdata->outs;
+  struct OutStruct *heads = hdrcbdata->heads;
+  const char *str = ptr;
+  const size_t cb = size * nmemb;
+  const char *end = (char *)ptr + cb;
+  char *url = NULL;
+
+  /*
+   * Once that libcurl has called back tool_header_cb() the returned value
+   * is checked against the amount that was intended to be written, if
+   * it does not match then it fails with CURLE_WRITE_ERROR. So at this
+   * point returning a value different from sz*nmemb indicates failure.
+   */
+  size_t failure = (size && nmemb) ? 0 : 1;
+
+  if(!heads->config)
+    return failure;
+
+#ifdef DEBUGBUILD
+  if(size * nmemb > (size_t)CURL_MAX_HTTP_HEADER) {
+    warnf(heads->config->global, "Header data exceeds single call write "
+          "limit!\n");
+    return failure;
+  }
+#endif
+
+  /*
+   * Write header data when curl option --dump-header (-D) is given.
+   */
+
+  if(heads->config->headerfile && heads->stream) {
+    size_t rc = fwrite(ptr, size, nmemb, heads->stream);
+    if(rc != cb)
+      return rc;
+    /* flush the stream to send off what we got earlier */
+    (void)fflush(heads->stream);
+  }
+
+  /*
+   * This callback sets the filename where output shall be written when
+   * curl options --remote-name (-O) and --remote-header-name (-J) have
+   * been simultaneously given and additionally server returns an HTTP
+   * Content-Disposition header specifying a filename property.
+   */
+
+  if(hdrcbdata->honor_cd_filename &&
+     (cb > 20) && checkprefix("Content-disposition:", str) &&
+     !curl_easy_getinfo(outs->config->easy, CURLINFO_EFFECTIVE_URL, &url) &&
+     url && (checkprefix("http://", url) || checkprefix("https://", url))) {
+    const char *p = str + 20;
+
+    /* look for the 'filename=' parameter
+       (encoded filenames (*=) are not supported) */
+    for(;;) {
+      char *filename;
+      size_t len;
+
+      while(*p && (p < end) && !ISALPHA(*p))
+        p++;
+      if(p > end - 9)
+        break;
+
+      if(memcmp(p, "filename=", 9)) {
+        /* no match, find next parameter */
+        while((p < end) && (*p != ';'))
+          p++;
+        continue;
+      }
+      p += 9;
+
+      /* this expression below typecasts 'cb' only to avoid
+         warning: signed and unsigned type in conditional expression
+      */
+      len = (ssize_t)cb - (p - str);
+      filename = parse_filename(p, len);
+      if(filename) {
+        outs->filename = filename;
+        outs->alloc_filename = TRUE;
+        outs->is_cd_filename = TRUE;
+        outs->s_isreg = TRUE;
+        outs->fopened = FALSE;
+        outs->stream = NULL;
+        hdrcbdata->honor_cd_filename = FALSE;
+        break;
+      }
+      return failure;
+    }
+  }
+
+  return cb;
+}
+
+/*
+ * Copies a file name part and returns an ALLOCATED data buffer.
+ */
+static char *parse_filename(const char *ptr, size_t len)
+{
+  char *copy;
+  char *p;
+  char *q;
+  char  stop = '\0';
+
+  /* simple implementation of strndup() */
+  copy = malloc(len+1);
+  if(!copy)
+    return NULL;
+  memcpy(copy, ptr, len);
+  copy[len] = '\0';
+
+  p = copy;
+  if(*p == '\'' || *p == '"') {
+    /* store the starting quote */
+    stop = *p;
+    p++;
+  }
+  else
+    stop = ';';
+
+  /* if the filename contains a path, only use filename portion */
+  q = strrchr(copy, '/');
+  if(q) {
+    p = q + 1;
+    if(!*p) {
+      Curl_safefree(copy);
+      return NULL;
+    }
+  }
+
+  /* If the filename contains a backslash, only use filename portion. The idea
+     is that even systems that don't handle backslashes as path separators
+     probably want the path removed for convenience. */
+  q = strrchr(p, '\\');
+  if(q) {
+    p = q + 1;
+    if(!*p) {
+      Curl_safefree(copy);
+      return NULL;
+    }
+  }
+
+  /* scan for the end letter and stop there */
+  for(q = p; *q; ++q) {
+    if(*q == stop) {
+      *q = '\0';
+      break;
+    }
+  }
+
+  /* make sure the file name doesn't end in \r or \n */
+  q = strchr(p, '\r');
+  if(q)
+    *q = '\0';
+
+  q = strchr(p, '\n');
+  if(q)
+    *q = '\0';
+
+  if(copy != p)
+    memmove(copy, p, strlen(p) + 1);
+
+#if defined(MSDOS) || defined(WIN32)
+  {
+    char *sanitized;
+    SANITIZEcode sc = sanitize_file_name(&sanitized, copy, 0);
+    Curl_safefree(copy);
+    if(sc)
+      return NULL;
+    copy = sanitized;
+  }
+#endif /* MSDOS || WIN32 */
+
+  /* in case we built debug enabled, we allow an environment variable
+   * named CURL_TESTDIR to prefix the given file name to put it into a
+   * specific directory
+   */
+#ifdef DEBUGBUILD
+  {
+    char *tdir = curlx_getenv("CURL_TESTDIR");
+    if(tdir) {
+      char buffer[512]; /* suitably large */
+      snprintf(buffer, sizeof(buffer), "%s/%s", tdir, copy);
+      Curl_safefree(copy);
+      copy = strdup(buffer); /* clone the buffer, we don't use the libcurl
+                                aprintf() or similar since we want to use the
+                                same memory code as the "real" parse_filename
+                                function */
+      curl_free(tdir);
+    }
+  }
+#endif
+
+  return copy;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_hdr.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_hdr.h
new file mode 100644
index 0000000..32032e9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_hdr.h
@@ -0,0 +1,54 @@
+#ifndef HEADER_CURL_TOOL_CB_HDR_H
+#define HEADER_CURL_TOOL_CB_HDR_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 "tool_setup.h"
+
+/*
+ * curl operates using a single HdrCbData struct variable, a
+ * pointer to this is passed as userdata pointer to tool_header_cb.
+ *
+ * 'outs' member is a pointer to the OutStruct variable used to keep
+ * track of information relative to curl's output writing.
+ *
+ * 'heads' member is a pointer to the OutStruct variable used to keep
+ * track of information relative to header response writing.
+ *
+ * 'honor_cd_filename' member is TRUE when tool_header_cb is allowed
+ * to honor Content-Disposition filename property and accordingly
+ * set 'outs' filename, otherwise FALSE;
+ */
+
+struct HdrCbData {
+  struct OutStruct *outs;
+  struct OutStruct *heads;
+  bool honor_cd_filename;
+};
+
+/*
+** callback for CURLOPT_HEADERFUNCTION
+*/
+
+size_t tool_header_cb(char *ptr, size_t size, size_t nmemb, void *userdata);
+
+#endif /* HEADER_CURL_TOOL_CB_HDR_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_prg.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_prg.c
new file mode 100644
index 0000000..d4ecb3c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_prg.c
@@ -0,0 +1,150 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_cb_prg.h"
+#include "tool_util.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/*
+** callback for CURLOPT_XFERINFOFUNCTION
+*/
+
+#define MAX_BARLENGTH 256
+
+int tool_progress_cb(void *clientp,
+                     curl_off_t dltotal, curl_off_t dlnow,
+                     curl_off_t ultotal, curl_off_t ulnow)
+{
+  /* The original progress-bar source code was written for curl by Lars Aas,
+     and this new edition inherits some of his concepts. */
+
+  char line[MAX_BARLENGTH+1];
+  char format[40];
+  double frac;
+  double percent;
+  int barwidth;
+  int num;
+  struct timeval now = tvnow();
+  struct ProgressData *bar = (struct ProgressData *)clientp;
+  curl_off_t total;
+  curl_off_t point;
+
+  /* expected transfer size */
+  total = dltotal + ultotal + bar->initial_size;
+
+  /* we've come this far */
+  point = dlnow + ulnow + bar->initial_size;
+
+  if(bar->calls && (tvdiff(now, bar->prevtime) < 100L) && point < total)
+    /* after first call, limit progress-bar updating to 10 Hz */
+    /* update when we're at 100% even if last update is less than 200ms ago */
+    return 0;
+
+  if(point > total)
+    /* we have got more than the expected total! */
+    total = point;
+
+  /* simply count invokes */
+  bar->calls++;
+
+  if(total < 1) {
+    curl_off_t prevblock = bar->prev / 1024;
+    curl_off_t thisblock = point / 1024;
+    while(thisblock > prevblock) {
+      fprintf(bar->out, "#");
+      prevblock++;
+    }
+  }
+  else if(point != bar->prev) {
+    frac = (double)point / (double)total;
+    percent = frac * 100.0;
+    barwidth = bar->width - 7;
+    num = (int) (((double)barwidth) * frac);
+    if(num > MAX_BARLENGTH)
+      num = MAX_BARLENGTH;
+    memset(line, '#', num);
+    line[num] = '\0';
+    snprintf(format, sizeof(format), "\r%%-%ds %%5.1f%%%%", barwidth);
+    fprintf(bar->out, format, line, percent);
+  }
+  fflush(bar->out);
+  bar->prev = point;
+  bar->prevtime = now;
+
+  return 0;
+}
+
+void progressbarinit(struct ProgressData *bar,
+                     struct OperationConfig *config)
+{
+#ifdef __EMX__
+  /* 20000318 mgs */
+  int scr_size[2];
+#endif
+  char *colp;
+
+  memset(bar, 0, sizeof(struct ProgressData));
+
+  /* pass this through to progress function so
+   * it can display progress towards total file
+   * not just the part that's left. (21-may-03, dbyron) */
+  if(config->use_resume)
+    bar->initial_size = config->resume_from;
+
+/* TODO: get terminal width through ansi escapes or something similar.
+   try to update width when xterm is resized... - 19990617 larsa */
+#ifndef __EMX__
+  /* 20000318 mgs
+   * OS/2 users most likely won't have this env var set, and besides that
+   * we're using our own way to determine screen width */
+  colp = curlx_getenv("COLUMNS");
+  if(colp) {
+    char *endptr;
+    long num = strtol(colp, &endptr, 10);
+    if((endptr != colp) && (endptr == colp + strlen(colp)) && (num > 0))
+      bar->width = (int)num;
+    else
+      bar->width = 79;
+    curl_free(colp);
+  }
+  else
+    bar->width = 79;
+#else
+  /* 20000318 mgs
+   * We use this emx library call to get the screen width, and subtract
+   * one from what we got in order to avoid a problem with the cursor
+   * advancing to the next line if we print a string that is as long as
+   * the screen is wide. */
+
+  _scrsize(scr_size);
+  bar->width = scr_size[0] - 1;
+#endif
+
+  bar->out = config->global->errors;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_prg.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_prg.h
new file mode 100644
index 0000000..d62b4a0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_prg.h
@@ -0,0 +1,50 @@
+#ifndef HEADER_CURL_TOOL_CB_PRG_H
+#define HEADER_CURL_TOOL_CB_PRG_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 "tool_setup.h"
+
+#define CURL_PROGRESS_STATS 0 /* default progress display */
+#define CURL_PROGRESS_BAR   1
+
+struct ProgressData {
+  int         calls;
+  curl_off_t  prev;
+  struct timeval prevtime;
+  int         width;
+  FILE       *out;  /* where to write everything to */
+  curl_off_t  initial_size;
+};
+
+void progressbarinit(struct ProgressData *bar,
+                     struct OperationConfig *config);
+
+/*
+** callback for CURLOPT_PROGRESSFUNCTION
+*/
+
+int tool_progress_cb(void *clientp,
+                     curl_off_t dltotal, curl_off_t dlnow,
+                     curl_off_t ultotal, curl_off_t ulnow);
+
+#endif /* HEADER_CURL_TOOL_CB_PRG_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_rea.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_rea.c
new file mode 100644
index 0000000..88137ae
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_rea.c
@@ -0,0 +1,55 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_cb_rea.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/*
+** callback for CURLOPT_READFUNCTION
+*/
+
+size_t tool_read_cb(void *buffer, size_t sz, size_t nmemb, void *userdata)
+{
+  ssize_t rc;
+  struct InStruct *in = userdata;
+
+  rc = read(in->fd, buffer, sz*nmemb);
+  if(rc < 0) {
+    if(errno == EAGAIN) {
+      errno = 0;
+      in->config->readbusy = TRUE;
+      return CURL_READFUNC_PAUSE;
+    }
+    /* since size_t is unsigned we can't return negative values fine */
+    rc = 0;
+  }
+  in->config->readbusy = FALSE;
+  return (size_t)rc;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_rea.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_rea.h
new file mode 100644
index 0000000..5fbc793
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_rea.h
@@ -0,0 +1,33 @@
+#ifndef HEADER_CURL_TOOL_CB_REA_H
+#define HEADER_CURL_TOOL_CB_REA_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 "tool_setup.h"
+
+/*
+** callback for CURLOPT_READFUNCTION
+*/
+
+size_t tool_read_cb(void *buffer, size_t sz, size_t nmemb, void *userdata);
+
+#endif /* HEADER_CURL_TOOL_CB_REA_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_see.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_see.c
new file mode 100644
index 0000000..621d440
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_see.c
@@ -0,0 +1,131 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_cb_see.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/* OUR_MAX_SEEK_L has 'long' data type, OUR_MAX_SEEK_O has 'curl_off_t,
+   both represent the same value. Maximum offset used here when we lseek
+   using a 'long' data type offset */
+
+#define OUR_MAX_SEEK_L  2147483647L - 1L
+#define OUR_MAX_SEEK_O  CURL_OFF_T_C(0x7FFFFFFF) - CURL_OFF_T_C(0x1)
+
+/*
+** callback for CURLOPT_SEEKFUNCTION
+**
+** Notice that this is not supposed to return the resulting offset. This
+** shall only return CURL_SEEKFUNC_* return codes.
+*/
+
+int tool_seek_cb(void *userdata, curl_off_t offset, int whence)
+{
+  struct InStruct *in = userdata;
+
+#if(CURL_SIZEOF_CURL_OFF_T > SIZEOF_OFF_T) && !defined(USE_WIN32_LARGE_FILES)
+
+  /* The offset check following here is only interesting if curl_off_t is
+     larger than off_t and we are not using the WIN32 large file support
+     macros that provide the support to do 64bit seeks correctly */
+
+  if(offset > OUR_MAX_SEEK_O) {
+    /* Some precaution code to work around problems with different data sizes
+       to allow seeking >32bit even if off_t is 32bit. Should be very rare and
+       is really valid on weirdo-systems. */
+    curl_off_t left = offset;
+
+    if(whence != SEEK_SET)
+      /* this code path doesn't support other types */
+      return CURL_SEEKFUNC_FAIL;
+
+    if(LSEEK_ERROR == lseek(in->fd, 0, SEEK_SET))
+      /* couldn't rewind to beginning */
+      return CURL_SEEKFUNC_FAIL;
+
+    while(left) {
+      long step = (left > OUR_MAX_SEEK_O) ? OUR_MAX_SEEK_L : (long)left;
+      if(LSEEK_ERROR == lseek(in->fd, step, SEEK_CUR))
+        /* couldn't seek forwards the desired amount */
+        return CURL_SEEKFUNC_FAIL;
+      left -= step;
+    }
+    return CURL_SEEKFUNC_OK;
+  }
+#endif
+
+  if(LSEEK_ERROR == lseek(in->fd, offset, whence))
+    /* couldn't rewind, the reason is in errno but errno is just not portable
+       enough and we don't actually care that much why we failed. We'll let
+       libcurl know that it may try other means if it wants to. */
+    return CURL_SEEKFUNC_CANTSEEK;
+
+  return CURL_SEEKFUNC_OK;
+}
+
+#if defined(WIN32) && !defined(__MINGW64__)
+
+#ifdef __BORLANDC__
+/* 64-bit lseek-like function unavailable */
+#  define _lseeki64(hnd,ofs,whence) lseek(hnd,ofs,whence)
+#endif
+
+#ifdef __POCC__
+#  if(__POCC__ < 450)
+/* 64-bit lseek-like function unavailable */
+#    define _lseeki64(hnd,ofs,whence) _lseek(hnd,ofs,whence)
+#  else
+#    define _lseeki64(hnd,ofs,whence) _lseek64(hnd,ofs,whence)
+#  endif
+#endif
+
+#ifdef _WIN32_WCE
+/* 64-bit lseek-like function unavailable */
+#  undef _lseeki64
+#  define _lseeki64(hnd,ofs,whence) lseek(hnd,ofs,whence)
+#  undef _get_osfhandle
+#  define _get_osfhandle(fd) (fd)
+#endif
+
+/*
+ * Truncate a file handle at a 64-bit position 'where'.
+ */
+
+int tool_ftruncate64(int fd, curl_off_t where)
+{
+  if(_lseeki64(fd, where, SEEK_SET) < 0)
+    return -1;
+
+  if(!SetEndOfFile((HANDLE)_get_osfhandle(fd)))
+    return -1;
+
+  return 0;
+}
+
+#endif /* WIN32  && ! __MINGW64__ */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_see.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_see.h
new file mode 100644
index 0000000..b07741d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_see.h
@@ -0,0 +1,46 @@
+#ifndef HEADER_CURL_TOOL_CB_SEE_H
+#define HEADER_CURL_TOOL_CB_SEE_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 "tool_setup.h"
+
+#if defined(WIN32) && !defined(__MINGW64__)
+
+int tool_ftruncate64(int fd, curl_off_t where);
+
+#undef  ftruncate
+#define ftruncate(fd,where) tool_ftruncate64(fd,where)
+
+#ifndef HAVE_FTRUNCATE
+#  define HAVE_FTRUNCATE 1
+#endif
+
+#endif /* WIN32  && ! __MINGW64__ */
+
+/*
+** callback for CURLOPT_SEEKFUNCTION
+*/
+
+int tool_seek_cb(void *userdata, curl_off_t offset, int whence);
+
+#endif /* HEADER_CURL_TOOL_CB_SEE_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_wrt.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_wrt.c
new file mode 100644
index 0000000..6c08943
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_wrt.c
@@ -0,0 +1,159 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_msgs.h"
+#include "tool_cb_wrt.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/* create a local file for writing, return TRUE on success */
+bool tool_create_output_file(struct OutStruct *outs)
+{
+  struct GlobalConfig *global = outs->config->global;
+  FILE *file;
+
+  if(!outs->filename || !*outs->filename) {
+    warnf(global, "Remote filename has no length!\n");
+    return FALSE;
+  }
+
+  if(outs->is_cd_filename) {
+    /* don't overwrite existing files */
+    file = fopen(outs->filename, "rb");
+    if(file) {
+      fclose(file);
+      warnf(global, "Refusing to overwrite %s: %s\n", outs->filename,
+            strerror(EEXIST));
+      return FALSE;
+    }
+  }
+
+  /* open file for writing */
+  file = fopen(outs->filename, "wb");
+  if(!file) {
+    warnf(global, "Failed to create the file %s: %s\n", outs->filename,
+          strerror(errno));
+    return FALSE;
+  }
+  outs->s_isreg = TRUE;
+  outs->fopened = TRUE;
+  outs->stream = file;
+  outs->bytes = 0;
+  outs->init = 0;
+  return TRUE;
+}
+
+/*
+** callback for CURLOPT_WRITEFUNCTION
+*/
+
+size_t tool_write_cb(char *buffer, size_t sz, size_t nmemb, void *userdata)
+{
+  size_t rc;
+  struct OutStruct *outs = userdata;
+  struct OperationConfig *config = outs->config;
+
+  /*
+   * Once that libcurl has called back tool_write_cb() the returned value
+   * is checked against the amount that was intended to be written, if
+   * it does not match then it fails with CURLE_WRITE_ERROR. So at this
+   * point returning a value different from sz*nmemb indicates failure.
+   */
+  const size_t failure = (sz && nmemb) ? 0 : 1;
+
+  if(!config)
+    return failure;
+
+#ifdef DEBUGBUILD
+  if(config->include_headers) {
+    if(sz * nmemb > (size_t)CURL_MAX_HTTP_HEADER) {
+      warnf(config->global, "Header data size exceeds single call write "
+            "limit!\n");
+      return failure;
+    }
+  }
+  else {
+    if(sz * nmemb > (size_t)CURL_MAX_WRITE_SIZE) {
+      warnf(config->global, "Data size exceeds single call write limit!\n");
+      return failure;
+    }
+  }
+
+  {
+    /* Some internal congruency checks on received OutStruct */
+    bool check_fails = FALSE;
+    if(outs->filename) {
+      /* regular file */
+      if(!*outs->filename)
+        check_fails = TRUE;
+      if(!outs->s_isreg)
+        check_fails = TRUE;
+      if(outs->fopened && !outs->stream)
+        check_fails = TRUE;
+      if(!outs->fopened && outs->stream)
+        check_fails = TRUE;
+      if(!outs->fopened && outs->bytes)
+        check_fails = TRUE;
+    }
+    else {
+      /* standard stream */
+      if(!outs->stream || outs->s_isreg || outs->fopened)
+        check_fails = TRUE;
+      if(outs->alloc_filename || outs->is_cd_filename || outs->init)
+        check_fails = TRUE;
+    }
+    if(check_fails) {
+      warnf(config->global, "Invalid output struct data for write callback\n");
+      return failure;
+    }
+  }
+#endif
+
+  if(!outs->stream && !tool_create_output_file(outs))
+    return failure;
+
+  rc = fwrite(buffer, sz, nmemb, outs->stream);
+
+  if((sz * nmemb) == rc)
+    /* we added this amount of data to the output */
+    outs->bytes += (sz * nmemb);
+
+  if(config->readbusy) {
+    config->readbusy = FALSE;
+    curl_easy_pause(config->easy, CURLPAUSE_CONT);
+  }
+
+  if(config->nobuffer) {
+    /* output buffering disabled */
+    int res = fflush(outs->stream);
+    if(res)
+      return failure;
+  }
+
+  return rc;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cb_wrt.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_wrt.h
new file mode 100644
index 0000000..4ccbf3a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cb_wrt.h
@@ -0,0 +1,36 @@
+#ifndef HEADER_CURL_TOOL_CB_WRT_H
+#define HEADER_CURL_TOOL_CB_WRT_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 "tool_setup.h"
+
+/*
+** callback for CURLOPT_WRITEFUNCTION
+*/
+
+size_t tool_write_cb(char *buffer, size_t sz, size_t nmemb, void *userdata);
+
+/* create a local file for writing, return TRUE on success */
+bool tool_create_output_file(struct OutStruct *outs);
+
+#endif /* HEADER_CURL_TOOL_CB_WRT_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cfgable.c b/ap/lib/libcurl/curl-7.54.1/src/tool_cfgable.c
new file mode 100644
index 0000000..f00a0d1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cfgable.c
@@ -0,0 +1,174 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "tool_cfgable.h"
+#include "tool_main.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+void config_init(struct OperationConfig* config)
+{
+  memset(config, 0, sizeof(struct OperationConfig));
+
+  config->postfieldsize = -1;
+  config->use_httpget = FALSE;
+  config->create_dirs = FALSE;
+  config->maxredirs = DEFAULT_MAXREDIRS;
+  config->proto = CURLPROTO_ALL; /* FIXME: better to read from library */
+  config->proto_present = FALSE;
+  config->proto_redir = CURLPROTO_ALL & /* All except FILE, SCP and SMB */
+                        ~(CURLPROTO_FILE | CURLPROTO_SCP | CURLPROTO_SMB |
+                          CURLPROTO_SMBS);
+  config->proto_redir_present = FALSE;
+  config->proto_default = NULL;
+  config->tcp_nodelay = TRUE; /* enabled by default */
+}
+
+static void free_config_fields(struct OperationConfig *config)
+{
+  struct getout *urlnode;
+
+  Curl_safefree(config->random_file);
+  Curl_safefree(config->egd_file);
+  Curl_safefree(config->useragent);
+  Curl_safefree(config->cookie);
+  Curl_safefree(config->cookiejar);
+  Curl_safefree(config->cookiefile);
+
+  Curl_safefree(config->postfields);
+  Curl_safefree(config->referer);
+
+  Curl_safefree(config->headerfile);
+  Curl_safefree(config->ftpport);
+  Curl_safefree(config->iface);
+
+  Curl_safefree(config->range);
+
+  Curl_safefree(config->userpwd);
+  Curl_safefree(config->tls_username);
+  Curl_safefree(config->tls_password);
+  Curl_safefree(config->tls_authtype);
+  Curl_safefree(config->proxy_tls_username);
+  Curl_safefree(config->proxy_tls_password);
+  Curl_safefree(config->proxy_tls_authtype);
+  Curl_safefree(config->proxyuserpwd);
+  Curl_safefree(config->proxy);
+
+  Curl_safefree(config->dns_ipv6_addr);
+  Curl_safefree(config->dns_ipv4_addr);
+  Curl_safefree(config->dns_interface);
+  Curl_safefree(config->dns_servers);
+
+  Curl_safefree(config->noproxy);
+
+  Curl_safefree(config->mail_from);
+  curl_slist_free_all(config->mail_rcpt);
+  Curl_safefree(config->mail_auth);
+
+  Curl_safefree(config->netrc_file);
+
+  urlnode = config->url_list;
+  while(urlnode) {
+    struct getout *next = urlnode->next;
+    Curl_safefree(urlnode->url);
+    Curl_safefree(urlnode->outfile);
+    Curl_safefree(urlnode->infile);
+    Curl_safefree(urlnode);
+    urlnode = next;
+  }
+  config->url_list = NULL;
+  config->url_last = NULL;
+  config->url_get = NULL;
+  config->url_out = NULL;
+
+  Curl_safefree(config->cipher_list);
+  Curl_safefree(config->proxy_cipher_list);
+  Curl_safefree(config->cert);
+  Curl_safefree(config->proxy_cert);
+  Curl_safefree(config->cert_type);
+  Curl_safefree(config->proxy_cert_type);
+  Curl_safefree(config->cacert);
+  Curl_safefree(config->proxy_cacert);
+  Curl_safefree(config->capath);
+  Curl_safefree(config->proxy_capath);
+  Curl_safefree(config->crlfile);
+  Curl_safefree(config->pinnedpubkey);
+  Curl_safefree(config->proxy_crlfile);
+  Curl_safefree(config->key);
+  Curl_safefree(config->proxy_key);
+  Curl_safefree(config->key_type);
+  Curl_safefree(config->proxy_key_type);
+  Curl_safefree(config->key_passwd);
+  Curl_safefree(config->proxy_key_passwd);
+  Curl_safefree(config->pubkey);
+  Curl_safefree(config->hostpubmd5);
+  Curl_safefree(config->engine);
+
+  Curl_safefree(config->customrequest);
+  Curl_safefree(config->krblevel);
+
+  Curl_safefree(config->oauth_bearer);
+
+  Curl_safefree(config->unix_socket_path);
+  Curl_safefree(config->writeout);
+  Curl_safefree(config->proto_default);
+
+  curl_slist_free_all(config->quote);
+  curl_slist_free_all(config->postquote);
+  curl_slist_free_all(config->prequote);
+
+  curl_slist_free_all(config->headers);
+  curl_slist_free_all(config->proxyheaders);
+
+  if(config->httppost) {
+    curl_formfree(config->httppost);
+    config->httppost = NULL;
+  }
+  config->last_post = NULL;
+
+  curl_slist_free_all(config->telnet_options);
+  curl_slist_free_all(config->resolve);
+  curl_slist_free_all(config->connect_to);
+
+  Curl_safefree(config->preproxy);
+  Curl_safefree(config->proxy_service_name);
+  Curl_safefree(config->service_name);
+
+  Curl_safefree(config->ftp_account);
+  Curl_safefree(config->ftp_alternative_to_user);
+}
+
+void config_free(struct OperationConfig *config)
+{
+  struct OperationConfig *last = config;
+
+  /* Free each of the structures in reverse order */
+  while(last) {
+    struct OperationConfig *prev = last->prev;
+
+    free_config_fields(last);
+    free(last);
+
+    last = prev;
+  }
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_cfgable.h b/ap/lib/libcurl/curl-7.54.1/src/tool_cfgable.h
new file mode 100644
index 0000000..38777f6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_cfgable.h
@@ -0,0 +1,270 @@
+#ifndef HEADER_CURL_TOOL_CFGABLE_H
+#define HEADER_CURL_TOOL_CFGABLE_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "tool_sdecls.h"
+
+#include "tool_metalink.h"
+
+struct GlobalConfig;
+
+struct OperationConfig {
+  CURL *easy;               /* A copy of the handle from GlobalConfig */
+  bool remote_time;
+  char *random_file;
+  char *egd_file;
+  char *useragent;
+  char *cookie;             /* single line with specified cookies */
+  char *cookiejar;          /* write to this file */
+  char *cookiefile;         /* read from this file */
+  bool cookiesession;       /* new session? */
+  bool encoding;            /* Accept-Encoding please */
+  bool tr_encoding;         /* Transfer-Encoding please */
+  unsigned long authtype;   /* auth bitmask */
+  bool use_resume;
+  bool resume_from_current;
+  bool disable_epsv;
+  bool disable_eprt;
+  bool ftp_pret;
+  long proto;
+  bool proto_present;
+  long proto_redir;
+  bool proto_redir_present;
+  char *proto_default;
+  curl_off_t resume_from;
+  char *postfields;
+  curl_off_t postfieldsize;
+  char *referer;
+  double timeout;
+  double connecttimeout;
+  long maxredirs;
+  curl_off_t max_filesize;
+  char *headerfile;
+  char *ftpport;
+  char *iface;
+  int localport;
+  int localportrange;
+  unsigned short porttouse;
+  char *range;
+  long low_speed_limit;
+  long low_speed_time;
+  char *dns_servers;   /* dot notation: 1.1.1.1;2.2.2.2 */
+  char *dns_interface; /* interface name */
+  char *dns_ipv4_addr; /* dot notation */
+  char *dns_ipv6_addr; /* dot notation */
+  char *userpwd;
+  char *login_options;
+  char *tls_username;
+  char *tls_password;
+  char *tls_authtype;
+  char *proxy_tls_username;
+  char *proxy_tls_password;
+  char *proxy_tls_authtype;
+  char *proxyuserpwd;
+  char *proxy;
+  int proxyver;             /* set to CURLPROXY_HTTP* define */
+  char *noproxy;
+  char *mail_from;
+  struct curl_slist *mail_rcpt;
+  char *mail_auth;
+  bool sasl_ir;             /* Enable/disable SASL initial response */
+  bool proxytunnel;
+  bool ftp_append;          /* APPE on ftp */
+  bool use_ascii;           /* select ascii or text transfer */
+  bool autoreferer;         /* automatically set referer */
+  bool failonerror;         /* fail on (HTTP) errors */
+  bool include_headers;     /* send headers to data output */
+  bool no_body;             /* don't get the body */
+  bool dirlistonly;         /* only get the FTP dir list */
+  bool followlocation;      /* follow http redirects */
+  bool unrestricted_auth;   /* Continue to send authentication (user+password)
+                               when following ocations, even when hostname
+                               changed */
+  bool netrc_opt;
+  bool netrc;
+  char *netrc_file;
+  struct getout *url_list;  /* point to the first node */
+  struct getout *url_last;  /* point to the last/current node */
+  struct getout *url_get;   /* point to the node to fill in URL */
+  struct getout *url_out;   /* point to the node to fill in outfile */
+  char *cipher_list;
+  char *proxy_cipher_list;
+  char *cert;
+  char *proxy_cert;
+  char *cert_type;
+  char *proxy_cert_type;
+  char *cacert;
+  char *proxy_cacert;
+  char *capath;
+  char *proxy_capath;
+  char *crlfile;
+  char *proxy_crlfile;
+  char *pinnedpubkey;
+  char *key;
+  char *proxy_key;
+  char *key_type;
+  char *proxy_key_type;
+  char *key_passwd;
+  char *proxy_key_passwd;
+  char *pubkey;
+  char *hostpubmd5;
+  char *engine;
+  bool crlf;
+  char *customrequest;
+  char *krblevel;
+  long httpversion;
+  bool nobuffer;
+  bool readbusy;            /* set when reading input returns EAGAIN */
+  bool globoff;
+  bool use_httpget;
+  bool insecure_ok;         /* set TRUE to allow insecure SSL connects */
+  bool proxy_insecure_ok;   /* set TRUE to allow insecure SSL connects
+                               for proxy */
+  bool verifystatus;
+  bool create_dirs;
+  bool ftp_create_dirs;
+  bool ftp_skip_ip;
+  bool proxynegotiate;
+  bool proxyntlm;
+  bool proxydigest;
+  bool proxybasic;
+  bool proxyanyauth;
+  char *writeout;           /* %-styled format string to output */
+  struct curl_slist *quote;
+  struct curl_slist *postquote;
+  struct curl_slist *prequote;
+  long ssl_version;
+  long ssl_version_max;
+  long proxy_ssl_version;
+  long ip_version;
+  curl_TimeCond timecond;
+  time_t condtime;
+  struct curl_slist *headers;
+  struct curl_slist *proxyheaders;
+  struct curl_httppost *httppost;
+  struct curl_httppost *last_post;
+  struct curl_slist *telnet_options;
+  struct curl_slist *resolve;
+  struct curl_slist *connect_to;
+  HttpReq httpreq;
+
+  /* for bandwidth limiting features: */
+  curl_off_t sendpersecond; /* send to peer */
+  curl_off_t recvpersecond; /* receive from peer */
+
+  bool ftp_ssl;
+  bool ftp_ssl_reqd;
+  bool ftp_ssl_control;
+  bool ftp_ssl_ccc;
+  int ftp_ssl_ccc_mode;
+  char *preproxy;
+  int socks5_gssapi_nec;    /* The NEC reference server does not protect the
+                               encryption type exchange */
+  char *proxy_service_name; /* set authentication service name for HTTP and
+                               SOCKS5 proxies */
+  char *service_name;       /* set authentication service name for DIGEST-MD5,
+                               Kerberos 5 and SPNEGO */
+
+  bool tcp_nodelay;
+  bool tcp_fastopen;
+  long req_retry;           /* number of retries */
+  bool retry_connrefused;   /* set connection refused as a transient error */
+  long retry_delay;         /* delay between retries (in seconds) */
+  long retry_maxtime;       /* maximum time to keep retrying */
+
+  char *ftp_account;        /* for ACCT */
+  char *ftp_alternative_to_user;  /* send command if USER/PASS fails */
+  int ftp_filemethod;
+  long tftp_blksize;        /* TFTP BLKSIZE option */
+  bool tftp_no_options;     /* do not send TFTP options requests */
+  bool ignorecl;            /* --ignore-content-length */
+  bool disable_sessionid;
+
+  bool raw;
+  bool post301;
+  bool post302;
+  bool post303;
+  bool nokeepalive;         /* for keepalive needs */
+  long alivetime;
+  bool content_disposition; /* use Content-disposition filename */
+
+  int default_node_flags;   /* default flags to search for each 'node', which
+                               is basically each given URL to transfer */
+
+  bool xattr;               /* store metadata in extended attributes */
+  long gssapi_delegation;
+  bool ssl_allow_beast;     /* allow this SSL vulnerability */
+  bool proxy_ssl_allow_beast; /* allow this SSL vulnerability for proxy*/
+
+  bool ssl_no_revoke;       /* disable SSL certificate revocation checks */
+  /*bool proxy_ssl_no_revoke; */
+
+  bool use_metalink;        /* process given URLs as metalink XML file */
+  metalinkfile *metalinkfile_list; /* point to the first node */
+  metalinkfile *metalinkfile_last; /* point to the last/current node */
+#ifdef CURLDEBUG
+  bool test_event_based;
+#endif
+  char *oauth_bearer;             /* OAuth 2.0 bearer token */
+  bool nonpn;                     /* enable/disable TLS NPN extension */
+  bool noalpn;                    /* enable/disable TLS ALPN extension */
+  char *unix_socket_path;         /* path to Unix domain socket */
+  bool abstract_unix_socket;      /* path to an abstract Unix domain socket */
+  bool falsestart;
+  bool path_as_is;
+  double expect100timeout;
+  bool suppress_connect_headers;  /* suppress proxy CONNECT response headers
+                                     from user callbacks */
+  struct GlobalConfig *global;
+  struct OperationConfig *prev;
+  struct OperationConfig *next;   /* Always last in the struct */
+};
+
+struct GlobalConfig {
+  CURL *easy;                     /* Once we have one, we keep it here */
+  int showerror;                  /* -1 == unset, default => show errors
+                                      0 => -s is used to NOT show errors
+                                      1 => -S has been used to show errors */
+  bool mute;                      /* don't show messages, --silent given */
+  bool noprogress;                /* don't show progress bar --silent given */
+  bool isatty;                    /* Updated internally if output is a tty */
+  FILE *errors;                   /* Error stream, defaults to stderr */
+  bool errors_fopened;            /* Whether error stream isn't stderr */
+  char *trace_dump;               /* file to dump the network trace to */
+  FILE *trace_stream;
+  bool trace_fopened;
+  trace tracetype;
+  bool tracetime;                 /* include timestamp? */
+  int progressmode;               /* CURL_PROGRESS_BAR / CURL_PROGRESS_STATS */
+  char *libcurl;                  /* Output libcurl code to this file name */
+  bool fail_early;                /* exit on first transfer error */
+  struct OperationConfig *first;
+  struct OperationConfig *current;
+  struct OperationConfig *last;   /* Always last in the struct */
+};
+
+void config_init(struct OperationConfig *config);
+void config_free(struct OperationConfig *config);
+
+#endif /* HEADER_CURL_TOOL_CFGABLE_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_convert.c b/ap/lib/libcurl/curl-7.54.1/src/tool_convert.c
new file mode 100644
index 0000000..d0f5dcb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_convert.c
@@ -0,0 +1,150 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef CURL_DOES_CONVERSIONS
+
+#ifdef HAVE_ICONV
+#  include <iconv.h>
+#endif
+
+#include "tool_convert.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef HAVE_ICONV
+
+/* curl tool iconv conversion descriptors */
+static iconv_t inbound_cd  = (iconv_t)-1;
+static iconv_t outbound_cd = (iconv_t)-1;
+
+/* set default codesets for iconv */
+#ifndef CURL_ICONV_CODESET_OF_NETWORK
+#  define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
+#endif
+
+/*
+ * convert_to_network() is a curl tool function to convert
+ * from the host encoding to ASCII on non-ASCII platforms.
+ */
+CURLcode convert_to_network(char *buffer, size_t length)
+{
+  /* translate from the host encoding to the network encoding */
+  char *input_ptr, *output_ptr;
+  size_t res, in_bytes, out_bytes;
+
+  /* open an iconv conversion descriptor if necessary */
+  if(outbound_cd == (iconv_t)-1) {
+    outbound_cd = iconv_open(CURL_ICONV_CODESET_OF_NETWORK,
+                             CURL_ICONV_CODESET_OF_HOST);
+    if(outbound_cd == (iconv_t)-1) {
+      return CURLE_CONV_FAILED;
+    }
+  }
+  /* call iconv */
+  input_ptr = output_ptr = buffer;
+  in_bytes = out_bytes = length;
+  res = iconv(outbound_cd, &input_ptr,  &in_bytes,
+              &output_ptr, &out_bytes);
+  if((res == (size_t)-1) || (in_bytes != 0)) {
+    return CURLE_CONV_FAILED;
+  }
+
+  return CURLE_OK;
+}
+
+/*
+ * convert_from_network() is a curl tool function
+ * for performing ASCII conversions on non-ASCII platforms.
+ */
+CURLcode convert_from_network(char *buffer, size_t length)
+{
+  /* translate from the network encoding to the host encoding */
+  char *input_ptr, *output_ptr;
+  size_t res, in_bytes, out_bytes;
+
+  /* open an iconv conversion descriptor if necessary */
+  if(inbound_cd == (iconv_t)-1) {
+    inbound_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
+                            CURL_ICONV_CODESET_OF_NETWORK);
+    if(inbound_cd == (iconv_t)-1) {
+      return CURLE_CONV_FAILED;
+    }
+  }
+  /* call iconv */
+  input_ptr = output_ptr = buffer;
+  in_bytes = out_bytes = length;
+  res = iconv(inbound_cd, &input_ptr,  &in_bytes,
+              &output_ptr, &out_bytes);
+  if((res == (size_t)-1) || (in_bytes != 0)) {
+    return CURLE_CONV_FAILED;
+  }
+
+  return CURLE_OK;
+}
+
+void convert_cleanup(void)
+{
+  /* close iconv conversion descriptors */
+  if(inbound_cd != (iconv_t)-1)
+    (void)iconv_close(inbound_cd);
+  if(outbound_cd != (iconv_t)-1)
+    (void)iconv_close(outbound_cd);
+}
+
+#endif /* HAVE_ICONV */
+
+char convert_char(curl_infotype infotype, char this_char)
+{
+/* determine how this specific character should be displayed */
+  switch(infotype) {
+  case CURLINFO_DATA_IN:
+  case CURLINFO_DATA_OUT:
+  case CURLINFO_SSL_DATA_IN:
+  case CURLINFO_SSL_DATA_OUT:
+    /* data, treat as ASCII */
+    if((this_char >= 0x20) && (this_char < 0x7f)) {
+      /* printable ASCII hex value: convert to host encoding */
+      (void)convert_from_network(&this_char, 1);
+    }
+    else {
+      /* non-printable ASCII, use a replacement character */
+      return UNPRINTABLE_CHAR;
+    }
+    /* fall through to default */
+  default:
+    /* treat as host encoding */
+    if(ISPRINT(this_char)
+       &&  (this_char != '\t')
+       &&  (this_char != '\r')
+       &&  (this_char != '\n')) {
+      /* printable characters excluding tabs and line end characters */
+      return this_char;
+    }
+    break;
+  }
+  /* non-printable, use a replacement character  */
+  return UNPRINTABLE_CHAR;
+}
+
+#endif /* CURL_DOES_CONVERSIONS */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_convert.h b/ap/lib/libcurl/curl-7.54.1/src/tool_convert.h
new file mode 100644
index 0000000..d1b1d23
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_convert.h
@@ -0,0 +1,45 @@
+#ifndef HEADER_CURL_TOOL_CONVERT_H
+#define HEADER_CURL_TOOL_CONVERT_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 "tool_setup.h"
+
+#ifdef CURL_DOES_CONVERSIONS
+
+#ifdef HAVE_ICONV
+
+CURLcode convert_to_network(char *buffer, size_t length);
+CURLcode convert_from_network(char *buffer, size_t length);
+void convert_cleanup(void);
+
+#endif /* HAVE_ICONV */
+
+char convert_char(curl_infotype infotype, char this_char);
+
+#endif /* CURL_DOES_CONVERSIONS */
+
+#if !defined(CURL_DOES_CONVERSIONS) || !defined(HAVE_ICONV)
+#define convert_cleanup() Curl_nop_stmt
+#endif
+
+#endif /* HEADER_CURL_TOOL_CONVERT_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_dirhie.c b/ap/lib/libcurl/curl-7.54.1/src/tool_dirhie.c
new file mode 100644
index 0000000..23bb2cb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_dirhie.c
@@ -0,0 +1,158 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include <sys/stat.h>
+
+#ifdef WIN32
+#  include <direct.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_dirhie.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef NETWARE
+#  ifndef __NOVELL_LIBC__
+#    define mkdir mkdir_510
+#  endif
+#endif
+
+#ifdef WIN32
+#  define mkdir(x,y) (mkdir)((x))
+#  ifndef __POCC__
+#    define F_OK 0
+#  endif
+#endif
+
+static void show_dir_errno(FILE *errors, const char *name)
+{
+  switch(ERRNO) {
+#ifdef EACCES
+  case EACCES:
+    fprintf(errors, "You don't have permission to create %s.\n", name);
+    break;
+#endif
+#ifdef ENAMETOOLONG
+  case ENAMETOOLONG:
+    fprintf(errors, "The directory name %s is too long.\n", name);
+    break;
+#endif
+#ifdef EROFS
+  case EROFS:
+    fprintf(errors, "%s resides on a read-only file system.\n", name);
+    break;
+#endif
+#ifdef ENOSPC
+  case ENOSPC:
+    fprintf(errors, "No space left on the file system that will "
+            "contain the directory %s.\n", name);
+    break;
+#endif
+#ifdef EDQUOT
+  case EDQUOT:
+    fprintf(errors, "Cannot create directory %s because you "
+            "exceeded your quota.\n", name);
+    break;
+#endif
+  default :
+    fprintf(errors, "Error creating directory %s.\n", name);
+    break;
+  }
+}
+
+/*
+ * Create the needed directory hierarchy recursively in order to save
+ *  multi-GETs in file output, ie:
+ *  curl "http://my.site/dir[1-5]/file[1-5].txt" -o "dir#1/file#2.txt"
+ *  should create all the dir* automagically
+ */
+
+#ifdef WIN32
+/* systems that may use either or when specifying a path */
+#define PATH_DELIMITERS "\\/"
+#else
+#define PATH_DELIMITERS DIR_CHAR
+#endif
+
+
+CURLcode create_dir_hierarchy(const char *outfile, FILE *errors)
+{
+  char *tempdir;
+  char *tempdir2;
+  char *outdup;
+  char *dirbuildup;
+  CURLcode result = CURLE_OK;
+  size_t outlen;
+
+  outlen = strlen(outfile);
+  outdup = strdup(outfile);
+  if(!outdup)
+    return CURLE_OUT_OF_MEMORY;
+
+  dirbuildup = malloc(outlen + 1);
+  if(!dirbuildup) {
+    Curl_safefree(outdup);
+    return CURLE_OUT_OF_MEMORY;
+  }
+  dirbuildup[0] = '\0';
+
+  /* Allow strtok() here since this isn't used threaded */
+  /* !checksrc! disable BANNEDFUNC 2 */
+  tempdir = strtok(outdup, PATH_DELIMITERS);
+
+  while(tempdir != NULL) {
+    tempdir2 = strtok(NULL, PATH_DELIMITERS);
+    /* since strtok returns a token for the last word even
+       if not ending with DIR_CHAR, we need to prune it */
+    if(tempdir2 != NULL) {
+      size_t dlen = strlen(dirbuildup);
+      if(dlen)
+        snprintf(&dirbuildup[dlen], outlen - dlen, "%s%s", DIR_CHAR, tempdir);
+      else {
+        if(outdup == tempdir)
+          /* the output string doesn't start with a separator */
+          strcpy(dirbuildup, tempdir);
+        else
+          snprintf(dirbuildup, outlen, "%s%s", DIR_CHAR, tempdir);
+      }
+      if(access(dirbuildup, F_OK) == -1) {
+        if(-1 == mkdir(dirbuildup, (mode_t)0000750)) {
+          show_dir_errno(errors, dirbuildup);
+          result = CURLE_WRITE_ERROR;
+          break; /* get out of loop */
+        }
+      }
+    }
+    tempdir = tempdir2;
+  }
+
+  Curl_safefree(dirbuildup);
+  Curl_safefree(outdup);
+
+  return result;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_dirhie.h b/ap/lib/libcurl/curl-7.54.1/src/tool_dirhie.h
new file mode 100644
index 0000000..cc67687
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_dirhie.h
@@ -0,0 +1,29 @@
+#ifndef HEADER_CURL_TOOL_DIRHIE_H
+#define HEADER_CURL_TOOL_DIRHIE_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 "tool_setup.h"
+
+CURLcode create_dir_hierarchy(const char *outfile, FILE *errors);
+
+#endif /* HEADER_CURL_TOOL_DIRHIE_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_doswin.c b/ap/lib/libcurl/curl-7.54.1/src/tool_doswin.c
new file mode 100644
index 0000000..9129998
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_doswin.c
@@ -0,0 +1,668 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#if defined(MSDOS) || defined(WIN32)
+
+#if defined(HAVE_LIBGEN_H) && defined(HAVE_BASENAME)
+#  include <libgen.h>
+#endif
+
+#ifdef WIN32
+#  include "tool_cfgable.h"
+#  include "tool_libinfo.h"
+#endif
+
+#include "tool_bname.h"
+#include "tool_doswin.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/*
+ * Macros ALWAYS_TRUE and ALWAYS_FALSE are used to avoid compiler warnings.
+ */
+
+#define ALWAYS_TRUE   (1)
+#define ALWAYS_FALSE  (0)
+
+#if defined(_MSC_VER) && !defined(__POCC__)
+#  undef ALWAYS_TRUE
+#  undef ALWAYS_FALSE
+#  if (_MSC_VER < 1500)
+#    define ALWAYS_TRUE   (0, 1)
+#    define ALWAYS_FALSE  (1, 0)
+#  else
+#    define ALWAYS_TRUE \
+__pragma(warning(push)) \
+__pragma(warning(disable:4127)) \
+(1) \
+__pragma(warning(pop))
+#    define ALWAYS_FALSE \
+__pragma(warning(push)) \
+__pragma(warning(disable:4127)) \
+(0) \
+__pragma(warning(pop))
+#  endif
+#endif
+
+#ifdef WIN32
+#  undef  PATH_MAX
+#  define PATH_MAX MAX_PATH
+#endif
+
+#ifndef S_ISCHR
+#  ifdef S_IFCHR
+#    define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
+#  else
+#    define S_ISCHR(m) (0) /* cannot tell if file is a device */
+#  endif
+#endif
+
+#ifdef WIN32
+#  define _use_lfn(f) ALWAYS_TRUE   /* long file names always available */
+#elif !defined(__DJGPP__) || (__DJGPP__ < 2)  /* DJGPP 2.0 has _use_lfn() */
+#  define _use_lfn(f) ALWAYS_FALSE  /* long file names never available */
+#elif defined(__DJGPP__)
+#  include <fcntl.h>                /* _use_lfn(f) prototype */
+#endif
+
+#ifndef UNITTESTS
+static SANITIZEcode truncate_dryrun(const char *path,
+                                    const size_t truncate_pos);
+#ifdef MSDOS
+static SANITIZEcode msdosify(char **const sanitized, const char *file_name,
+                             int flags);
+#endif
+static SANITIZEcode rename_if_reserved_dos_device_name(char **const sanitized,
+                                                       const char *file_name,
+                                                       int flags);
+#endif /* !UNITTESTS (static declarations used if no unit tests) */
+
+
+/*
+Sanitize a file or path name.
+
+All banned characters are replaced by underscores, for example:
+f?*foo => f__foo
+f:foo::$DATA => f_foo__$DATA
+f:\foo:bar => f__foo_bar
+f:\foo:bar => f:\foo:bar   (flag SANITIZE_ALLOW_PATH)
+
+This function was implemented according to the guidelines in 'Naming Files,
+Paths, and Namespaces' section 'Naming Conventions'.
+https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247.aspx
+
+Flags
+-----
+SANITIZE_ALLOW_COLONS:     Allow colons.
+Without this flag colons are sanitized.
+
+SANITIZE_ALLOW_PATH:       Allow path separators and colons.
+Without this flag path separators and colons are sanitized.
+
+SANITIZE_ALLOW_RESERVED:   Allow reserved device names.
+Without this flag a reserved device name is renamed (COM1 => _COM1) unless it's
+in a UNC prefixed path.
+
+SANITIZE_ALLOW_TRUNCATE:   Allow truncating a long filename.
+Without this flag if the sanitized filename or path will be too long an error
+occurs. With this flag the filename --and not any other parts of the path-- may
+be truncated to at least a single character. A filename followed by an
+alternate data stream (ADS) cannot be truncated in any case.
+
+Success: (SANITIZE_ERR_OK) *sanitized points to a sanitized copy of file_name.
+Failure: (!= SANITIZE_ERR_OK) *sanitized is NULL.
+*/
+SANITIZEcode sanitize_file_name(char **const sanitized, const char *file_name,
+                                int flags)
+{
+  char *p, *target;
+  size_t len;
+  SANITIZEcode sc;
+  size_t max_sanitized_len;
+
+  if(!sanitized)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  *sanitized = NULL;
+
+  if(!file_name)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  if((flags & SANITIZE_ALLOW_PATH)) {
+#ifndef MSDOS
+    if(file_name[0] == '\\' && file_name[1] == '\\')
+      /* UNC prefixed path \\ (eg \\?\C:\foo) */
+      max_sanitized_len = 32767-1;
+    else
+#endif
+      max_sanitized_len = PATH_MAX-1;
+  }
+  else
+    /* The maximum length of a filename.
+       FILENAME_MAX is often the same as PATH_MAX, in other words it is 260 and
+       does not discount the path information therefore we shouldn't use it. */
+    max_sanitized_len = (PATH_MAX-1 > 255) ? 255 : PATH_MAX-1;
+
+  len = strlen(file_name);
+  if(len > max_sanitized_len) {
+    if(!(flags & SANITIZE_ALLOW_TRUNCATE) ||
+       truncate_dryrun(file_name, max_sanitized_len))
+      return SANITIZE_ERR_INVALID_PATH;
+
+    len = max_sanitized_len;
+  }
+
+  target = malloc(len + 1);
+  if(!target)
+    return SANITIZE_ERR_OUT_OF_MEMORY;
+
+  strncpy(target, file_name, len);
+  target[len] = '\0';
+
+#ifndef MSDOS
+  if((flags & SANITIZE_ALLOW_PATH) && !strncmp(target, "\\\\?\\", 4))
+    /* Skip the literal path prefix \\?\ */
+    p = target + 4;
+  else
+#endif
+    p = target;
+
+  /* replace control characters and other banned characters */
+  for(; *p; ++p) {
+    const char *banned;
+
+    if((1 <= *p && *p <= 31) ||
+       (!(flags & (SANITIZE_ALLOW_COLONS|SANITIZE_ALLOW_PATH)) && *p == ':') ||
+       (!(flags & SANITIZE_ALLOW_PATH) && (*p == '/' || *p == '\\'))) {
+      *p = '_';
+      continue;
+    }
+
+    for(banned = "|<>\"?*"; *banned; ++banned) {
+      if(*p == *banned) {
+        *p = '_';
+        break;
+      }
+    }
+  }
+
+  /* remove trailing spaces and periods if not allowing paths */
+  if(!(flags & SANITIZE_ALLOW_PATH) && len) {
+    char *clip = NULL;
+
+    p = &target[len];
+    do {
+      --p;
+      if(*p != ' ' && *p != '.')
+        break;
+      clip = p;
+    } while(p != target);
+
+    if(clip) {
+      *clip = '\0';
+      len = clip - target;
+    }
+  }
+
+#ifdef MSDOS
+  sc = msdosify(&p, target, flags);
+  free(target);
+  if(sc)
+    return sc;
+  target = p;
+  len = strlen(target);
+
+  if(len > max_sanitized_len) {
+    free(target);
+    return SANITIZE_ERR_INVALID_PATH;
+  }
+#endif
+
+  if(!(flags & SANITIZE_ALLOW_RESERVED)) {
+    sc = rename_if_reserved_dos_device_name(&p, target, flags);
+    free(target);
+    if(sc)
+      return sc;
+    target = p;
+    len = strlen(target);
+
+    if(len > max_sanitized_len) {
+      free(target);
+      return SANITIZE_ERR_INVALID_PATH;
+    }
+  }
+
+  *sanitized = target;
+  return SANITIZE_ERR_OK;
+}
+
+
+/*
+Test if truncating a path to a file will leave at least a single character in
+the filename. Filenames suffixed by an alternate data stream can't be
+truncated. This performs a dry run, nothing is modified.
+
+Good truncate_pos 9:    C:\foo\bar  =>  C:\foo\ba
+Good truncate_pos 6:    C:\foo      =>  C:\foo
+Good truncate_pos 5:    C:\foo      =>  C:\fo
+Bad* truncate_pos 5:    C:foo       =>  C:foo
+Bad truncate_pos 5:     C:\foo:ads  =>  C:\fo
+Bad truncate_pos 9:     C:\foo:ads  =>  C:\foo:ad
+Bad truncate_pos 5:     C:\foo\bar  =>  C:\fo
+Bad truncate_pos 5:     C:\foo\     =>  C:\fo
+Bad truncate_pos 7:     C:\foo\     =>  C:\foo\
+Error truncate_pos 7:   C:\foo      =>  (pos out of range)
+Bad truncate_pos 1:     C:\foo\     =>  C
+
+* C:foo is ambiguous, C could end up being a drive or file therefore something
+  like C:superlongfilename can't be truncated.
+
+Returns
+SANITIZE_ERR_OK: Good -- 'path' can be truncated
+SANITIZE_ERR_INVALID_PATH: Bad -- 'path' cannot be truncated
+!= SANITIZE_ERR_OK && != SANITIZE_ERR_INVALID_PATH: Error
+*/
+SANITIZEcode truncate_dryrun(const char *path, const size_t truncate_pos)
+{
+  size_t len;
+
+  if(!path)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  len = strlen(path);
+
+  if(truncate_pos > len)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  if(!len || !truncate_pos)
+    return SANITIZE_ERR_INVALID_PATH;
+
+  if(strpbrk(&path[truncate_pos - 1], "\\/:"))
+    return SANITIZE_ERR_INVALID_PATH;
+
+  /* C:\foo can be truncated but C:\foo:ads can't */
+  if(truncate_pos > 1) {
+    const char *p = &path[truncate_pos - 1];
+    do {
+      --p;
+      if(*p == ':')
+        return SANITIZE_ERR_INVALID_PATH;
+    } while(p != path && *p != '\\' && *p != '/');
+  }
+
+  return SANITIZE_ERR_OK;
+}
+
+/* The functions msdosify, rename_if_dos_device_name and __crt0_glob_function
+ * were taken with modification from the DJGPP port of tar 1.12. They use
+ * algorithms originally from DJTAR.
+ */
+
+/*
+Extra sanitization MSDOS for file_name.
+
+This is a supporting function for sanitize_file_name.
+
+Warning: This is an MSDOS legacy function and was purposely written in a way
+that some path information may pass through. For example drive letter names
+(C:, D:, etc) are allowed to pass through. For sanitizing a filename use
+sanitize_file_name.
+
+Success: (SANITIZE_ERR_OK) *sanitized points to a sanitized copy of file_name.
+Failure: (!= SANITIZE_ERR_OK) *sanitized is NULL.
+*/
+#if defined(MSDOS) || defined(UNITTESTS)
+SANITIZEcode msdosify(char **const sanitized, const char *file_name,
+                      int flags)
+{
+  char dos_name[PATH_MAX];
+  static const char illegal_chars_dos[] = ".+, ;=[]" /* illegal in DOS */
+    "|<>/\\\":?*"; /* illegal in DOS & W95 */
+  static const char *illegal_chars_w95 = &illegal_chars_dos[8];
+  int idx, dot_idx;
+  const char *s = file_name;
+  char *d = dos_name;
+  const char *const dlimit = dos_name + sizeof(dos_name) - 1;
+  const char *illegal_aliens = illegal_chars_dos;
+  size_t len = sizeof(illegal_chars_dos) - 1;
+
+  if(!sanitized)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  *sanitized = NULL;
+
+  if(!file_name)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  if(strlen(file_name) > PATH_MAX-1 &&
+     (!(flags & SANITIZE_ALLOW_TRUNCATE) ||
+      truncate_dryrun(file_name, PATH_MAX-1)))
+    return SANITIZE_ERR_INVALID_PATH;
+
+  /* Support for Windows 9X VFAT systems, when available. */
+  if(_use_lfn(file_name)) {
+    illegal_aliens = illegal_chars_w95;
+    len -= (illegal_chars_w95 - illegal_chars_dos);
+  }
+
+  /* Get past the drive letter, if any. */
+  if(s[0] >= 'A' && s[0] <= 'z' && s[1] == ':') {
+    *d++ = *s++;
+    *d = ((flags & (SANITIZE_ALLOW_COLONS|SANITIZE_ALLOW_PATH))) ? ':' : '_';
+    ++d, ++s;
+  }
+
+  for(idx = 0, dot_idx = -1; *s && d < dlimit; s++, d++) {
+    if(memchr(illegal_aliens, *s, len)) {
+
+      if((flags & (SANITIZE_ALLOW_COLONS|SANITIZE_ALLOW_PATH)) && *s == ':')
+        *d = ':';
+      else if((flags & SANITIZE_ALLOW_PATH) && (*s == '/' || *s == '\\'))
+        *d = *s;
+      /* Dots are special: DOS doesn't allow them as the leading character,
+         and a file name cannot have more than a single dot.  We leave the
+         first non-leading dot alone, unless it comes too close to the
+         beginning of the name: we want sh.lex.c to become sh_lex.c, not
+         sh.lex-c.  */
+      else if(*s == '.') {
+        if((flags & SANITIZE_ALLOW_PATH) && idx == 0 &&
+           (s[1] == '/' || s[1] == '\\' ||
+            (s[1] == '.' && (s[2] == '/' || s[2] == '\\')))) {
+          /* Copy "./" and "../" verbatim.  */
+          *d++ = *s++;
+          if(d == dlimit)
+            break;
+          if(*s == '.') {
+            *d++ = *s++;
+            if(d == dlimit)
+              break;
+          }
+          *d = *s;
+        }
+        else if(idx == 0)
+          *d = '_';
+        else if(dot_idx >= 0) {
+          if(dot_idx < 5) { /* 5 is a heuristic ad-hoc'ery */
+            d[dot_idx - idx] = '_'; /* replace previous dot */
+            *d = '.';
+          }
+          else
+            *d = '-';
+        }
+        else
+          *d = '.';
+
+        if(*s == '.')
+          dot_idx = idx;
+      }
+      else if(*s == '+' && s[1] == '+') {
+        if(idx - 2 == dot_idx) { /* .c++, .h++ etc. */
+          *d++ = 'x';
+          if(d == dlimit)
+            break;
+          *d   = 'x';
+        }
+        else {
+          /* libg++ etc.  */
+          if(dlimit - d < 4) {
+            *d++ = 'x';
+            if(d == dlimit)
+              break;
+            *d   = 'x';
+          }
+          else {
+            memcpy(d, "plus", 4);
+            d += 3;
+          }
+        }
+        s++;
+        idx++;
+      }
+      else
+        *d = '_';
+    }
+    else
+      *d = *s;
+    if(*s == '/' || *s == '\\') {
+      idx = 0;
+      dot_idx = -1;
+    }
+    else
+      idx++;
+  }
+  *d = '\0';
+
+  if(*s) {
+    /* dos_name is truncated, check that truncation requirements are met,
+       specifically truncating a filename suffixed by an alternate data stream
+       or truncating the entire filename is not allowed. */
+    if(!(flags & SANITIZE_ALLOW_TRUNCATE) || strpbrk(s, "\\/:") ||
+       truncate_dryrun(dos_name, d - dos_name))
+      return SANITIZE_ERR_INVALID_PATH;
+  }
+
+  *sanitized = strdup(dos_name);
+  return (*sanitized ? SANITIZE_ERR_OK : SANITIZE_ERR_OUT_OF_MEMORY);
+}
+#endif /* MSDOS || UNITTESTS */
+
+/*
+Rename file_name if it's a reserved dos device name.
+
+This is a supporting function for sanitize_file_name.
+
+Warning: This is an MSDOS legacy function and was purposely written in a way
+that some path information may pass through. For example drive letter names
+(C:, D:, etc) are allowed to pass through. For sanitizing a filename use
+sanitize_file_name.
+
+Success: (SANITIZE_ERR_OK) *sanitized points to a sanitized copy of file_name.
+Failure: (!= SANITIZE_ERR_OK) *sanitized is NULL.
+*/
+SANITIZEcode rename_if_reserved_dos_device_name(char **const sanitized,
+                                                const char *file_name,
+                                                int flags)
+{
+  /* We could have a file whose name is a device on MS-DOS.  Trying to
+   * retrieve such a file would fail at best and wedge us at worst.  We need
+   * to rename such files. */
+  char *p, *base;
+  char fname[PATH_MAX];
+#ifdef MSDOS
+  struct_stat st_buf;
+#endif
+
+  if(!sanitized)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  *sanitized = NULL;
+
+  if(!file_name)
+    return SANITIZE_ERR_BAD_ARGUMENT;
+
+  /* Ignore UNC prefixed paths, they are allowed to contain a reserved name. */
+#ifndef MSDOS
+  if((flags & SANITIZE_ALLOW_PATH) &&
+     file_name[0] == '\\' && file_name[1] == '\\') {
+    size_t len = strlen(file_name);
+    *sanitized = malloc(len + 1);
+    if(!*sanitized)
+      return SANITIZE_ERR_OUT_OF_MEMORY;
+    strncpy(*sanitized, file_name, len + 1);
+    return SANITIZE_ERR_OK;
+  }
+#endif
+
+  if(strlen(file_name) > PATH_MAX-1 &&
+     (!(flags & SANITIZE_ALLOW_TRUNCATE) ||
+      truncate_dryrun(file_name, PATH_MAX-1)))
+    return SANITIZE_ERR_INVALID_PATH;
+
+  strncpy(fname, file_name, PATH_MAX-1);
+  fname[PATH_MAX-1] = '\0';
+  base = basename(fname);
+
+  /* Rename reserved device names that are known to be accessible without \\.\
+     Examples: CON => _CON, CON.EXT => CON_EXT, CON:ADS => CON_ADS
+     https://support.microsoft.com/en-us/kb/74496
+     https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247.aspx
+     */
+  for(p = fname; p; p = (p == fname && fname != base ? base : NULL)) {
+    size_t p_len;
+    int x = (curl_strnequal(p, "CON", 3) ||
+             curl_strnequal(p, "PRN", 3) ||
+             curl_strnequal(p, "AUX", 3) ||
+             curl_strnequal(p, "NUL", 3)) ? 3 :
+            (curl_strnequal(p, "CLOCK$", 6)) ? 6 :
+            (curl_strnequal(p, "COM", 3) || curl_strnequal(p, "LPT", 3)) ?
+              (('1' <= p[3] && p[3] <= '9') ? 4 : 3) : 0;
+
+    if(!x)
+      continue;
+
+    /* the devices may be accessible with an extension or ADS, for
+       example CON.AIR and 'CON . AIR' and CON:AIR access console */
+
+    for(; p[x] == ' '; ++x)
+      ;
+
+    if(p[x] == '.') {
+      p[x] = '_';
+      continue;
+    }
+    else if(p[x] == ':') {
+      if(!(flags & (SANITIZE_ALLOW_COLONS|SANITIZE_ALLOW_PATH))) {
+        p[x] = '_';
+        continue;
+      }
+      ++x;
+    }
+    else if(p[x]) /* no match */
+      continue;
+
+    /* p points to 'CON' or 'CON ' or 'CON:', etc */
+    p_len = strlen(p);
+
+    /* Prepend a '_' */
+    if(strlen(fname) == PATH_MAX-1) {
+      --p_len;
+      if(!(flags & SANITIZE_ALLOW_TRUNCATE) || truncate_dryrun(p, p_len))
+        return SANITIZE_ERR_INVALID_PATH;
+      p[p_len] = '\0';
+    }
+    memmove(p + 1, p, p_len + 1);
+    p[0] = '_';
+    ++p_len;
+
+    /* if fname was just modified then the basename pointer must be updated */
+    if(p == fname)
+      base = basename(fname);
+  }
+
+  /* This is the legacy portion from rename_if_dos_device_name that checks for
+     reserved device names. It only works on MSDOS. On Windows XP the stat
+     check errors with EINVAL if the device name is reserved. On Windows
+     Vista/7/8 it sets mode S_IFREG (regular file or device). According to MSDN
+     stat doc the latter behavior is correct, but that doesn't help us identify
+     whether it's a reserved device name and not a regular file name. */
+#ifdef MSDOS
+  if(base && ((stat(base, &st_buf)) == 0) && (S_ISCHR(st_buf.st_mode))) {
+    /* Prepend a '_' */
+    size_t blen = strlen(base);
+    if(blen) {
+      if(strlen(fname) == PATH_MAX-1) {
+        --blen;
+        if(!(flags & SANITIZE_ALLOW_TRUNCATE) || truncate_dryrun(base, blen))
+          return SANITIZE_ERR_INVALID_PATH;
+        base[blen] = '\0';
+      }
+      memmove(base + 1, base, blen + 1);
+      base[0] = '_';
+      ++blen;
+    }
+  }
+#endif
+
+  *sanitized = strdup(fname);
+  return (*sanitized ? SANITIZE_ERR_OK : SANITIZE_ERR_OUT_OF_MEMORY);
+}
+
+#if defined(MSDOS) && (defined(__DJGPP__) || defined(__GO32__))
+
+/*
+ * Disable program default argument globbing. We do it on our own.
+ */
+char **__crt0_glob_function(char *arg)
+{
+  (void)arg;
+  return (char **)0;
+}
+
+#endif /* MSDOS && (__DJGPP__ || __GO32__) */
+
+#ifdef WIN32
+
+/*
+ * Function to find CACert bundle on a Win32 platform using SearchPath.
+ * (SearchPath is already declared via inclusions done in setup header file)
+ * (Use the ASCII version instead of the unicode one!)
+ * The order of the directories it searches is:
+ *  1. application's directory
+ *  2. current working directory
+ *  3. Windows System directory (e.g. C:\windows\system32)
+ *  4. Windows Directory (e.g. C:\windows)
+ *  5. all directories along %PATH%
+ *
+ * For WinXP and later search order actually depends on registry value:
+ * HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\SafeProcessSearchMode
+ */
+
+CURLcode FindWin32CACert(struct OperationConfig *config,
+                         const char *bundle_file)
+{
+  CURLcode result = CURLE_OK;
+
+  /* search and set cert file only if libcurl supports SSL */
+  if(curlinfo->features & CURL_VERSION_SSL) {
+
+    DWORD res_len;
+    char buf[PATH_MAX];
+    char *ptr = NULL;
+
+    buf[0] = '\0';
+
+    res_len = SearchPathA(NULL, bundle_file, NULL, PATH_MAX, buf, &ptr);
+    if(res_len > 0) {
+      Curl_safefree(config->cacert);
+      config->cacert = strdup(buf);
+      if(!config->cacert)
+        result = CURLE_OUT_OF_MEMORY;
+    }
+  }
+
+  return result;
+}
+
+#endif /* WIN32 */
+
+#endif /* MSDOS || WIN32 */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_doswin.h b/ap/lib/libcurl/curl-7.54.1/src/tool_doswin.h
new file mode 100644
index 0000000..f649ef0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_doswin.h
@@ -0,0 +1,68 @@
+#ifndef HEADER_CURL_TOOL_DOSWIN_H
+#define HEADER_CURL_TOOL_DOSWIN_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 "tool_setup.h"
+
+#if defined(MSDOS) || defined(WIN32)
+
+#define SANITIZE_ALLOW_COLONS    (1<<0)  /* Allow colons */
+#define SANITIZE_ALLOW_PATH      (1<<1)  /* Allow path separators and colons */
+#define SANITIZE_ALLOW_RESERVED  (1<<2)  /* Allow reserved device names */
+#define SANITIZE_ALLOW_TRUNCATE  (1<<3)  /* Allow truncating a long filename */
+
+typedef enum {
+  SANITIZE_ERR_OK = 0,           /* 0 - OK */
+  SANITIZE_ERR_INVALID_PATH,     /* 1 - the path is invalid */
+  SANITIZE_ERR_BAD_ARGUMENT,     /* 2 - bad function parameter */
+  SANITIZE_ERR_OUT_OF_MEMORY,    /* 3 - out of memory */
+  SANITIZE_ERR_LAST /* never use! */
+} SANITIZEcode;
+
+SANITIZEcode sanitize_file_name(char **const sanitized, const char *file_name,
+                                int flags);
+#ifdef UNITTESTS
+SANITIZEcode truncate_dryrun(const char *path, const size_t truncate_pos);
+SANITIZEcode msdosify(char **const sanitized, const char *file_name,
+                      int flags);
+SANITIZEcode rename_if_reserved_dos_device_name(char **const sanitized,
+                                                const char *file_name,
+                                                int flags);
+#endif /* UNITTESTS */
+
+#if defined(MSDOS) && (defined(__DJGPP__) || defined(__GO32__))
+
+char **__crt0_glob_function(char *arg);
+
+#endif /* MSDOS && (__DJGPP__ || __GO32__) */
+
+#ifdef WIN32
+
+CURLcode FindWin32CACert(struct OperationConfig *config,
+                         const char *bundle_file);
+
+#endif /* WIN32 */
+
+#endif /* MSDOS || WIN32 */
+
+#endif /* HEADER_CURL_TOOL_DOSWIN_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_easysrc.c b/ap/lib/libcurl/curl-7.54.1/src/tool_easysrc.c
new file mode 100644
index 0000000..c2dccf9
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_easysrc.c
@@ -0,0 +1,236 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+#include "slist_wc.h"
+
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_easysrc.h"
+#include "tool_msgs.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/* global variable definitions, for easy-interface source code generation */
+
+struct slist_wc *easysrc_decl = NULL; /* Variable declarations */
+struct slist_wc *easysrc_data = NULL; /* Build slists, forms etc. */
+struct slist_wc *easysrc_code = NULL; /* Setopt calls */
+struct slist_wc *easysrc_toohard = NULL; /* Unconvertible setopt */
+struct slist_wc *easysrc_clean = NULL;  /* Clean up allocated data */
+int easysrc_form_count = 0;
+int easysrc_slist_count = 0;
+
+static const char *const srchead[]={
+  "/********* 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;",
+  NULL
+};
+/* easysrc_decl declarations come here */
+/* easysrc_data initialisations come here */
+/* easysrc_code statements come here */
+static const char *const srchard[]={
+  "/* Here is a list of options the curl code used that cannot get generated",
+  "   as source easily. You may select to either not use them or implement",
+  "   them yourself.",
+  "",
+  NULL
+};
+static const char *const srcend[]={
+  "",
+  "  return (int)ret;",
+  "}",
+  "/**** End of sample code ****/",
+  NULL
+};
+
+/* Clean up all source code if we run out of memory */
+static void easysrc_free(void)
+{
+  slist_wc_free_all(easysrc_decl);
+  easysrc_decl = NULL;
+  slist_wc_free_all(easysrc_data);
+  easysrc_data = NULL;
+  slist_wc_free_all(easysrc_code);
+  easysrc_code = NULL;
+  slist_wc_free_all(easysrc_toohard);
+  easysrc_toohard = NULL;
+  slist_wc_free_all(easysrc_clean);
+  easysrc_clean = NULL;
+}
+
+/* Add a source line to the main code or remarks */
+CURLcode easysrc_add(struct slist_wc **plist, const char *line)
+{
+  CURLcode ret = CURLE_OK;
+  struct slist_wc *list = slist_wc_append(*plist, line);
+  if(!list) {
+    easysrc_free();
+    ret = CURLE_OUT_OF_MEMORY;
+  }
+  else
+    *plist = list;
+  return ret;
+}
+
+CURLcode easysrc_addf(struct slist_wc **plist, const char *fmt, ...)
+{
+  CURLcode ret;
+  char *bufp;
+  va_list ap;
+  va_start(ap, fmt);
+  bufp = curlx_mvaprintf(fmt, ap);
+  va_end(ap);
+  if(! bufp) {
+    ret = CURLE_OUT_OF_MEMORY;
+  }
+  else {
+    ret = easysrc_add(plist, bufp);
+    curl_free(bufp);
+  }
+  return ret;
+}
+
+#define CHKRET(v) do {CURLcode ret = (v); if(ret) return ret;} WHILE_FALSE
+
+CURLcode easysrc_init(void)
+{
+  CHKRET(easysrc_add(&easysrc_code,
+                     "hnd = curl_easy_init();"));
+  return CURLE_OK;
+}
+
+CURLcode easysrc_perform(void)
+{
+  /* Note any setopt calls which we could not convert */
+  if(easysrc_toohard) {
+    int i;
+    struct curl_slist *ptr;
+    const char *c;
+    CHKRET(easysrc_add(&easysrc_code, ""));
+    /* Preamble comment */
+    for(i=0; ((c = srchard[i]) != NULL); i++)
+      CHKRET(easysrc_add(&easysrc_code, c));
+    /* Each unconverted option */
+    if(easysrc_toohard) {
+      for(ptr=easysrc_toohard->first; ptr; ptr = ptr->next)
+        CHKRET(easysrc_add(&easysrc_code, ptr->data));
+    }
+    CHKRET(easysrc_add(&easysrc_code, ""));
+    CHKRET(easysrc_add(&easysrc_code, "*/"));
+
+    slist_wc_free_all(easysrc_toohard);
+    easysrc_toohard = NULL;
+  }
+
+  CHKRET(easysrc_add(&easysrc_code, ""));
+  CHKRET(easysrc_add(&easysrc_code, "ret = curl_easy_perform(hnd);"));
+  CHKRET(easysrc_add(&easysrc_code, ""));
+
+  return CURLE_OK;
+}
+
+CURLcode easysrc_cleanup(void)
+{
+  CHKRET(easysrc_add(&easysrc_code, "curl_easy_cleanup(hnd);"));
+  CHKRET(easysrc_add(&easysrc_code, "hnd = NULL;"));
+
+  return CURLE_OK;
+}
+
+void dumpeasysrc(struct GlobalConfig *config)
+{
+  struct curl_slist *ptr;
+  char *o = config->libcurl;
+
+  FILE *out;
+  bool fopened = FALSE;
+  if(strcmp(o, "-")) {
+    out = fopen(o, FOPEN_WRITETEXT);
+    fopened = TRUE;
+  }
+  else
+    out = stdout;
+  if(!out)
+    warnf(config, "Failed to open %s to write libcurl code!\n", o);
+  else {
+    int i;
+    const char *c;
+
+    for(i=0; ((c = srchead[i]) != NULL); i++)
+      fprintf(out, "%s\n", c);
+
+    /* Declare variables used for complex setopt values */
+    if(easysrc_decl) {
+      for(ptr=easysrc_decl->first; ptr; ptr = ptr->next)
+        fprintf(out, "  %s\n", ptr->data);
+    }
+
+    /* Set up complex values for setopt calls */
+    if(easysrc_data) {
+      fprintf(out, "\n");
+
+      for(ptr=easysrc_data->first; ptr; ptr = ptr->next)
+        fprintf(out, "  %s\n", ptr->data);
+    }
+
+    fprintf(out, "\n");
+    if(easysrc_code) {
+      for(ptr=easysrc_code->first; ptr; ptr = ptr->next) {
+        if(ptr->data[0]) {
+          fprintf(out, "  %s\n", ptr->data);
+        }
+        else {
+          fprintf(out, "\n");
+        }
+      }
+    }
+
+    if(easysrc_clean) {
+      for(ptr=easysrc_clean->first; ptr; ptr = ptr->next)
+        fprintf(out, "  %s\n", ptr->data);
+    }
+
+    for(i=0; ((c = srcend[i]) != NULL); i++)
+      fprintf(out, "%s\n", c);
+
+    if(fopened)
+      fclose(out);
+  }
+
+  easysrc_free();
+}
+
+#endif /* CURL_DISABLE_LIBCURL_OPTION */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_easysrc.h b/ap/lib/libcurl/curl-7.54.1/src/tool_easysrc.h
new file mode 100644
index 0000000..54607b8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_easysrc.h
@@ -0,0 +1,49 @@
+#ifndef HEADER_CURL_TOOL_EASYSRC_H
+#define HEADER_CURL_TOOL_EASYSRC_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+
+/* global variable declarations, for easy-interface source code generation */
+
+extern struct slist_wc *easysrc_decl; /* Variable declarations */
+extern struct slist_wc *easysrc_data; /* Build slists, forms etc. */
+extern struct slist_wc *easysrc_code; /* Setopt calls etc. */
+extern struct slist_wc *easysrc_toohard; /* Unconvertible setopt */
+extern struct slist_wc *easysrc_clean;  /* Clean up (reverse order) */
+
+extern int easysrc_form_count;  /* Number of curl_httppost variables */
+extern int easysrc_slist_count; /* Number of curl_slist variables */
+
+extern CURLcode easysrc_init(void);
+extern CURLcode easysrc_add(struct slist_wc **plist, const char *bupf);
+extern CURLcode easysrc_addf(struct slist_wc **plist,
+                             const char *fmt, ...);
+extern CURLcode easysrc_perform(void);
+extern CURLcode easysrc_cleanup(void);
+
+void dumpeasysrc(struct GlobalConfig *config);
+
+#endif /* CURL_DISABLE_LIBCURL_OPTION */
+
+#endif /* HEADER_CURL_TOOL_EASYSRC_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_formparse.c b/ap/lib/libcurl/curl-7.54.1/src/tool_formparse.c
new file mode 100644
index 0000000..952377c
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_formparse.c
@@ -0,0 +1,362 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_convert.h"
+#include "tool_mfiles.h"
+#include "tool_msgs.h"
+#include "tool_formparse.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+
+/*
+ * helper function to get a word from form param
+ * after call get_parm_word, str either point to string end
+ * or point to any of end chars.
+ */
+static char *get_param_word(char **str, char **end_pos)
+{
+  char *ptr = *str;
+  char *word_begin = NULL;
+  char *ptr2;
+  char *escape = NULL;
+  const char *end_chars = ";,";
+
+  /* the first non-space char is here */
+  word_begin = ptr;
+  if(*ptr == '"') {
+    ++ptr;
+    while(*ptr) {
+      if(*ptr == '\\') {
+        if(ptr[1] == '\\' || ptr[1] == '"') {
+          /* remember the first escape position */
+          if(!escape)
+            escape = ptr;
+          /* skip escape of back-slash or double-quote */
+          ptr += 2;
+          continue;
+        }
+      }
+      if(*ptr == '"') {
+        *end_pos = ptr;
+        if(escape) {
+          /* has escape, we restore the unescaped string here */
+          ptr = ptr2 = escape;
+          do {
+            if(*ptr == '\\' && (ptr[1] == '\\' || ptr[1] == '"'))
+              ++ptr;
+            *ptr2++ = *ptr++;
+          }
+          while(ptr < *end_pos);
+          *end_pos = ptr2;
+        }
+        while(*ptr && NULL==strchr(end_chars, *ptr))
+          ++ptr;
+        *str = ptr;
+        return word_begin+1;
+      }
+      ++ptr;
+    }
+    /* end quote is missing, treat it as non-quoted. */
+    ptr = word_begin;
+  }
+
+  while(*ptr && NULL==strchr(end_chars, *ptr))
+    ++ptr;
+  *str = *end_pos = ptr;
+  return word_begin;
+}
+
+/***************************************************************************
+ *
+ * formparse()
+ *
+ * Reads a 'name=value' parameter and builds the appropriate linked list.
+ *
+ * Specify files to upload with 'name=@filename', or 'name=@"filename"'
+ * in case the filename contain ',' or ';'. Supports specified
+ * given Content-Type of the files. Such as ';type=<content-type>'.
+ *
+ * If literal_value is set, any initial '@' or '<' in the value string
+ * loses its special meaning, as does any embedded ';type='.
+ *
+ * You may specify more than one file for a single name (field). Specify
+ * multiple files by writing it like:
+ *
+ * 'name=@filename,filename2,filename3'
+ *
+ * or use double-quotes quote the filename:
+ *
+ * 'name=@"filename","filename2","filename3"'
+ *
+ * If you want content-types specified for each too, write them like:
+ *
+ * 'name=@filename;type=image/gif,filename2,filename3'
+ *
+ * If you want custom headers added for a single part, write them in a separate
+ * file and do like this:
+ *
+ * 'name=foo;headers=@headerfile' or why not
+ * 'name=@filemame;headers=@headerfile'
+ *
+ * To upload a file, but to fake the file name that will be included in the
+ * formpost, do like this:
+ *
+ * 'name=@filename;filename=/dev/null' or quote the faked filename like:
+ * 'name=@filename;filename="play, play, and play.txt"'
+ *
+ * If filename/path contains ',' or ';', it must be quoted by double-quotes,
+ * else curl will fail to figure out the correct filename. if the filename
+ * tobe quoted contains '"' or '\', '"' and '\' must be escaped by backslash.
+ *
+ * This function uses curl_formadd to fulfill it's job. Is heavily based on
+ * the old curl_formparse code.
+ *
+ ***************************************************************************/
+
+int formparse(struct OperationConfig *config,
+              const char *input,
+              struct curl_httppost **httppost,
+              struct curl_httppost **last_post,
+              bool literal_value)
+{
+  /* nextarg MUST be a string in the format 'name=contents' and we'll
+     build a linked list with the info */
+  char name[256];
+  char *contents = NULL;
+  char type_major[128] = "";
+  char type_minor[128] = "";
+  char *contp;
+  char *type = NULL;
+  char *sep;
+
+  if((1 == sscanf(input, "%255[^=]=", name)) &&
+     ((contp = strchr(input, '=')) != NULL)) {
+    /* the input was using the correct format */
+
+    /* Allocate the contents */
+    contents = strdup(contp+1);
+    if(!contents) {
+      fprintf(config->global->errors, "out of memory\n");
+      return 1;
+    }
+    contp = contents;
+
+    if('@' == contp[0] && !literal_value) {
+
+      /* we use the @-letter to indicate file name(s) */
+
+      struct multi_files *multi_start = NULL;
+      struct multi_files *multi_current = NULL;
+
+      char *ptr = contp;
+      char *end = ptr + strlen(ptr);
+
+      do {
+        /* since this was a file, it may have a content-type specifier
+           at the end too, or a filename. Or both. */
+        char *filename = NULL;
+        char *word_end;
+        bool semicolon;
+
+        type = NULL;
+
+        ++ptr;
+        contp = get_param_word(&ptr, &word_end);
+        semicolon = (';' == *ptr) ? TRUE : FALSE;
+        *word_end = '\0'; /* terminate the contp */
+
+        /* have other content, continue parse */
+        while(semicolon) {
+          /* have type or filename field */
+          ++ptr;
+          while(*ptr && (ISSPACE(*ptr)))
+            ++ptr;
+
+          if(checkprefix("type=", ptr)) {
+            /* set type pointer */
+            type = &ptr[5];
+
+            /* verify that this is a fine type specifier */
+            if(2 != sscanf(type, "%127[^/]/%127[^;,\n]",
+                           type_major, type_minor)) {
+              warnf(config->global,
+                    "Illegally formatted content-type field!\n");
+              Curl_safefree(contents);
+              FreeMultiInfo(&multi_start, &multi_current);
+              return 2; /* illegal content-type syntax! */
+            }
+
+            /* now point beyond the content-type specifier */
+            sep = type + strlen(type_major)+strlen(type_minor)+1;
+
+            /* there's a semicolon following - we check if it is a filename
+               specified and if not we simply assume that it is text that
+               the user wants included in the type and include that too up
+               to the next sep. */
+            ptr = sep;
+            if(*sep==';') {
+              if(!checkprefix(";filename=", sep)) {
+                ptr = sep + 1;
+                (void)get_param_word(&ptr, &sep);
+                semicolon = (';' == *ptr) ? TRUE : FALSE;
+              }
+            }
+            else
+              semicolon = FALSE;
+
+            if(*sep)
+              *sep = '\0'; /* zero terminate type string */
+          }
+          else if(checkprefix("filename=", ptr)) {
+            ptr += 9;
+            filename = get_param_word(&ptr, &word_end);
+            semicolon = (';' == *ptr) ? TRUE : FALSE;
+            *word_end = '\0';
+          }
+          else {
+            /* unknown prefix, skip to next block */
+            char *unknown = NULL;
+            unknown = get_param_word(&ptr, &word_end);
+            semicolon = (';' == *ptr) ? TRUE : FALSE;
+            if(*unknown) {
+              *word_end = '\0';
+              warnf(config->global, "skip unknown form field: %s\n", unknown);
+            }
+          }
+        }
+        /* now ptr point to comma or string end */
+
+
+        /* if type == NULL curl_formadd takes care of the problem */
+
+        if(*contp && !AddMultiFiles(contp, type, filename, &multi_start,
+                          &multi_current)) {
+          warnf(config->global, "Error building form post!\n");
+          Curl_safefree(contents);
+          FreeMultiInfo(&multi_start, &multi_current);
+          return 3;
+        }
+
+        /* *ptr could be '\0', so we just check with the string end */
+      } while(ptr < end); /* loop if there's another file name */
+
+      /* now we add the multiple files section */
+      if(multi_start) {
+        struct curl_forms *forms = NULL;
+        struct multi_files *start = multi_start;
+        unsigned int i, count = 0;
+        while(start) {
+          start = start->next;
+          ++count;
+        }
+        forms = malloc((count+1)*sizeof(struct curl_forms));
+        if(!forms) {
+          fprintf(config->global->errors, "Error building form post!\n");
+          Curl_safefree(contents);
+          FreeMultiInfo(&multi_start, &multi_current);
+          return 4;
+        }
+        for(i = 0, start = multi_start; i < count; ++i, start = start->next) {
+          forms[i].option = start->form.option;
+          forms[i].value = start->form.value;
+        }
+        forms[count].option = CURLFORM_END;
+        FreeMultiInfo(&multi_start, &multi_current);
+        if(curl_formadd(httppost, last_post,
+                        CURLFORM_COPYNAME, name,
+                        CURLFORM_ARRAY, forms, CURLFORM_END) != 0) {
+          warnf(config->global, "curl_formadd failed!\n");
+          Curl_safefree(forms);
+          Curl_safefree(contents);
+          return 5;
+        }
+        Curl_safefree(forms);
+      }
+    }
+    else {
+      struct curl_forms info[4];
+      int i = 0;
+      char *ct = literal_value ? NULL : strstr(contp, ";type=");
+
+      info[i].option = CURLFORM_COPYNAME;
+      info[i].value = name;
+      i++;
+
+      if(ct) {
+        info[i].option = CURLFORM_CONTENTTYPE;
+        info[i].value = &ct[6];
+        i++;
+        ct[0] = '\0'; /* zero terminate here */
+      }
+
+      if(contp[0]=='<' && !literal_value) {
+        info[i].option = CURLFORM_FILECONTENT;
+        info[i].value = contp+1;
+        i++;
+        info[i].option = CURLFORM_END;
+
+        if(curl_formadd(httppost, last_post,
+                        CURLFORM_ARRAY, info, CURLFORM_END) != 0) {
+          warnf(config->global, "curl_formadd failed, possibly the file %s is "
+                "bad!\n", contp + 1);
+          Curl_safefree(contents);
+          return 6;
+        }
+      }
+      else {
+#ifdef CURL_DOES_CONVERSIONS
+        if(convert_to_network(contp, strlen(contp))) {
+          warnf(config->global, "curl_formadd failed!\n");
+          Curl_safefree(contents);
+          return 7;
+        }
+#endif
+        info[i].option = CURLFORM_COPYCONTENTS;
+        info[i].value = contp;
+        i++;
+        info[i].option = CURLFORM_END;
+        if(curl_formadd(httppost, last_post,
+                        CURLFORM_ARRAY, info, CURLFORM_END) != 0) {
+          warnf(config->global, "curl_formadd failed!\n");
+          Curl_safefree(contents);
+          return 8;
+        }
+      }
+    }
+
+  }
+  else {
+    warnf(config->global, "Illegally formatted input field!\n");
+    return 1;
+  }
+  Curl_safefree(contents);
+  return 0;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_formparse.h b/ap/lib/libcurl/curl-7.54.1/src/tool_formparse.h
new file mode 100644
index 0000000..ce7a292
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_formparse.h
@@ -0,0 +1,33 @@
+#ifndef HEADER_CURL_TOOL_FORMPARSE_H
+#define HEADER_CURL_TOOL_FORMPARSE_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 "tool_setup.h"
+
+int formparse(struct OperationConfig *config,
+              const char *input,
+              struct curl_httppost **httppost,
+              struct curl_httppost **last_post,
+              bool literal_value);
+
+#endif /* HEADER_CURL_TOOL_FORMPARSE_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_getparam.c b/ap/lib/libcurl/curl-7.54.1/src/tool_getparam.c
new file mode 100644
index 0000000..56bbbf1
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_getparam.c
@@ -0,0 +1,2096 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_binmode.h"
+#include "tool_cfgable.h"
+#include "tool_cb_prg.h"
+#include "tool_convert.h"
+#include "tool_formparse.h"
+#include "tool_getparam.h"
+#include "tool_helpers.h"
+#include "tool_libinfo.h"
+#include "tool_metalink.h"
+#include "tool_msgs.h"
+#include "tool_paramhlp.h"
+#include "tool_parsecfg.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef MSDOS
+#  define USE_WATT32
+#endif
+
+#define GetStr(str,val) do { \
+  if(*(str)) { \
+    free(*(str)); \
+    *(str) = NULL; \
+  } \
+  if((val)) {              \
+    *(str) = strdup((val)); \
+    if(!(*(str)))          \
+      return PARAM_NO_MEM; \
+  } \
+} WHILE_FALSE
+
+struct LongShort {
+  const char *letter; /* short name option */
+  const char *lname;  /* long name option */
+  enum {
+    ARG_NONE,   /* stand-alone but not a boolean */
+    ARG_BOOL,   /* accepts a --no-[name] prefix */
+    ARG_STRING  /* requires an argument */
+  } desc;
+};
+
+static const struct LongShort aliases[]= {
+  /* 'letter' strings with more than one character have *no* short option to
+     mention. */
+  {"*@", "url",                      ARG_STRING},
+  {"*4", "dns-ipv4-addr",            ARG_STRING},
+  {"*6", "dns-ipv6-addr",            ARG_STRING},
+  {"*a", "random-file",              ARG_STRING},
+  {"*b", "egd-file",                 ARG_STRING},
+  {"*B", "oauth2-bearer",            ARG_STRING},
+  {"*c", "connect-timeout",          ARG_STRING},
+  {"*d", "ciphers",                  ARG_STRING},
+  {"*D", "dns-interface",            ARG_STRING},
+  {"*e", "disable-epsv",             ARG_BOOL},
+  {"*E", "epsv",                     ARG_BOOL},
+         /* 'epsv' made like this to make --no-epsv and --epsv to work
+             although --disable-epsv is the documented option */
+  {"*F", "dns-servers",              ARG_STRING},
+  {"*g", "trace",                    ARG_STRING},
+  {"*G", "npn",                      ARG_BOOL},
+  {"*h", "trace-ascii",              ARG_STRING},
+  {"*H", "alpn",                     ARG_BOOL},
+  {"*i", "limit-rate",               ARG_STRING},
+  {"*j", "compressed",               ARG_BOOL},
+  {"*J", "tr-encoding",              ARG_BOOL},
+  {"*k", "digest",                   ARG_BOOL},
+  {"*l", "negotiate",                ARG_BOOL},
+  {"*m", "ntlm",                     ARG_BOOL},
+  {"*M", "ntlm-wb",                  ARG_BOOL},
+  {"*n", "basic",                    ARG_BOOL},
+  {"*o", "anyauth",                  ARG_BOOL},
+#ifdef USE_WATT32
+  {"*p", "wdebug",                   ARG_BOOL},
+#endif
+  {"*q", "ftp-create-dirs",          ARG_BOOL},
+  {"*r", "create-dirs",              ARG_BOOL},
+  {"*s", "max-redirs",               ARG_STRING},
+  {"*t", "proxy-ntlm",               ARG_BOOL},
+  {"*u", "crlf",                     ARG_BOOL},
+  {"*v", "stderr",                   ARG_STRING},
+  {"*w", "interface",                ARG_STRING},
+  {"*x", "krb",                      ARG_STRING},
+  {"*x", "krb4",                     ARG_STRING},
+         /* 'krb4' is the previous name */
+  {"*y", "max-filesize",             ARG_STRING},
+  {"*z", "disable-eprt",             ARG_BOOL},
+  {"*Z", "eprt",                     ARG_BOOL},
+         /* 'eprt' made like this to make --no-eprt and --eprt to work
+             although --disable-eprt is the documented option */
+  {"*~", "xattr",                    ARG_BOOL},
+  {"$a", "ftp-ssl",                  ARG_BOOL},
+         /* 'ftp-ssl' deprecated name since 7.20.0 */
+  {"$a", "ssl",                      ARG_BOOL},
+         /* 'ssl' new option name in 7.20.0, previously this was ftp-ssl */
+  {"$b", "ftp-pasv",                 ARG_BOOL},
+  {"$c", "socks5",                   ARG_STRING},
+  {"$d", "tcp-nodelay",              ARG_BOOL},
+  {"$e", "proxy-digest",             ARG_BOOL},
+  {"$f", "proxy-basic",              ARG_BOOL},
+  {"$g", "retry",                    ARG_STRING},
+  {"$V", "retry-connrefused",        ARG_BOOL},
+  {"$h", "retry-delay",              ARG_STRING},
+  {"$i", "retry-max-time",           ARG_STRING},
+  {"$k", "proxy-negotiate",          ARG_BOOL},
+  {"$m", "ftp-account",              ARG_STRING},
+  {"$n", "proxy-anyauth",            ARG_BOOL},
+  {"$o", "trace-time",               ARG_BOOL},
+  {"$p", "ignore-content-length",    ARG_BOOL},
+  {"$q", "ftp-skip-pasv-ip",         ARG_BOOL},
+  {"$r", "ftp-method",               ARG_STRING},
+  {"$s", "local-port",               ARG_STRING},
+  {"$t", "socks4",                   ARG_STRING},
+  {"$T", "socks4a",                  ARG_STRING},
+  {"$u", "ftp-alternative-to-user",  ARG_STRING},
+  {"$v", "ftp-ssl-reqd",             ARG_BOOL},
+         /* 'ftp-ssl-reqd' deprecated name since 7.20.0 */
+  {"$v", "ssl-reqd",                 ARG_BOOL},
+         /* 'ssl-reqd' new in 7.20.0, previously this was ftp-ssl-reqd */
+  {"$w", "sessionid",                ARG_BOOL},
+         /* 'sessionid' listed as --no-sessionid in the help */
+  {"$x", "ftp-ssl-control",          ARG_BOOL},
+  {"$y", "ftp-ssl-ccc",              ARG_BOOL},
+  {"$j", "ftp-ssl-ccc-mode",         ARG_STRING},
+  {"$z", "libcurl",                  ARG_STRING},
+  {"$#", "raw",                      ARG_BOOL},
+  {"$0", "post301",                  ARG_BOOL},
+  {"$1", "keepalive",                ARG_BOOL},
+         /* 'keepalive' listed as --no-keepalive in the help */
+  {"$2", "socks5-hostname",          ARG_STRING},
+  {"$3", "keepalive-time",           ARG_STRING},
+  {"$4", "post302",                  ARG_BOOL},
+  {"$5", "noproxy",                  ARG_STRING},
+  {"$7", "socks5-gssapi-nec",        ARG_BOOL},
+  {"$8", "proxy1.0",                 ARG_STRING},
+  {"$9", "tftp-blksize",             ARG_STRING},
+  {"$A", "mail-from",                ARG_STRING},
+  {"$B", "mail-rcpt",                ARG_STRING},
+  {"$C", "ftp-pret",                 ARG_BOOL},
+  {"$D", "proto",                    ARG_STRING},
+  {"$E", "proto-redir",              ARG_STRING},
+  {"$F", "resolve",                  ARG_STRING},
+  {"$G", "delegation",               ARG_STRING},
+  {"$H", "mail-auth",                ARG_STRING},
+  {"$I", "post303",                  ARG_BOOL},
+  {"$J", "metalink",                 ARG_BOOL},
+  {"$K", "sasl-ir",                  ARG_BOOL},
+  {"$L", "test-event",               ARG_BOOL},
+  {"$M", "unix-socket",              ARG_STRING},
+  {"$N", "path-as-is",               ARG_BOOL},
+  {"$O", "socks5-gssapi-service",    ARG_STRING},
+         /* 'socks5-gssapi-service' merged with'proxy-service-name' and
+            deprecated since 7.49.0 */
+  {"$O", "proxy-service-name",       ARG_STRING},
+  {"$P", "service-name",             ARG_STRING},
+  {"$Q", "proto-default",            ARG_STRING},
+  {"$R", "expect100-timeout",        ARG_STRING},
+  {"$S", "tftp-no-options",          ARG_BOOL},
+  {"$U", "connect-to",               ARG_STRING},
+  {"$W", "abstract-unix-socket",     ARG_STRING},
+  {"$X", "tls-max",                  ARG_STRING},
+  {"$Y", "suppress-connect-headers", ARG_BOOL},
+  {"0",   "http1.0",                 ARG_NONE},
+  {"01",  "http1.1",                 ARG_NONE},
+  {"02",  "http2",                   ARG_NONE},
+  {"03",  "http2-prior-knowledge",   ARG_NONE},
+  {"1",  "tlsv1",                    ARG_NONE},
+  {"10",  "tlsv1.0",                 ARG_NONE},
+  {"11",  "tlsv1.1",                 ARG_NONE},
+  {"12",  "tlsv1.2",                 ARG_NONE},
+  {"13",  "tlsv1.3",                 ARG_NONE},
+  {"2",  "sslv2",                    ARG_NONE},
+  {"3",  "sslv3",                    ARG_NONE},
+  {"4",  "ipv4",                     ARG_NONE},
+  {"6",  "ipv6",                     ARG_NONE},
+  {"a",  "append",                   ARG_BOOL},
+  {"A",  "user-agent",               ARG_STRING},
+  {"b",  "cookie",                   ARG_STRING},
+  {"B",  "use-ascii",                ARG_BOOL},
+  {"c",  "cookie-jar",               ARG_STRING},
+  {"C",  "continue-at",              ARG_STRING},
+  {"d",  "data",                     ARG_STRING},
+  {"dr", "data-raw",                 ARG_STRING},
+  {"da", "data-ascii",               ARG_STRING},
+  {"db", "data-binary",              ARG_STRING},
+  {"de", "data-urlencode",           ARG_STRING},
+  {"D",  "dump-header",              ARG_STRING},
+  {"e",  "referer",                  ARG_STRING},
+  {"E",  "cert",                     ARG_STRING},
+  {"Ea", "cacert",                   ARG_STRING},
+  {"Eb", "cert-type",                ARG_STRING},
+  {"Ec", "key",                      ARG_STRING},
+  {"Ed", "key-type",                 ARG_STRING},
+  {"Ee", "pass",                     ARG_STRING},
+  {"Ef", "engine",                   ARG_STRING},
+  {"Eg", "capath",                   ARG_STRING},
+  {"Eh", "pubkey",                   ARG_STRING},
+  {"Ei", "hostpubmd5",               ARG_STRING},
+  {"Ej", "crlfile",                  ARG_STRING},
+  {"Ek", "tlsuser",                  ARG_STRING},
+  {"El", "tlspassword",              ARG_STRING},
+  {"Em", "tlsauthtype",              ARG_STRING},
+  {"En", "ssl-allow-beast",          ARG_BOOL},
+  {"Eo", "login-options",            ARG_STRING},
+  {"Ep", "pinnedpubkey",             ARG_STRING},
+  {"Eq", "cert-status",              ARG_BOOL},
+  {"Er", "false-start",              ARG_BOOL},
+  {"Es", "ssl-no-revoke",            ARG_BOOL},
+  {"Et", "tcp-fastopen",             ARG_BOOL},
+  {"Eu", "proxy-tlsuser",            ARG_STRING},
+  {"Ev", "proxy-tlspassword",        ARG_STRING},
+  {"Ew", "proxy-tlsauthtype",        ARG_STRING},
+  {"Ex", "proxy-cert",               ARG_STRING},
+  {"Ey", "proxy-cert-type",          ARG_STRING},
+  {"Ez", "proxy-key",                ARG_STRING},
+  {"E0", "proxy-key-type",           ARG_STRING},
+  {"E1", "proxy-pass",               ARG_STRING},
+  {"E2", "proxy-ciphers",            ARG_STRING},
+  {"E3", "proxy-crlfile",            ARG_STRING},
+  {"E4", "proxy-ssl-allow-beast",    ARG_BOOL},
+  {"E5", "login-options",            ARG_STRING},
+  {"E6", "proxy-cacert",             ARG_STRING},
+  {"E7", "proxy-capath",             ARG_STRING},
+  {"E8", "proxy-insecure",           ARG_BOOL},
+  {"E9", "proxy-tlsv1",              ARG_NONE},
+  {"f",  "fail",                     ARG_BOOL},
+  {"fa", "fail-early",               ARG_BOOL},
+  {"F",  "form",                     ARG_STRING},
+  {"Fs", "form-string",              ARG_STRING},
+  {"g",  "globoff",                  ARG_BOOL},
+  {"G",  "get",                      ARG_NONE},
+  {"h",  "help",                     ARG_BOOL},
+  {"H",  "header",                   ARG_STRING},
+  {"Hp", "proxy-header",             ARG_STRING},
+  {"i",  "include",                  ARG_BOOL},
+  {"I",  "head",                     ARG_BOOL},
+  {"j",  "junk-session-cookies",     ARG_BOOL},
+  {"J",  "remote-header-name",       ARG_BOOL},
+  {"k",  "insecure",                 ARG_BOOL},
+  {"K",  "config",                   ARG_STRING},
+  {"l",  "list-only",                ARG_BOOL},
+  {"L",  "location",                 ARG_BOOL},
+  {"Lt", "location-trusted",         ARG_BOOL},
+  {"m",  "max-time",                 ARG_STRING},
+  {"M",  "manual",                   ARG_BOOL},
+  {"n",  "netrc",                    ARG_BOOL},
+  {"no", "netrc-optional",           ARG_BOOL},
+  {"ne", "netrc-file",               ARG_STRING},
+  {"N",  "buffer",                   ARG_BOOL},
+         /* 'buffer' listed as --no-buffer in the help */
+  {"o",  "output",                   ARG_STRING},
+  {"O",  "remote-name",              ARG_NONE},
+  {"Oa", "remote-name-all",          ARG_BOOL},
+  {"p",  "proxytunnel",              ARG_BOOL},
+  {"P",  "ftp-port",                 ARG_STRING},
+  {"q",  "disable",                  ARG_BOOL},
+  {"Q",  "quote",                    ARG_STRING},
+  {"r",  "range",                    ARG_STRING},
+  {"R",  "remote-time",              ARG_BOOL},
+  {"s",  "silent",                   ARG_BOOL},
+  {"S",  "show-error",               ARG_BOOL},
+  {"t",  "telnet-option",            ARG_STRING},
+  {"T",  "upload-file",              ARG_STRING},
+  {"u",  "user",                     ARG_STRING},
+  {"U",  "proxy-user",               ARG_STRING},
+  {"v",  "verbose",                  ARG_BOOL},
+  {"V",  "version",                  ARG_BOOL},
+  {"w",  "write-out",                ARG_STRING},
+  {"x",  "proxy",                    ARG_STRING},
+  {"xa", "preproxy",                 ARG_STRING},
+  {"X",  "request",                  ARG_STRING},
+  {"Y",  "speed-limit",              ARG_STRING},
+  {"y",  "speed-time",               ARG_STRING},
+  {"z",  "time-cond",                ARG_STRING},
+  {"#",  "progress-bar",             ARG_BOOL},
+  {":",  "next",                     ARG_NONE},
+};
+
+/* Split the argument of -E to 'certname' and 'passphrase' separated by colon.
+ * We allow ':' and '\' to be escaped by '\' so that we can use certificate
+ * nicknames containing ':'.  See <https://sourceforge.net/p/curl/bugs/1196/>
+ * for details. */
+#ifndef UNITTESTS
+static
+#endif
+void parse_cert_parameter(const char *cert_parameter,
+                          char **certname,
+                          char **passphrase)
+{
+  size_t param_length = strlen(cert_parameter);
+  size_t span;
+  const char *param_place = NULL;
+  char *certname_place = NULL;
+  *certname = NULL;
+  *passphrase = NULL;
+
+  /* most trivial assumption: cert_parameter is empty */
+  if(param_length == 0)
+    return;
+
+  /* next less trivial: cert_parameter starts 'pkcs11:' and thus
+   * looks like a RFC7512 PKCS#11 URI which can be used as-is.
+   * Also if cert_parameter contains no colon nor backslash, this
+   * means no passphrase was given and no characters escaped */
+  if(!strncmp(cert_parameter, "pkcs11:", 7) ||
+     !strpbrk(cert_parameter, ":\\")) {
+    *certname = strdup(cert_parameter);
+    return;
+  }
+  /* deal with escaped chars; find unescaped colon if it exists */
+  certname_place = malloc(param_length + 1);
+  if(!certname_place)
+    return;
+
+  *certname = certname_place;
+  param_place = cert_parameter;
+  while(*param_place) {
+    span = strcspn(param_place, ":\\");
+    strncpy(certname_place, param_place, span);
+    param_place += span;
+    certname_place += span;
+    /* we just ate all the non-special chars. now we're on either a special
+     * char or the end of the string. */
+    switch(*param_place) {
+    case '\0':
+      break;
+    case '\\':
+      param_place++;
+      switch(*param_place) {
+        case '\0':
+          *certname_place++ = '\\';
+          break;
+        case '\\':
+          *certname_place++ = '\\';
+          param_place++;
+          break;
+        case ':':
+          *certname_place++ = ':';
+          param_place++;
+          break;
+        default:
+          *certname_place++ = '\\';
+          *certname_place++ = *param_place;
+          param_place++;
+          break;
+      }
+      break;
+    case ':':
+      /* Since we live in a world of weirdness and confusion, the win32
+         dudes can use : when using drive letters and thus c:\file:password
+         needs to work. In order not to break compatibility, we still use : as
+         separator, but we try to detect when it is used for a file name! On
+         windows. */
+#ifdef WIN32
+      if(param_place &&
+          (param_place == &cert_parameter[1]) &&
+          (cert_parameter[2] == '\\' || cert_parameter[2] == '/') &&
+          (ISALPHA(cert_parameter[0])) ) {
+        /* colon in the second column, followed by a backslash, and the
+           first character is an alphabetic letter:
+
+           this is a drive letter colon */
+        *certname_place++ = ':';
+        param_place++;
+        break;
+      }
+#endif
+      /* escaped colons and Windows drive letter colons were handled
+       * above; if we're still here, this is a separating colon */
+      param_place++;
+      if(strlen(param_place) > 0) {
+        *passphrase = strdup(param_place);
+      }
+      goto done;
+    }
+  }
+done:
+  *certname_place = '\0';
+}
+
+static void
+GetFileAndPassword(char *nextarg, char **file, char **password)
+{
+  char *certname, *passphrase;
+  parse_cert_parameter(nextarg, &certname, &passphrase);
+  Curl_safefree(*file);
+  *file = certname;
+  if(passphrase) {
+    Curl_safefree(*password);
+    *password = passphrase;
+  }
+  cleanarg(nextarg);
+}
+
+ParameterError getparameter(const char *flag, /* f or -long-flag */
+                            char *nextarg,    /* NULL if unset */
+                            bool *usedarg,    /* set to TRUE if the arg
+                                                 has been used */
+                            struct GlobalConfig *global,
+                            struct OperationConfig *config)
+{
+  char letter;
+  char subletter = '\0'; /* subletters can only occur on long options */
+  int rc;
+  const char *parse = NULL;
+  unsigned int j;
+  time_t now;
+  int hit = -1;
+  bool longopt = FALSE;
+  bool singleopt = FALSE; /* when true means '-o foo' used '-ofoo' */
+  ParameterError err;
+  bool toggle = TRUE; /* how to switch boolean options, on or off. Controlled
+                         by using --OPTION or --no-OPTION */
+
+
+  if(('-' != flag[0]) ||
+     (('-' == flag[0]) && ('-' == flag[1]))) {
+    /* this should be a long name */
+    const char *word = ('-' == flag[0]) ? flag+2 : flag;
+    size_t fnam = strlen(word);
+    int numhits = 0;
+
+    if(!strncmp(word, "no-", 3)) {
+      /* disable this option but ignore the "no-" part when looking for it */
+      word += 3;
+      toggle = FALSE;
+    }
+
+    for(j = 0; j < sizeof(aliases)/sizeof(aliases[0]); j++) {
+      if(curl_strnequal(aliases[j].lname, word, fnam)) {
+        longopt = TRUE;
+        numhits++;
+        if(curl_strequal(aliases[j].lname, word)) {
+          parse = aliases[j].letter;
+          hit = j;
+          numhits = 1; /* a single unique hit */
+          break;
+        }
+        parse = aliases[j].letter;
+        hit = j;
+      }
+    }
+    if(numhits > 1) {
+      /* this is at least the second match! */
+      return PARAM_OPTION_AMBIGUOUS;
+    }
+    if(hit < 0) {
+      return PARAM_OPTION_UNKNOWN;
+    }
+  }
+  else {
+    flag++; /* prefixed with one dash, pass it */
+    hit = -1;
+    parse = flag;
+  }
+
+  do {
+    /* we can loop here if we have multiple single-letters */
+
+    if(!longopt) {
+      letter = (char)*parse;
+      subletter='\0';
+    }
+    else {
+      letter = parse[0];
+      subletter = parse[1];
+    }
+    *usedarg = FALSE; /* default is that we don't use the arg */
+
+    if(hit < 0) {
+      for(j = 0; j < sizeof(aliases)/sizeof(aliases[0]); j++) {
+        if(letter == aliases[j].letter[0]) {
+          hit = j;
+          break;
+        }
+      }
+      if(hit < 0) {
+        return PARAM_OPTION_UNKNOWN;
+      }
+    }
+
+    if(aliases[hit].desc == ARG_STRING) {
+      /* this option requires an extra parameter */
+      if(!longopt && parse[1]) {
+        nextarg = (char *)&parse[1]; /* this is the actual extra parameter */
+        singleopt = TRUE;   /* don't loop anymore after this */
+      }
+      else if(!nextarg)
+        return PARAM_REQUIRES_PARAMETER;
+      else
+        *usedarg = TRUE; /* mark it as used */
+    }
+    else if((aliases[hit].desc == ARG_NONE) && !toggle)
+      return PARAM_NO_PREFIX;
+
+    switch(letter) {
+    case '*': /* options without a short option */
+      switch(subletter) {
+      case '4': /* --dns-ipv4-addr */
+        /* addr in dot notation */
+        GetStr(&config->dns_ipv4_addr, nextarg);
+        break;
+      case '6': /* --dns-ipv6-addr */
+        /* addr in dot notation */
+        GetStr(&config->dns_ipv6_addr, nextarg);
+        break;
+      case 'a': /* random-file */
+        GetStr(&config->random_file, nextarg);
+        break;
+      case 'b': /* egd-file */
+        GetStr(&config->egd_file, nextarg);
+        break;
+      case 'B': /* OAuth 2.0 bearer token */
+        GetStr(&config->oauth_bearer, nextarg);
+        break;
+      case 'c': /* connect-timeout */
+        err = str2udouble(&config->connecttimeout, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'd': /* ciphers */
+        GetStr(&config->cipher_list, nextarg);
+        break;
+      case 'D': /* --dns-interface */
+        /* interface name */
+        GetStr(&config->dns_interface, nextarg);
+        break;
+      case 'e': /* --disable-epsv */
+        config->disable_epsv = toggle;
+        break;
+      case 'E': /* --epsv */
+        config->disable_epsv = (!toggle)?TRUE:FALSE;
+        break;
+      case 'F': /* --dns-servers */
+        /* IP addrs of DNS servers */
+        GetStr(&config->dns_servers, nextarg);
+        break;
+      case 'g': /* --trace */
+        GetStr(&global->trace_dump, nextarg);
+        if(global->tracetype && (global->tracetype != TRACE_BIN))
+          warnf(global, "--trace overrides an earlier trace/verbose option\n");
+        global->tracetype = TRACE_BIN;
+        break;
+      case 'G': /* --npn */
+        config->nonpn = (!toggle)?TRUE:FALSE;
+        break;
+      case 'h': /* --trace-ascii */
+        GetStr(&global->trace_dump, nextarg);
+        if(global->tracetype && (global->tracetype != TRACE_ASCII))
+          warnf(global,
+                "--trace-ascii overrides an earlier trace/verbose option\n");
+        global->tracetype = TRACE_ASCII;
+        break;
+      case 'H': /* --alpn */
+        config->noalpn = (!toggle)?TRUE:FALSE;
+        break;
+      case 'i': /* --limit-rate */
+      {
+        /* We support G, M, K too */
+        char *unit;
+        curl_off_t value = curlx_strtoofft(nextarg, &unit, 0);
+
+        if(!*unit)
+          unit = (char *)"b";
+        else if(strlen(unit) > 1)
+          unit = (char *)"w"; /* unsupported */
+
+        switch(*unit) {
+        case 'G':
+        case 'g':
+          value *= 1024*1024*1024;
+          break;
+        case 'M':
+        case 'm':
+          value *= 1024*1024;
+          break;
+        case 'K':
+        case 'k':
+          value *= 1024;
+          break;
+        case 'b':
+        case 'B':
+          /* for plain bytes, leave as-is */
+          break;
+        default:
+          warnf(global, "unsupported rate unit. Use G, M, K or B!\n");
+          return PARAM_BAD_USE;
+        }
+        config->recvpersecond = value;
+        config->sendpersecond = value;
+      }
+      break;
+
+      case 'j': /* --compressed */
+        if(toggle && !(curlinfo->features & CURL_VERSION_LIBZ))
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        config->encoding = toggle;
+        break;
+
+      case 'J': /* --tr-encoding */
+        config->tr_encoding = toggle;
+        break;
+
+      case 'k': /* --digest */
+        if(toggle)
+          config->authtype |= CURLAUTH_DIGEST;
+        else
+          config->authtype &= ~CURLAUTH_DIGEST;
+        break;
+
+      case 'l': /* --negotiate */
+        if(toggle) {
+          if(curlinfo->features & CURL_VERSION_SPNEGO)
+            config->authtype |= CURLAUTH_NEGOTIATE;
+          else
+            return PARAM_LIBCURL_DOESNT_SUPPORT;
+        }
+        else
+          config->authtype &= ~CURLAUTH_NEGOTIATE;
+        break;
+
+      case 'm': /* --ntlm */
+        if(toggle) {
+          if(curlinfo->features & CURL_VERSION_NTLM)
+            config->authtype |= CURLAUTH_NTLM;
+          else
+            return PARAM_LIBCURL_DOESNT_SUPPORT;
+        }
+        else
+          config->authtype &= ~CURLAUTH_NTLM;
+        break;
+
+      case 'M': /* --ntlm-wb */
+        if(toggle) {
+          if(curlinfo->features & CURL_VERSION_NTLM_WB)
+            config->authtype |= CURLAUTH_NTLM_WB;
+          else
+            return PARAM_LIBCURL_DOESNT_SUPPORT;
+        }
+        else
+          config->authtype &= ~CURLAUTH_NTLM_WB;
+        break;
+
+      case 'n': /* --basic for completeness */
+        if(toggle)
+          config->authtype |= CURLAUTH_BASIC;
+        else
+          config->authtype &= ~CURLAUTH_BASIC;
+        break;
+
+      case 'o': /* --anyauth, let libcurl pick it */
+        if(toggle)
+          config->authtype = CURLAUTH_ANY;
+        /* --no-anyauth simply doesn't touch it */
+        break;
+
+#ifdef USE_WATT32
+      case 'p': /* --wdebug */
+        dbug_init();
+        break;
+#endif
+      case 'q': /* --ftp-create-dirs */
+        config->ftp_create_dirs = toggle;
+        break;
+
+      case 'r': /* --create-dirs */
+        config->create_dirs = toggle;
+        break;
+
+      case 's': /* --max-redirs */
+        /* specified max no of redirects (http(s)), this accepts -1 as a
+           special condition */
+        err = str2num(&config->maxredirs, nextarg);
+        if(err)
+          return err;
+        if(config->maxredirs < -1)
+          return PARAM_BAD_NUMERIC;
+        break;
+
+      case 't': /* --proxy-ntlm */
+        if(curlinfo->features & CURL_VERSION_NTLM)
+          config->proxyntlm = toggle;
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+
+      case 'u': /* --crlf */
+        /* LF -> CRLF conversion? */
+        config->crlf = toggle;
+        break;
+
+      case 'v': /* --stderr */
+        if(strcmp(nextarg, "-")) {
+          FILE *newfile = fopen(nextarg, FOPEN_WRITETEXT);
+          if(!newfile)
+            warnf(global, "Failed to open %s!\n", nextarg);
+          else {
+            if(global->errors_fopened)
+              fclose(global->errors);
+            global->errors = newfile;
+            global->errors_fopened = TRUE;
+          }
+        }
+        else
+          global->errors = stdout;
+        break;
+      case 'w': /* --interface */
+        /* interface */
+        GetStr(&config->iface, nextarg);
+        break;
+      case 'x': /* --krb */
+        /* kerberos level string */
+        if(curlinfo->features & CURL_VERSION_KERBEROS4)
+          GetStr(&config->krblevel, nextarg);
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+      case 'y': /* --max-filesize */
+        err = str2offset(&config->max_filesize, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'z': /* --disable-eprt */
+        config->disable_eprt = toggle;
+        break;
+      case 'Z': /* --eprt */
+        config->disable_eprt = (!toggle)?TRUE:FALSE;
+        break;
+      case '~': /* --xattr */
+        config->xattr = toggle;
+        break;
+      case '@': /* the URL! */
+      {
+        struct getout *url;
+
+        if(!config->url_get)
+          config->url_get = config->url_list;
+
+        if(config->url_get) {
+          /* there's a node here, if it already is filled-in continue to find
+             an "empty" node */
+          while(config->url_get && (config->url_get->flags & GETOUT_URL))
+            config->url_get = config->url_get->next;
+        }
+
+        /* now there might or might not be an available node to fill in! */
+
+        if(config->url_get)
+          /* existing node */
+          url = config->url_get;
+        else
+          /* there was no free node, create one! */
+          url = new_getout(config);
+
+        if(!url)
+          return PARAM_NO_MEM;
+
+        /* fill in the URL */
+        GetStr(&url->url, nextarg);
+        url->flags |= GETOUT_URL;
+      }
+      }
+      break;
+    case '$': /* more options without a short option */
+      switch(subletter) {
+      case 'a': /* --ssl */
+        if(toggle && !(curlinfo->features & CURL_VERSION_SSL))
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        config->ftp_ssl = toggle;
+        break;
+      case 'b': /* --ftp-pasv */
+        Curl_safefree(config->ftpport);
+        break;
+      case 'c': /* --socks5 specifies a socks5 proxy to use, and resolves
+                   the name locally and passes on the resolved address */
+        GetStr(&config->proxy, nextarg);
+        config->proxyver = CURLPROXY_SOCKS5;
+        break;
+      case 't': /* --socks4 specifies a socks4 proxy to use */
+        GetStr(&config->proxy, nextarg);
+        config->proxyver = CURLPROXY_SOCKS4;
+        break;
+      case 'T': /* --socks4a specifies a socks4a proxy to use */
+        GetStr(&config->proxy, nextarg);
+        config->proxyver = CURLPROXY_SOCKS4A;
+        break;
+      case '2': /* --socks5-hostname specifies a socks5 proxy and enables name
+                   resolving with the proxy */
+        GetStr(&config->proxy, nextarg);
+        config->proxyver = CURLPROXY_SOCKS5_HOSTNAME;
+        break;
+      case 'd': /* --tcp-nodelay option */
+        config->tcp_nodelay = toggle;
+        break;
+      case 'e': /* --proxy-digest */
+        config->proxydigest = toggle;
+        break;
+      case 'f': /* --proxy-basic */
+        config->proxybasic = toggle;
+        break;
+      case 'g': /* --retry */
+        err = str2unum(&config->req_retry, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'V': /* --retry-connrefused */
+        config->retry_connrefused = toggle;
+        break;
+      case 'h': /* --retry-delay */
+        err = str2unum(&config->retry_delay, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'i': /* --retry-max-time */
+        err = str2unum(&config->retry_maxtime, nextarg);
+        if(err)
+          return err;
+        break;
+
+      case 'k': /* --proxy-negotiate */
+        if(curlinfo->features & CURL_VERSION_SPNEGO)
+          config->proxynegotiate = toggle;
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+
+      case 'm': /* --ftp-account */
+        GetStr(&config->ftp_account, nextarg);
+        break;
+      case 'n': /* --proxy-anyauth */
+        config->proxyanyauth = toggle;
+        break;
+      case 'o': /* --trace-time */
+        global->tracetime = toggle;
+        break;
+      case 'p': /* --ignore-content-length */
+        config->ignorecl = toggle;
+        break;
+      case 'q': /* --ftp-skip-pasv-ip */
+        config->ftp_skip_ip = toggle;
+        break;
+      case 'r': /* --ftp-method (undocumented at this point) */
+        config->ftp_filemethod = ftpfilemethod(config, nextarg);
+        break;
+      case 's': /* --local-port */
+        rc = sscanf(nextarg, "%d - %d",
+                    &config->localport,
+                    &config->localportrange);
+        if(!rc)
+          return PARAM_BAD_USE;
+        if(rc == 1)
+          config->localportrange = 1; /* default number of ports to try */
+        else {
+          config->localportrange -= config->localport;
+          if(config->localportrange < 1) {
+            warnf(global, "bad range input\n");
+            return PARAM_BAD_USE;
+          }
+        }
+        break;
+      case 'u': /* --ftp-alternative-to-user */
+        GetStr(&config->ftp_alternative_to_user, nextarg);
+        break;
+      case 'v': /* --ssl-reqd */
+        if(toggle && !(curlinfo->features & CURL_VERSION_SSL))
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        config->ftp_ssl_reqd = toggle;
+        break;
+      case 'w': /* --no-sessionid */
+        config->disable_sessionid = (!toggle)?TRUE:FALSE;
+        break;
+      case 'x': /* --ftp-ssl-control */
+        if(toggle && !(curlinfo->features & CURL_VERSION_SSL))
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        config->ftp_ssl_control = toggle;
+        break;
+      case 'y': /* --ftp-ssl-ccc */
+        config->ftp_ssl_ccc = toggle;
+        if(!config->ftp_ssl_ccc_mode)
+          config->ftp_ssl_ccc_mode = CURLFTPSSL_CCC_PASSIVE;
+        break;
+      case 'j': /* --ftp-ssl-ccc-mode */
+        config->ftp_ssl_ccc = TRUE;
+        config->ftp_ssl_ccc_mode = ftpcccmethod(config, nextarg);
+        break;
+      case 'z': /* --libcurl */
+#ifdef CURL_DISABLE_LIBCURL_OPTION
+        warnf(global,
+              "--libcurl option was disabled at build-time!\n");
+        return PARAM_OPTION_UNKNOWN;
+#else
+        GetStr(&global->libcurl, nextarg);
+        break;
+#endif
+      case '#': /* --raw */
+        config->raw = toggle;
+        break;
+      case '0': /* --post301 */
+        config->post301 = toggle;
+        break;
+      case '1': /* --no-keepalive */
+        config->nokeepalive = (!toggle)?TRUE:FALSE;
+        break;
+      case '3': /* --keepalive-time */
+        err = str2unum(&config->alivetime, nextarg);
+        if(err)
+          return err;
+        break;
+      case '4': /* --post302 */
+        config->post302 = toggle;
+        break;
+      case 'I': /* --post303 */
+        config->post303 = toggle;
+        break;
+      case '5': /* --noproxy */
+        /* This specifies the noproxy list */
+        GetStr(&config->noproxy, nextarg);
+        break;
+       case '7': /* --socks5-gssapi-nec*/
+        config->socks5_gssapi_nec = toggle;
+        break;
+      case '8': /* --proxy1.0 */
+        /* http 1.0 proxy */
+        GetStr(&config->proxy, nextarg);
+        config->proxyver = CURLPROXY_HTTP_1_0;
+        break;
+      case '9': /* --tftp-blksize */
+        err = str2unum(&config->tftp_blksize, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'A': /* --mail-from */
+        GetStr(&config->mail_from, nextarg);
+        break;
+      case 'B': /* --mail-rcpt */
+        /* append receiver to a list */
+        err = add2list(&config->mail_rcpt, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'C': /* --ftp-pret */
+        config->ftp_pret = toggle;
+        break;
+      case 'D': /* --proto */
+        config->proto_present = TRUE;
+        if(proto2num(config, &config->proto, nextarg))
+          return PARAM_BAD_USE;
+        break;
+      case 'E': /* --proto-redir */
+        config->proto_redir_present = TRUE;
+        if(proto2num(config, &config->proto_redir, nextarg))
+          return PARAM_BAD_USE;
+        break;
+      case 'F': /* --resolve */
+        err = add2list(&config->resolve, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'G': /* --delegation LEVEL */
+        config->gssapi_delegation = delegation(config, nextarg);
+        break;
+      case 'H': /* --mail-auth */
+        GetStr(&config->mail_auth, nextarg);
+        break;
+      case 'J': /* --metalink */
+        {
+#ifdef USE_METALINK
+          int mlmaj, mlmin, mlpatch;
+          metalink_get_version(&mlmaj, &mlmin, &mlpatch);
+          if((mlmaj*10000)+(mlmin*100)+mlpatch < CURL_REQ_LIBMETALINK_VERS) {
+            warnf(global,
+                  "--metalink option cannot be used because the version of "
+                  "the linked libmetalink library is too old. "
+                  "Required: %d.%d.%d, found %d.%d.%d\n",
+                  CURL_REQ_LIBMETALINK_MAJOR,
+                  CURL_REQ_LIBMETALINK_MINOR,
+                  CURL_REQ_LIBMETALINK_PATCH,
+                  mlmaj, mlmin, mlpatch);
+            return PARAM_BAD_USE;
+          }
+          else
+            config->use_metalink = toggle;
+#else
+          warnf(global, "--metalink option is ignored because the binary is "
+                "built without the Metalink support.\n");
+#endif
+          break;
+        }
+      case 'K': /* --sasl-ir */
+        config->sasl_ir = toggle;
+        break;
+      case 'L': /* --test-event */
+#ifdef CURLDEBUG
+        config->test_event_based = toggle;
+#else
+        warnf(global, "--test-event is ignored unless a debug build!\n");
+#endif
+        break;
+      case 'M': /* --unix-socket */
+        config->abstract_unix_socket = FALSE;
+        GetStr(&config->unix_socket_path, nextarg);
+        break;
+      case 'N': /* --path-as-is */
+        config->path_as_is = toggle;
+        break;
+      case 'O': /* --proxy-service-name */
+        GetStr(&config->proxy_service_name, nextarg);
+        break;
+      case 'P': /* --service-name */
+        GetStr(&config->service_name, nextarg);
+        break;
+      case 'Q': /* --proto-default */
+        GetStr(&config->proto_default, nextarg);
+        err = check_protocol(config->proto_default);
+        if(err)
+          return err;
+        break;
+      case 'R': /* --expect100-timeout */
+        err = str2udouble(&config->expect100timeout, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'S': /* --tftp-no-options */
+        config->tftp_no_options = toggle;
+        break;
+      case 'U': /* --connect-to */
+        err = add2list(&config->connect_to, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'W': /* --abstract-unix-socket */
+        config->abstract_unix_socket = TRUE;
+        GetStr(&config->unix_socket_path, nextarg);
+        break;
+      case 'X': /* --tls-max */
+        err = str2tls_max(&config->ssl_version_max, nextarg);
+        if(err)
+          return err;
+        break;
+      case 'Y': /* --suppress-connect-headers */
+        config->suppress_connect_headers = toggle;
+        break;
+      }
+      break;
+    case '#': /* --progress-bar */
+      if(toggle)
+        global->progressmode = CURL_PROGRESS_BAR;
+      else
+        global->progressmode = CURL_PROGRESS_STATS;
+      break;
+    case ':': /* --next */
+      return PARAM_NEXT_OPERATION;
+    case '0': /* --http* options */
+      switch(subletter) {
+      case '\0':
+        /* HTTP version 1.0 */
+        config->httpversion = CURL_HTTP_VERSION_1_0;
+        break;
+      case '1':
+        /* HTTP version 1.1 */
+        config->httpversion = CURL_HTTP_VERSION_1_1;
+        break;
+      case '2':
+        /* HTTP version 2.0 */
+        config->httpversion = CURL_HTTP_VERSION_2_0;
+        break;
+      case '3':
+        /* HTTP version 2.0 over clean TCP*/
+        config->httpversion = CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE;
+        break;
+      }
+      break;
+    case '1': /* --tlsv1* options */
+      switch(subletter) {
+      case '\0':
+        /* TLS version 1.x */
+        config->ssl_version = CURL_SSLVERSION_TLSv1;
+        break;
+      case '0':
+        /* TLS version 1.0 */
+        config->ssl_version = CURL_SSLVERSION_TLSv1_0;
+        break;
+      case '1':
+        /* TLS version 1.1 */
+        config->ssl_version = CURL_SSLVERSION_TLSv1_1;
+        break;
+      case '2':
+        /* TLS version 1.2 */
+        config->ssl_version = CURL_SSLVERSION_TLSv1_2;
+        break;
+      case '3':
+        /* TLS version 1.3 */
+        config->ssl_version = CURL_SSLVERSION_TLSv1_3;
+        break;
+      }
+      break;
+    case '2':
+      /* SSL version 2 */
+      config->ssl_version = CURL_SSLVERSION_SSLv2;
+      break;
+    case '3':
+      /* SSL version 3 */
+      config->ssl_version = CURL_SSLVERSION_SSLv3;
+      break;
+    case '4':
+      /* IPv4 */
+      config->ip_version = 4;
+      break;
+    case '6':
+      /* IPv6 */
+      config->ip_version = 6;
+      break;
+    case 'a':
+      /* This makes the FTP sessions use APPE instead of STOR */
+      config->ftp_append = toggle;
+      break;
+    case 'A':
+      /* This specifies the User-Agent name */
+      GetStr(&config->useragent, nextarg);
+      break;
+    case 'b': /* cookie string coming up: */
+      if(nextarg[0] == '@') {
+        nextarg++;
+      }
+      else if(strchr(nextarg, '=')) {
+        /* A cookie string must have a =-letter */
+        GetStr(&config->cookie, nextarg);
+        break;
+      }
+      /* We have a cookie file to read from! */
+      GetStr(&config->cookiefile, nextarg);
+      break;
+    case 'B':
+      /* use ASCII/text when transferring */
+      config->use_ascii = toggle;
+      break;
+    case 'c':
+      /* get the file name to dump all cookies in */
+      GetStr(&config->cookiejar, nextarg);
+      break;
+    case 'C':
+      /* This makes us continue an ftp transfer at given position */
+      if(strcmp(nextarg, "-")) {
+        err = str2offset(&config->resume_from, nextarg);
+        if(err)
+          return err;
+        config->resume_from_current = FALSE;
+      }
+      else {
+        config->resume_from_current = TRUE;
+        config->resume_from = 0;
+      }
+      config->use_resume=TRUE;
+      break;
+    case 'd':
+      /* postfield data */
+    {
+      char *postdata = NULL;
+      FILE *file;
+      size_t size = 0;
+      bool raw_mode = (subletter == 'r');
+
+      if(subletter == 'e') { /* --data-urlencode*/
+        /* [name]=[content], we encode the content part only
+         * [name]@[file name]
+         *
+         * Case 2: we first load the file using that name and then encode
+         * the content.
+         */
+        const char *p = strchr(nextarg, '=');
+        size_t nlen;
+        char is_file;
+        if(!p)
+          /* there was no '=' letter, check for a '@' instead */
+          p = strchr(nextarg, '@');
+        if(p) {
+          nlen = p - nextarg; /* length of the name part */
+          is_file = *p++; /* pass the separator */
+        }
+        else {
+          /* neither @ nor =, so no name and it isn't a file */
+          nlen = is_file = 0;
+          p = nextarg;
+        }
+        if('@' == is_file) {
+          /* a '@' letter, it means that a file name or - (stdin) follows */
+          if(!strcmp("-", p)) {
+            file = stdin;
+            set_binmode(stdin);
+          }
+          else {
+            file = fopen(p, "rb");
+            if(!file)
+              warnf(global,
+                    "Couldn't read data from file \"%s\", this makes "
+                    "an empty POST.\n", nextarg);
+          }
+
+          err = file2memory(&postdata, &size, file);
+
+          if(file && (file != stdin))
+            fclose(file);
+          if(err)
+            return err;
+        }
+        else {
+          GetStr(&postdata, p);
+          if(postdata)
+            size = strlen(postdata);
+        }
+
+        if(!postdata) {
+          /* no data from the file, point to a zero byte string to make this
+             get sent as a POST anyway */
+          postdata = strdup("");
+          if(!postdata)
+            return PARAM_NO_MEM;
+          size = 0;
+        }
+        else {
+          char *enc = curl_easy_escape(config->easy, postdata, (int)size);
+          Curl_safefree(postdata); /* no matter if it worked or not */
+          if(enc) {
+            /* now make a string with the name from above and append the
+               encoded string */
+            size_t outlen = nlen + strlen(enc) + 2;
+            char *n = malloc(outlen);
+            if(!n) {
+              curl_free(enc);
+              return PARAM_NO_MEM;
+            }
+            if(nlen > 0) { /* only append '=' if we have a name */
+              snprintf(n, outlen, "%.*s=%s", nlen, nextarg, enc);
+              size = outlen-1;
+            }
+            else {
+              strcpy(n, enc);
+              size = outlen-2; /* since no '=' was inserted */
+            }
+            curl_free(enc);
+            postdata = n;
+          }
+          else
+            return PARAM_NO_MEM;
+        }
+      }
+      else if('@' == *nextarg && !raw_mode) {
+        /* the data begins with a '@' letter, it means that a file name
+           or - (stdin) follows */
+        nextarg++; /* pass the @ */
+
+        if(!strcmp("-", nextarg)) {
+          file = stdin;
+          if(subletter == 'b') /* forced data-binary */
+            set_binmode(stdin);
+        }
+        else {
+          file = fopen(nextarg, "rb");
+          if(!file)
+            warnf(global, "Couldn't read data from file \"%s\", this makes "
+                  "an empty POST.\n", nextarg);
+        }
+
+        if(subletter == 'b')
+          /* forced binary */
+          err = file2memory(&postdata, &size, file);
+        else {
+          err = file2string(&postdata, file);
+          if(postdata)
+            size = strlen(postdata);
+        }
+
+        if(file && (file != stdin))
+          fclose(file);
+        if(err)
+          return err;
+
+        if(!postdata) {
+          /* no data from the file, point to a zero byte string to make this
+             get sent as a POST anyway */
+          postdata = strdup("");
+          if(!postdata)
+            return PARAM_NO_MEM;
+        }
+      }
+      else {
+        GetStr(&postdata, nextarg);
+        if(postdata)
+          size = strlen(postdata);
+      }
+
+#ifdef CURL_DOES_CONVERSIONS
+      if(subletter != 'b') {
+        /* NOT forced binary, convert to ASCII */
+        if(convert_to_network(postdata, strlen(postdata))) {
+          Curl_safefree(postdata);
+          return PARAM_NO_MEM;
+        }
+      }
+#endif
+
+      if(config->postfields) {
+        /* we already have a string, we append this one with a separating
+           &-letter */
+        char *oldpost = config->postfields;
+        curl_off_t oldlen = config->postfieldsize;
+        curl_off_t newlen = oldlen + curlx_uztoso(size) + 2;
+        config->postfields = malloc((size_t)newlen);
+        if(!config->postfields) {
+          Curl_safefree(oldpost);
+          Curl_safefree(postdata);
+          return PARAM_NO_MEM;
+        }
+        memcpy(config->postfields, oldpost, (size_t)oldlen);
+        /* use byte value 0x26 for '&' to accommodate non-ASCII platforms */
+        config->postfields[oldlen] = '\x26';
+        memcpy(&config->postfields[oldlen+1], postdata, size);
+        config->postfields[oldlen+1+size] = '\0';
+        Curl_safefree(oldpost);
+        Curl_safefree(postdata);
+        config->postfieldsize += size+1;
+      }
+      else {
+        config->postfields = postdata;
+        config->postfieldsize = curlx_uztoso(size);
+      }
+    }
+    /*
+      We can't set the request type here, as this data might be used in
+      a simple GET if -G is used. Already or soon.
+
+      if(SetHTTPrequest(HTTPREQ_SIMPLEPOST, &config->httpreq)) {
+        Curl_safefree(postdata);
+        return PARAM_BAD_USE;
+      }
+    */
+    break;
+    case 'D':
+      /* dump-header to given file name */
+      GetStr(&config->headerfile, nextarg);
+      break;
+    case 'e':
+    {
+      char *ptr = strstr(nextarg, ";auto");
+      if(ptr) {
+        /* Automatic referer requested, this may be combined with a
+           set initial one */
+        config->autoreferer = TRUE;
+        *ptr = 0; /* zero terminate here */
+      }
+      else
+        config->autoreferer = FALSE;
+      GetStr(&config->referer, nextarg);
+    }
+    break;
+    case 'E':
+      switch(subletter) {
+      case '\0': /* certificate file */
+        GetFileAndPassword(nextarg, &config->cert, &config->key_passwd);
+        break;
+      case 'a': /* CA info PEM file */
+        /* CA info PEM file */
+        GetStr(&config->cacert, nextarg);
+        break;
+      case 'b': /* cert file type */
+        GetStr(&config->cert_type, nextarg);
+        break;
+      case 'c': /* private key file */
+        GetStr(&config->key, nextarg);
+        break;
+      case 'd': /* private key file type */
+        GetStr(&config->key_type, nextarg);
+        break;
+      case 'e': /* private key passphrase */
+        GetStr(&config->key_passwd, nextarg);
+        cleanarg(nextarg);
+        break;
+      case 'f': /* crypto engine */
+        GetStr(&config->engine, nextarg);
+        if(config->engine && curl_strequal(config->engine, "list"))
+          return PARAM_ENGINES_REQUESTED;
+        break;
+      case 'g': /* CA info PEM file */
+        /* CA cert directory */
+        GetStr(&config->capath, nextarg);
+        break;
+      case 'h': /* --pubkey public key file */
+        GetStr(&config->pubkey, nextarg);
+        break;
+      case 'i': /* --hostpubmd5 md5 of the host public key */
+        GetStr(&config->hostpubmd5, nextarg);
+        if(!config->hostpubmd5 || strlen(config->hostpubmd5) != 32)
+          return PARAM_BAD_USE;
+        break;
+      case 'j': /* CRL info PEM file */
+        /* CRL file */
+        GetStr(&config->crlfile, nextarg);
+        break;
+      case 'k': /* TLS username */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP)
+          GetStr(&config->tls_username, nextarg);
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+      case 'l': /* TLS password */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP)
+          GetStr(&config->tls_password, nextarg);
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+      case 'm': /* TLS authentication type */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP) {
+          GetStr(&config->tls_authtype, nextarg);
+          if(!curl_strequal(config->tls_authtype, "SRP"))
+            return PARAM_LIBCURL_DOESNT_SUPPORT; /* only support TLS-SRP */
+        }
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+      case 'n': /* no empty SSL fragments, --ssl-allow-beast */
+        if(curlinfo->features & CURL_VERSION_SSL)
+          config->ssl_allow_beast = toggle;
+        break;
+
+      case 'o': /* --login-options */
+        GetStr(&config->login_options, nextarg);
+        break;
+
+      case 'p': /* Pinned public key DER file */
+        /* Pinned public key DER file */
+        GetStr(&config->pinnedpubkey, nextarg);
+        break;
+
+      case 'q': /* --cert-status */
+        config->verifystatus = TRUE;
+        break;
+
+      case 'r': /* --false-start */
+        config->falsestart = TRUE;
+        break;
+
+      case 's': /* --ssl-no-revoke */
+        if(curlinfo->features & CURL_VERSION_SSL)
+          config->ssl_no_revoke = TRUE;
+        break;
+
+      case 't': /* --tcp-fastopen */
+        config->tcp_fastopen = TRUE;
+        break;
+
+      case 'u': /* TLS username for proxy */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP)
+          GetStr(&config->proxy_tls_username, nextarg);
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+
+      case 'v': /* TLS password for proxy */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP)
+          GetStr(&config->proxy_tls_password, nextarg);
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+
+      case 'w': /* TLS authentication type for proxy */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP) {
+          GetStr(&config->proxy_tls_authtype, nextarg);
+          if(!curl_strequal(config->proxy_tls_authtype, "SRP"))
+            return PARAM_LIBCURL_DOESNT_SUPPORT; /* only support TLS-SRP */
+        }
+        else
+          return PARAM_LIBCURL_DOESNT_SUPPORT;
+        break;
+
+      case 'x': /* certificate file for proxy */
+        GetFileAndPassword(nextarg, &config->proxy_cert,
+                           &config->proxy_key_passwd);
+        break;
+
+      case 'y': /* cert file type for proxy */
+        GetStr(&config->proxy_cert_type, nextarg);
+        break;
+
+      case 'z': /* private key file for proxy */
+        GetStr(&config->proxy_key, nextarg);
+        break;
+
+      case '0': /* private key file type for proxy */
+        GetStr(&config->proxy_key_type, nextarg);
+        break;
+
+      case '1': /* private key passphrase for proxy */
+        GetStr(&config->proxy_key_passwd, nextarg);
+        cleanarg(nextarg);
+        break;
+
+      case '2': /* ciphers for proxy */
+        GetStr(&config->proxy_cipher_list, nextarg);
+        break;
+
+      case '3': /* CRL info PEM file for proxy */
+        /* CRL file */
+        GetStr(&config->proxy_crlfile, nextarg);
+        break;
+
+      case '4': /* no empty SSL fragments for proxy */
+        if(curlinfo->features & CURL_VERSION_SSL)
+          config->proxy_ssl_allow_beast = toggle;
+        break;
+
+      case '5': /* --login-options */
+        GetStr(&config->login_options, nextarg);
+        break;
+
+      case '6': /* CA info PEM file for proxy */
+        /* CA info PEM file */
+        GetStr(&config->proxy_cacert, nextarg);
+        break;
+
+      case '7': /* CA info PEM file for proxy */
+        /* CA cert directory */
+        GetStr(&config->proxy_capath, nextarg);
+        break;
+
+      case '8': /* allow insecure SSL connects for proxy */
+        config->proxy_insecure_ok = toggle;
+        break;
+
+      case '9':
+        /* TLS version 1 for proxy */
+        config->proxy_ssl_version = CURL_SSLVERSION_TLSv1;
+        break;
+
+      default: /* unknown flag */
+        return PARAM_OPTION_UNKNOWN;
+      }
+      break;
+    case 'f':
+      switch(subletter) {
+      case 'a': /* --fail-early */
+        global->fail_early = toggle;
+        break;
+      default:
+        /* fail hard on errors  */
+        config->failonerror = toggle;
+      }
+      break;
+    case 'F':
+      /* "form data" simulation, this is a little advanced so lets do our best
+         to sort this out slowly and carefully */
+      if(formparse(config,
+                   nextarg,
+                   &config->httppost,
+                   &config->last_post,
+                   (subletter=='s')?TRUE:FALSE)) /* 's' means literal string */
+        return PARAM_BAD_USE;
+      if(SetHTTPrequest(config, HTTPREQ_FORMPOST, &config->httpreq))
+        return PARAM_BAD_USE;
+      break;
+
+    case 'g': /* g disables URLglobbing */
+      config->globoff = toggle;
+      break;
+
+    case 'G': /* HTTP GET */
+      config->use_httpget = TRUE;
+      break;
+
+    case 'h': /* h for help */
+      if(toggle) {
+        return PARAM_HELP_REQUESTED;
+      }
+      /* we now actually support --no-help too! */
+      break;
+    case 'H':
+      /* A custom header to append to a list */
+      if(subletter == 'p') /* --proxy-header */
+        err = add2list(&config->proxyheaders, nextarg);
+      else
+        err = add2list(&config->headers, nextarg);
+      if(err)
+        return err;
+      break;
+    case 'i':
+      config->include_headers = toggle; /* include the headers as well in the
+                                           general output stream */
+      break;
+    case 'j':
+      config->cookiesession = toggle;
+      break;
+    case 'I':
+      /*
+       * no_body will imply include_headers later on
+       */
+      config->no_body = toggle;
+      if(SetHTTPrequest(config,
+                        (config->no_body)?HTTPREQ_HEAD:HTTPREQ_GET,
+                        &config->httpreq))
+        return PARAM_BAD_USE;
+      break;
+    case 'J': /* --remote-header-name */
+      if(config->include_headers) {
+        warnf(global,
+              "--include and --remote-header-name cannot be combined.\n");
+        return PARAM_BAD_USE;
+      }
+      config->content_disposition = toggle;
+      break;
+    case 'k': /* allow insecure SSL connects */
+      config->insecure_ok = toggle;
+      break;
+    case 'K': /* parse config file */
+      if(parseconfig(nextarg, global))
+        warnf(global, "error trying read config from the '%s' file\n",
+              nextarg);
+      break;
+    case 'l':
+      config->dirlistonly = toggle; /* only list the names of the FTP dir */
+      break;
+    case 'L':
+      config->followlocation = toggle; /* Follow Location: HTTP headers */
+      switch(subletter) {
+      case 't':
+        /* Continue to send authentication (user+password) when following
+         * locations, even when hostname changed */
+        config->unrestricted_auth = toggle;
+        break;
+      }
+      break;
+    case 'm':
+      /* specified max time */
+      err = str2udouble(&config->timeout, nextarg);
+      if(err)
+        return err;
+      break;
+    case 'M': /* M for manual, huge help */
+      if(toggle) { /* --no-manual shows no manual... */
+#ifdef USE_MANUAL
+        return PARAM_MANUAL_REQUESTED;
+#else
+        warnf(global,
+              "built-in manual was disabled at build-time!\n");
+        return PARAM_OPTION_UNKNOWN;
+#endif
+      }
+      break;
+    case 'n':
+      switch(subletter) {
+      case 'o': /* CA info PEM file */
+        /* use .netrc or URL */
+        config->netrc_opt = toggle;
+        break;
+      case 'e': /* netrc-file */
+        GetStr(&config->netrc_file, nextarg);
+        break;
+      default:
+        /* pick info from .netrc, if this is used for http, curl will
+           automatically enfore user+password with the request */
+        config->netrc = toggle;
+        break;
+      }
+      break;
+    case 'N':
+      /* disable the output I/O buffering. note that the option is called
+         --buffer but is mostly used in the negative form: --no-buffer */
+      if(longopt)
+        config->nobuffer = (!toggle)?TRUE:FALSE;
+      else
+        config->nobuffer = toggle;
+      break;
+    case 'O': /* --remote-name */
+      if(subletter == 'a') { /* --remote-name-all */
+        config->default_node_flags = toggle?GETOUT_USEREMOTE:0;
+        break;
+      }
+      /* fall-through! */
+    case 'o': /* --output */
+      /* output file */
+    {
+      struct getout *url;
+      if(!config->url_out)
+        config->url_out = config->url_list;
+      if(config->url_out) {
+        /* there's a node here, if it already is filled-in continue to find
+           an "empty" node */
+        while(config->url_out && (config->url_out->flags & GETOUT_OUTFILE))
+          config->url_out = config->url_out->next;
+      }
+
+      /* now there might or might not be an available node to fill in! */
+
+      if(config->url_out)
+        /* existing node */
+        url = config->url_out;
+      else
+        /* there was no free node, create one! */
+        url = new_getout(config);
+
+      if(!url)
+        return PARAM_NO_MEM;
+
+      /* fill in the outfile */
+      if('o' == letter) {
+        GetStr(&url->outfile, nextarg);
+        url->flags &= ~GETOUT_USEREMOTE; /* switch off */
+      }
+      else {
+        url->outfile = NULL; /* leave it */
+        if(toggle)
+          url->flags |= GETOUT_USEREMOTE;  /* switch on */
+        else
+          url->flags &= ~GETOUT_USEREMOTE; /* switch off */
+      }
+      url->flags |= GETOUT_OUTFILE;
+    }
+    break;
+    case 'P':
+      /* This makes the FTP sessions use PORT instead of PASV */
+      /* use <eth0> or <192.168.10.10> style addresses. Anything except
+         this will make us try to get the "default" address.
+         NOTE: this is a changed behaviour since the released 4.1!
+      */
+      GetStr(&config->ftpport, nextarg);
+      break;
+    case 'p':
+      /* proxy tunnel for non-http protocols */
+      config->proxytunnel = toggle;
+      break;
+
+    case 'q': /* if used first, already taken care of, we do it like
+                 this so we don't cause an error! */
+      break;
+    case 'Q':
+      /* QUOTE command to send to FTP server */
+      switch(nextarg[0]) {
+      case '-':
+        /* prefixed with a dash makes it a POST TRANSFER one */
+        nextarg++;
+        err = add2list(&config->postquote, nextarg);
+        break;
+      case '+':
+        /* prefixed with a plus makes it a just-before-transfer one */
+        nextarg++;
+        err = add2list(&config->prequote, nextarg);
+        break;
+      default:
+        err = add2list(&config->quote, nextarg);
+        break;
+      }
+      if(err)
+        return err;
+      break;
+    case 'r':
+      /* Specifying a range WITHOUT A DASH will create an illegal HTTP range
+         (and won't actually be range by definition). The man page previously
+         claimed that to be a good way, why this code is added to work-around
+         it. */
+      if(ISDIGIT(*nextarg) && !strchr(nextarg, '-')) {
+        char buffer[32];
+        curl_off_t off;
+        warnf(global,
+              "A specified range MUST include at least one dash (-). "
+              "Appending one for you!\n");
+        off = curlx_strtoofft(nextarg, NULL, 10);
+        snprintf(buffer, sizeof(buffer), "%" CURL_FORMAT_CURL_OFF_T "-", off);
+        Curl_safefree(config->range);
+        config->range = strdup(buffer);
+        if(!config->range)
+          return PARAM_NO_MEM;
+      }
+      {
+        /* byte range requested */
+        char *tmp_range;
+        tmp_range = nextarg;
+        while(*tmp_range != '\0') {
+          if(!ISDIGIT(*tmp_range) && *tmp_range != '-' && *tmp_range != ',') {
+            warnf(global, "Invalid character is found in given range. "
+                  "A specified range MUST have only digits in "
+                  "\'start\'-\'stop\'. The server's response to this "
+                  "request is uncertain.\n");
+            break;
+          }
+          tmp_range++;
+        }
+        /* byte range requested */
+        GetStr(&config->range, nextarg);
+      }
+      break;
+    case 'R':
+      /* use remote file's time */
+      config->remote_time = toggle;
+      break;
+    case 's':
+      /* don't show progress meter, don't show errors : */
+      if(toggle)
+        global->mute = global->noprogress = TRUE;
+      else
+        global->mute = global->noprogress = FALSE;
+      if(global->showerror < 0)
+        /* if still on the default value, set showerror to the reverse of
+           toggle. This is to allow -S and -s to be used in an independent
+           order but still have the same effect. */
+        global->showerror = (!toggle)?TRUE:FALSE; /* toggle off */
+      break;
+    case 'S':
+      /* show errors */
+      global->showerror = toggle?1:0; /* toggle on if used with -s */
+      break;
+    case 't':
+      /* Telnet options */
+      err = add2list(&config->telnet_options, nextarg);
+      if(err)
+        return err;
+      break;
+    case 'T':
+      /* we are uploading */
+    {
+      struct getout *url;
+      if(!config->url_out)
+        config->url_out = config->url_list;
+      if(config->url_out) {
+        /* there's a node here, if it already is filled-in continue to find
+           an "empty" node */
+        while(config->url_out && (config->url_out->flags & GETOUT_UPLOAD))
+          config->url_out = config->url_out->next;
+      }
+
+      /* now there might or might not be an available node to fill in! */
+
+      if(config->url_out)
+        /* existing node */
+        url = config->url_out;
+      else
+        /* there was no free node, create one! */
+        url = new_getout(config);
+
+      if(!url)
+        return PARAM_NO_MEM;
+
+      url->flags |= GETOUT_UPLOAD; /* mark -T used */
+      if(!*nextarg)
+        url->flags |= GETOUT_NOUPLOAD;
+      else {
+        /* "-" equals stdin, but keep the string around for now */
+        GetStr(&url->infile, nextarg);
+      }
+    }
+    break;
+    case 'u':
+      /* user:password  */
+      GetStr(&config->userpwd, nextarg);
+      cleanarg(nextarg);
+      break;
+    case 'U':
+      /* Proxy user:password  */
+      GetStr(&config->proxyuserpwd, nextarg);
+      cleanarg(nextarg);
+      break;
+    case 'v':
+      if(toggle) {
+        /* the '%' thing here will cause the trace get sent to stderr */
+        Curl_safefree(global->trace_dump);
+        global->trace_dump = strdup("%");
+        if(!global->trace_dump)
+          return PARAM_NO_MEM;
+        if(global->tracetype && (global->tracetype != TRACE_PLAIN))
+          warnf(global,
+                "-v, --verbose overrides an earlier trace/verbose option\n");
+        global->tracetype = TRACE_PLAIN;
+      }
+      else
+        /* verbose is disabled here */
+        global->tracetype = TRACE_NONE;
+      break;
+    case 'V':
+      if(toggle)    /* --no-version yields no output! */
+        return PARAM_VERSION_INFO_REQUESTED;
+      break;
+
+    case 'w':
+      /* get the output string */
+      if('@' == *nextarg) {
+        /* the data begins with a '@' letter, it means that a file name
+           or - (stdin) follows */
+        FILE *file;
+        const char *fname;
+        nextarg++; /* pass the @ */
+        if(!strcmp("-", nextarg)) {
+          fname = "<stdin>";
+          file = stdin;
+        }
+        else {
+          fname = nextarg;
+          file = fopen(nextarg, FOPEN_READTEXT);
+        }
+        err = file2string(&config->writeout, file);
+        if(file && (file != stdin))
+          fclose(file);
+        if(err)
+          return err;
+        if(!config->writeout)
+          warnf(global, "Failed to read %s", fname);
+      }
+      else
+        GetStr(&config->writeout, nextarg);
+      break;
+    case 'x':
+      switch(subletter) {
+      case 'a': /* --preproxy */
+        GetStr(&config->preproxy, nextarg);
+        break;
+      default:
+        /* --proxy */
+        GetStr(&config->proxy, nextarg);
+        config->proxyver = CURLPROXY_HTTP;
+        break;
+      }
+      break;
+    case 'X':
+      /* set custom request */
+      GetStr(&config->customrequest, nextarg);
+      break;
+    case 'y':
+      /* low speed time */
+      err = str2unum(&config->low_speed_time, nextarg);
+      if(err)
+        return err;
+      if(!config->low_speed_limit)
+        config->low_speed_limit = 1;
+      break;
+    case 'Y':
+      /* low speed limit */
+      err = str2unum(&config->low_speed_limit, nextarg);
+      if(err)
+        return err;
+      if(!config->low_speed_time)
+        config->low_speed_time = 30;
+      break;
+    case 'z': /* time condition coming up */
+      switch(*nextarg) {
+      case '+':
+        nextarg++;
+        /* FALLTHROUGH */
+      default:
+        /* If-Modified-Since: (section 14.28 in RFC2068) */
+        config->timecond = CURL_TIMECOND_IFMODSINCE;
+        break;
+      case '-':
+        /* If-Unmodified-Since:  (section 14.24 in RFC2068) */
+        config->timecond = CURL_TIMECOND_IFUNMODSINCE;
+        nextarg++;
+        break;
+      case '=':
+        /* Last-Modified:  (section 14.29 in RFC2068) */
+        config->timecond = CURL_TIMECOND_LASTMOD;
+        nextarg++;
+        break;
+      }
+      now = time(NULL);
+      config->condtime=curl_getdate(nextarg, &now);
+      if(-1 == (int)config->condtime) {
+        /* now let's see if it is a file name to get the time from instead! */
+        struct_stat statbuf;
+        if(-1 == stat(nextarg, &statbuf)) {
+          /* failed, remove time condition */
+          config->timecond = CURL_TIMECOND_NONE;
+          warnf(global,
+                "Illegal date format for -z, --time-cond (and not "
+                "a file name). Disabling time condition. "
+                "See curl_getdate(3) for valid date syntax.\n");
+        }
+        else {
+          /* pull the time out from the file */
+          config->condtime = statbuf.st_mtime;
+        }
+      }
+      break;
+    default: /* unknown flag */
+      return PARAM_OPTION_UNKNOWN;
+    }
+    hit = -1;
+
+  } while(!longopt && !singleopt && *++parse && !*usedarg);
+
+  return PARAM_OK;
+}
+
+ParameterError parse_args(struct GlobalConfig *config, int argc,
+                          argv_item_t argv[])
+{
+  int i;
+  bool stillflags;
+  char *orig_opt = NULL;
+  ParameterError result = PARAM_OK;
+  struct OperationConfig *operation = config->first;
+
+  for(i = 1, stillflags = TRUE; i < argc && !result; i++) {
+    orig_opt = argv[i];
+
+    if(stillflags && ('-' == argv[i][0])) {
+      char *nextarg;
+      bool passarg;
+      char *flag = argv[i];
+
+      if(!strcmp("--", argv[i]))
+        /* This indicates the end of the flags and thus enables the
+           following (URL) argument to start with -. */
+        stillflags = FALSE;
+      else {
+        nextarg = (i < (argc - 1)) ? argv[i + 1] : NULL;
+
+        result = getparameter(flag, nextarg, &passarg, config, operation);
+        if(result == PARAM_NEXT_OPERATION) {
+          /* Reset result as PARAM_NEXT_OPERATION is only used here and not
+             returned from this function */
+          result = PARAM_OK;
+
+          if(operation->url_list && operation->url_list->url) {
+            /* Allocate the next config */
+            operation->next = malloc(sizeof(struct OperationConfig));
+            if(operation->next) {
+              /* Initialise the newly created config */
+              config_init(operation->next);
+
+              /* Copy the easy handle */
+              operation->next->easy = config->easy;
+
+              /* Set the global config pointer */
+              operation->next->global = config;
+
+              /* Update the last operation pointer */
+              config->last = operation->next;
+
+              /* Move onto the new config */
+              operation->next->prev = operation;
+              operation = operation->next;
+            }
+            else
+              result = PARAM_NO_MEM;
+          }
+        }
+        else if(!result && passarg)
+          i++; /* we're supposed to skip this */
+      }
+    }
+    else {
+      bool used;
+
+      /* Just add the URL please */
+      result = getparameter((char *)"--url", argv[i], &used, config,
+                            operation);
+    }
+  }
+
+  if(result && result != PARAM_HELP_REQUESTED &&
+     result != PARAM_MANUAL_REQUESTED &&
+     result != PARAM_VERSION_INFO_REQUESTED &&
+     result != PARAM_ENGINES_REQUESTED) {
+    const char *reason = param2text(result);
+
+    if(orig_opt && strcmp(":", orig_opt))
+      helpf(config->errors, "option %s: %s\n", orig_opt, reason);
+    else
+      helpf(config->errors, "%s\n", reason);
+  }
+
+  return result;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_getparam.h b/ap/lib/libcurl/curl-7.54.1/src/tool_getparam.h
new file mode 100644
index 0000000..29e1588
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_getparam.h
@@ -0,0 +1,64 @@
+#ifndef HEADER_CURL_TOOL_GETPARAM_H
+#define HEADER_CURL_TOOL_GETPARAM_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+typedef enum {
+  PARAM_OK = 0,
+  PARAM_OPTION_AMBIGUOUS,
+  PARAM_OPTION_UNKNOWN,
+  PARAM_REQUIRES_PARAMETER,
+  PARAM_BAD_USE,
+  PARAM_HELP_REQUESTED,
+  PARAM_MANUAL_REQUESTED,
+  PARAM_VERSION_INFO_REQUESTED,
+  PARAM_ENGINES_REQUESTED,
+  PARAM_GOT_EXTRA_PARAMETER,
+  PARAM_BAD_NUMERIC,
+  PARAM_NEGATIVE_NUMERIC,
+  PARAM_LIBCURL_DOESNT_SUPPORT,
+  PARAM_LIBCURL_UNSUPPORTED_PROTOCOL,
+  PARAM_NO_MEM,
+  PARAM_NEXT_OPERATION,
+  PARAM_NO_PREFIX,
+  PARAM_LAST
+} ParameterError;
+
+struct GlobalConfig;
+struct OperationConfig;
+
+ParameterError getparameter(const char *flag, char *nextarg, bool *usedarg,
+                            struct GlobalConfig *global,
+                            struct OperationConfig *operation);
+
+#ifdef UNITTESTS
+void parse_cert_parameter(const char *cert_parameter,
+                          char **certname,
+                          char **passphrase);
+#endif
+
+ParameterError parse_args(struct GlobalConfig *config, int argc,
+                          argv_item_t argv[]);
+
+#endif /* HEADER_CURL_TOOL_GETPARAM_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_getpass.c b/ap/lib/libcurl/curl-7.54.1/src/tool_getpass.c
new file mode 100644
index 0000000..e5e2d6d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_getpass.c
@@ -0,0 +1,254 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+#ifndef HAVE_GETPASS_R
+/* this file is only for systems without getpass_r() */
+
+#ifdef HAVE_FCNTL_H
+#  include <fcntl.h>
+#endif
+
+#ifdef HAVE_TERMIOS_H
+#  include <termios.h>
+#elif defined(HAVE_TERMIO_H)
+#  include <termio.h>
+#endif
+
+#ifdef __VMS
+#  include descrip
+#  include starlet
+#  include iodef
+#endif
+
+#ifdef WIN32
+#  include <conio.h>
+#endif
+
+#ifdef NETWARE
+#  ifdef __NOVELL_LIBC__
+#    include <screen.h>
+#  else
+#    include <nwconio.h>
+#  endif
+#endif
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#include "tool_getpass.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef __VMS
+/* VMS implementation */
+char *getpass_r(const char *prompt, char *buffer, size_t buflen)
+{
+  long sts;
+  short chan;
+
+  /* MSK, 23-JAN-2004, iosbdef.h wasn't in VAX V7.2 or CC 6.4  */
+  /* distribution so I created this.  May revert back later to */
+  /* struct _iosb iosb;                                        */
+  struct _iosb
+     {
+     short int iosb$w_status; /* status     */
+     short int iosb$w_bcnt;   /* byte count */
+     int       unused;        /* unused     */
+     } iosb;
+
+  $DESCRIPTOR(ttdesc, "TT");
+
+  buffer[0] = '\0';
+  sts = sys$assign(&ttdesc, &chan, 0, 0);
+  if(sts & 1) {
+    sts = sys$qiow(0, chan,
+                   IO$_READPROMPT | IO$M_NOECHO,
+                   &iosb, 0, 0, buffer, buflen, 0, 0,
+                   prompt, strlen(prompt));
+
+    if((sts & 1) && (iosb.iosb$w_status & 1))
+      buffer[iosb.iosb$w_bcnt] = '\0';
+
+    sts = sys$dassgn(chan);
+  }
+  return buffer; /* we always return success */
+}
+#define DONE
+#endif /* __VMS */
+
+#ifdef __SYMBIAN32__
+#  define getch() getchar()
+#endif
+
+#if defined(WIN32) || defined(__SYMBIAN32__)
+
+char *getpass_r(const char *prompt, char *buffer, size_t buflen)
+{
+  size_t i;
+  fputs(prompt, stderr);
+
+  for(i = 0; i < buflen; i++) {
+    buffer[i] = (char)getch();
+    if(buffer[i] == '\r' || buffer[i] == '\n') {
+      buffer[i] = '\0';
+      break;
+    }
+    else
+      if(buffer[i] == '\b')
+        /* remove this letter and if this is not the first key, remove the
+           previous one as well */
+        i = i - (i >= 1 ? 2 : 1);
+  }
+#ifndef __SYMBIAN32__
+  /* since echo is disabled, print a newline */
+  fputs("\n", stderr);
+#endif
+  /* if user didn't hit ENTER, terminate buffer */
+  if(i == buflen)
+    buffer[buflen-1] = '\0';
+
+  return buffer; /* we always return success */
+}
+#define DONE
+#endif /* WIN32 || __SYMBIAN32__ */
+
+#ifdef NETWARE
+/* NetWare implementation */
+#ifdef __NOVELL_LIBC__
+char *getpass_r(const char *prompt, char *buffer, size_t buflen)
+{
+  return getpassword(prompt, buffer, buflen);
+}
+#else
+char *getpass_r(const char *prompt, char *buffer, size_t buflen)
+{
+  size_t i = 0;
+
+  printf("%s", prompt);
+  do {
+    buffer[i++] = getch();
+    if(buffer[i-1] == '\b') {
+      /* remove this letter and if this is not the first key,
+         remove the previous one as well */
+      if(i > 1) {
+        printf("\b \b");
+        i = i - 2;
+      }
+      else {
+        RingTheBell();
+        i = i - 1;
+      }
+    }
+    else if(buffer[i-1] != 13)
+      putchar('*');
+
+  } while((buffer[i-1] != 13) && (i < buflen));
+  buffer[i-1] = '\0';
+  printf("\r\n");
+  return buffer;
+}
+#endif /* __NOVELL_LIBC__ */
+#define DONE
+#endif /* NETWARE */
+
+#ifndef DONE /* not previously provided */
+
+#ifdef HAVE_TERMIOS_H
+#  define struct_term  struct termios
+#elif defined(HAVE_TERMIO_H)
+#  define struct_term  struct termio
+#else
+#  undef  struct_term
+#endif
+
+static bool ttyecho(bool enable, int fd)
+{
+#ifdef struct_term
+  static struct_term withecho;
+  static struct_term noecho;
+#endif
+  if(!enable) {
+    /* disable echo by extracting the current 'withecho' mode and remove the
+       ECHO bit and set back the struct */
+#ifdef HAVE_TERMIOS_H
+    tcgetattr(fd, &withecho);
+    noecho = withecho;
+    noecho.c_lflag &= ~ECHO;
+    tcsetattr(fd, TCSANOW, &noecho);
+#elif defined(HAVE_TERMIO_H)
+    ioctl(fd, TCGETA, &withecho);
+    noecho = withecho;
+    noecho.c_lflag &= ~ECHO;
+    ioctl(fd, TCSETA, &noecho);
+#else
+    /* neither HAVE_TERMIO_H nor HAVE_TERMIOS_H, we can't disable echo! */
+    (void)fd;
+    return FALSE; /* not disabled */
+#endif
+    return TRUE; /* disabled */
+  }
+  /* re-enable echo, assumes we disabled it before (and set the structs we
+     now use to reset the terminal status) */
+#ifdef HAVE_TERMIOS_H
+  tcsetattr(fd, TCSAFLUSH, &withecho);
+#elif defined(HAVE_TERMIO_H)
+  ioctl(fd, TCSETA, &withecho);
+#else
+  return FALSE; /* not enabled */
+#endif
+  return TRUE; /* enabled */
+}
+
+char *getpass_r(const char *prompt, /* prompt to display */
+                char *password,     /* buffer to store password in */
+                size_t buflen)      /* size of buffer to store password in */
+{
+  ssize_t nread;
+  bool disabled;
+  int fd = open("/dev/tty", O_RDONLY);
+  if(-1 == fd)
+    fd = STDIN_FILENO; /* use stdin if the tty couldn't be used */
+
+  disabled = ttyecho(FALSE, fd); /* disable terminal echo */
+
+  fputs(prompt, stderr);
+  nread = read(fd, password, buflen);
+  if(nread > 0)
+    password[--nread] = '\0'; /* zero terminate where enter is stored */
+  else
+    password[0] = '\0'; /* got nothing */
+
+  if(disabled) {
+    /* if echo actually was disabled, add a newline */
+    fputs("\n", stderr);
+    (void)ttyecho(TRUE, fd); /* enable echo */
+  }
+
+  if(STDIN_FILENO != fd)
+    close(fd);
+
+  return password; /* return pointer to buffer */
+}
+
+#endif /* DONE */
+#endif /* HAVE_GETPASS_R */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_getpass.h b/ap/lib/libcurl/curl-7.54.1/src/tool_getpass.h
new file mode 100644
index 0000000..f639596
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_getpass.h
@@ -0,0 +1,36 @@
+#ifndef HEADER_CURL_TOOL_GETPASS_H
+#define HEADER_CURL_TOOL_GETPASS_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 "tool_setup.h"
+
+#ifndef HAVE_GETPASS_R
+/* If there's a system-provided function named like this, we trust it is
+   also found in one of the standard headers. */
+
+/*
+ * Returning NULL will abort the continued operation!
+ */
+char *getpass_r(const char *prompt, char *buffer, size_t buflen);
+#endif
+
+#endif /* HEADER_CURL_TOOL_GETPASS_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_help.c b/ap/lib/libcurl/curl-7.54.1/src/tool_help.c
new file mode 100644
index 0000000..46aae45
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_help.c
@@ -0,0 +1,567 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "tool_panykey.h"
+#include "tool_help.h"
+#include "tool_libinfo.h"
+#include "tool_version.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef MSDOS
+#  define USE_WATT32
+#endif
+
+/*
+ * The help output is generated with the following command
+ ---------------------------------------------------------
+
+  cd $srcroot/docs/cmdline-opts
+  ./gen.pl listhelp
+ */
+
+struct helptxt {
+  const char *opt;
+  const char *desc;
+};
+
+static const struct helptxt helptext[] = {
+  {"    --abstract-unix-socket <path>",
+   "Connect via abstract Unix domain socket"},
+  {"    --anyauth",
+   "Pick any authentication method"},
+  {"-a, --append",
+   "Append to target file when uploading"},
+  {"    --basic",
+   "Use HTTP Basic Authentication"},
+  {"    --cacert <CA certificate>",
+   "CA certificate to verify peer against"},
+  {"    --capath <dir>",
+   "CA directory to verify peer against"},
+  {"-E, --cert <certificate[:password]>",
+   "Client certificate file and password"},
+  {"    --cert-status",
+   "Verify the status of the server certificate"},
+  {"    --cert-type <type>",
+   "Certificate file type (DER/PEM/ENG)"},
+  {"    --ciphers <list of ciphers>",
+   "SSL ciphers to use"},
+  {"    --compressed",
+   "Request compressed response"},
+  {"-K, --config <file>",
+   "Read config from a file"},
+  {"    --connect-timeout <seconds>",
+   "Maximum time allowed for connection"},
+  {"    --connect-to <HOST1:PORT1:HOST2:PORT2>",
+   "Connect to host"},
+  {"-C, --continue-at <offset>",
+   "Resumed transfer offset"},
+  {"-b, --cookie <data>",
+   "Send cookies from string/file"},
+  {"-c, --cookie-jar <filename>",
+   "Write cookies to <filename> after operation"},
+  {"    --create-dirs",
+   "Create necessary local directory hierarchy"},
+  {"    --crlf",
+   "Convert LF to CRLF in upload"},
+  {"    --crlfile <file>",
+   "Get a CRL list in PEM format from the given file"},
+  {"-d, --data <data>",
+   "HTTP POST data"},
+  {"    --data-ascii <data>",
+   "HTTP POST ASCII data"},
+  {"    --data-binary <data>",
+   "HTTP POST binary data"},
+  {"    --data-raw <data>",
+   "HTTP POST data, '@' allowed"},
+  {"    --data-urlencode <data>",
+   "HTTP POST data url encoded"},
+  {"    --delegation <LEVEL>",
+   "GSS-API delegation permission"},
+  {"    --digest",
+   "Use HTTP Digest Authentication"},
+  {"-q, --disable",
+   "Disable .curlrc"},
+  {"    --disable-eprt",
+   "Inhibit using EPRT or LPRT"},
+  {"    --disable-epsv",
+   "Inhibit using EPSV"},
+  {"    --dns-interface <interface>",
+   "Interface to use for DNS requests"},
+  {"    --dns-ipv4-addr <address>",
+   "IPv4 address to use for DNS requests"},
+  {"    --dns-ipv6-addr <address>",
+   "IPv6 address to use for DNS requests"},
+  {"    --dns-servers <addresses>",
+   "DNS server addrs to use"},
+  {"-D, --dump-header <filename>",
+   "Write the received headers to <filename>"},
+  {"    --egd-file <file>",
+   "EGD socket path for random data"},
+  {"    --engine <name>",
+   "Crypto engine to use"},
+  {"    --expect100-timeout <seconds>",
+   "How long to wait for 100-continue"},
+  {"-f, --fail",
+   "Fail silently (no output at all) on HTTP errors"},
+  {"    --fail-early",
+   "Fail on first transfer error, do not continue"},
+  {"    --false-start",
+   "Enable TLS False Start"},
+  {"-F, --form <name=content>",
+   "Specify HTTP multipart POST data"},
+  {"    --form-string <name=string>",
+   "Specify HTTP multipart POST data"},
+  {"    --ftp-account <data>",
+   "Account data string"},
+  {"    --ftp-alternative-to-user <command>",
+   "String to replace USER [name]"},
+  {"    --ftp-create-dirs",
+   "Create the remote dirs if not present"},
+  {"    --ftp-method <method>",
+   "Control CWD usage"},
+  {"    --ftp-pasv",
+   "Use PASV/EPSV instead of PORT"},
+  {"-P, --ftp-port <address>",
+   "Use PORT instead of PASV"},
+  {"    --ftp-pret",
+   "Send PRET before PASV"},
+  {"    --ftp-skip-pasv-ip",
+   "Skip the IP address for PASV"},
+  {"    --ftp-ssl-ccc",
+   "Send CCC after authenticating"},
+  {"    --ftp-ssl-ccc-mode <active/passive>",
+   "Set CCC mode"},
+  {"    --ftp-ssl-control",
+   "Require SSL/TLS for FTP login, clear for transfer"},
+  {"-G, --get",
+   "Put the post data in the URL and use GET"},
+  {"-g, --globoff",
+   "Disable URL sequences and ranges using {} and []"},
+  {"-I, --head",
+   "Show document info only"},
+  {"-H, --header <header>",
+   "Pass custom header LINE to server"},
+  {"-h, --help",
+   "This help text"},
+  {"    --hostpubmd5 <md5>",
+   "Acceptable MD5 hash of the host public key"},
+  {"-0, --http1.0",
+   "Use HTTP 1.0"},
+  {"    --http1.1",
+   "Use HTTP 1.1"},
+  {"    --http2",
+   "Use HTTP 2"},
+  {"    --http2-prior-knowledge",
+   "Use HTTP 2 without HTTP/1.1 Upgrade"},
+  {"    --ignore-content-length",
+   "Ignore the size of the remote resource"},
+  {"-i, --include",
+   "Include protocol headers in the output"},
+  {"-k, --insecure",
+   "Allow insecure server connections when using SSL"},
+  {"    --interface <name>",
+   "Use network INTERFACE (or address)"},
+  {"-4, --ipv4",
+   "Resolve names to IPv4 addresses"},
+  {"-6, --ipv6",
+   "Resolve names to IPv6 addresses"},
+  {"-j, --junk-session-cookies",
+   "Ignore session cookies read from file"},
+  {"    --keepalive-time <seconds>",
+   "Interval time for keepalive probes"},
+  {"    --key <key>",
+   "Private key file name"},
+  {"    --key-type <type>",
+   "Private key file type (DER/PEM/ENG)"},
+  {"    --krb <level>",
+   "Enable Kerberos with security <level>"},
+  {"    --libcurl <file>",
+   "Dump libcurl equivalent code of this command line"},
+  {"    --limit-rate <speed>",
+   "Limit transfer speed to RATE"},
+  {"-l, --list-only",
+   "List only mode"},
+  {"    --local-port <num/range>",
+   "Force use of RANGE for local port numbers"},
+  {"-L, --location",
+   "Follow redirects"},
+  {"    --location-trusted",
+   "Like --location, and send auth to other hosts"},
+  {"    --login-options <options>",
+   "Server login options"},
+  {"    --mail-auth <address>",
+   "Originator address of the original email"},
+  {"    --mail-from <address>",
+   "Mail from this address"},
+  {"    --mail-rcpt <address>",
+   "Mail from this address"},
+  {"-M, --manual",
+   "Display the full manual"},
+  {"    --max-filesize <bytes>",
+   "Maximum file size to download"},
+  {"    --max-redirs <num>",
+   "Maximum number of redirects allowed"},
+  {"-m, --max-time <time>",
+   "Maximum time allowed for the transfer"},
+  {"    --metalink",
+   "Process given URLs as metalink XML file"},
+  {"    --negotiate",
+   "Use HTTP Negotiate (SPNEGO) authentication"},
+  {"-n, --netrc",
+   "Must read .netrc for user name and password"},
+  {"    --netrc-file <filename>",
+   "Specify FILE for netrc"},
+  {"    --netrc-optional",
+   "Use either .netrc or URL"},
+  {"-:, --next",
+   "Make next URL use its separate set of options"},
+  {"    --no-alpn",
+   "Disable the ALPN TLS extension"},
+  {"-N, --no-buffer",
+   "Disable buffering of the output stream"},
+  {"    --no-keepalive",
+   "Disable TCP keepalive on the connection"},
+  {"    --no-npn",
+   "Disable the NPN TLS extension"},
+  {"    --no-sessionid",
+   "Disable SSL session-ID reusing"},
+  {"    --noproxy <no-proxy-list>",
+   "List of hosts which do not use proxy"},
+  {"    --ntlm",
+   "Use HTTP NTLM authentication"},
+  {"    --ntlm-wb",
+   "Use HTTP NTLM authentication with winbind"},
+  {"    --oauth2-bearer",
+   "OAuth 2 Bearer Token"},
+  {"-o, --output <file>",
+   "Write to file instead of stdout"},
+  {"    --pass <phrase>",
+   "Pass phrase for the private key"},
+  {"    --path-as-is",
+   "Do not squash .. sequences in URL path"},
+  {"    --pinnedpubkey <hashes>",
+   "FILE/HASHES Public key to verify peer against"},
+  {"    --post301",
+   "Do not switch to GET after following a 301"},
+  {"    --post302",
+   "Do not switch to GET after following a 302"},
+  {"    --post303",
+   "Do not switch to GET after following a 303"},
+  {"    --preproxy [protocol://]host[:port]",
+   "Use this proxy first"},
+  {"-#, --progress-bar",
+   "Display transfer progress as a bar"},
+  {"    --proto <protocols>",
+   "Enable/disable PROTOCOLS"},
+  {"    --proto-default <protocol>",
+   "Use PROTOCOL for any URL missing a scheme"},
+  {"    --proto-redir <protocols>",
+   "Enable/disable PROTOCOLS on redirect"},
+  {"-x, --proxy [protocol://]host[:port]",
+   "Use this proxy"},
+  {"    --proxy-anyauth",
+   "Pick any proxy authentication method"},
+  {"    --proxy-basic",
+   "Use Basic authentication on the proxy"},
+  {"    --proxy-cacert <file>",
+   "CA certificate to verify peer against for proxy"},
+  {"    --proxy-capath <dir>",
+   "CA directory to verify peer against for proxy"},
+  {"    --proxy-cert <cert[:passwd]>",
+   "Set client certificate for proxy"},
+  {"    --proxy-cert-type <type>",
+   "Client certificate type for HTTS proxy"},
+  {"    --proxy-ciphers <list>",
+   "SSL ciphers to use for proxy"},
+  {"    --proxy-crlfile <file>",
+   "Set a CRL list for proxy"},
+  {"    --proxy-digest",
+   "Use Digest authentication on the proxy"},
+  {"    --proxy-header <header>",
+   "Pass custom header LINE to proxy"},
+  {"    --proxy-insecure",
+   "Do HTTPS proxy connections without verifying the proxy"},
+  {"    --proxy-key <key>",
+   "Private key for HTTPS proxy"},
+  {"    --proxy-key-type <type>",
+   "Private key file type for proxy"},
+  {"    --proxy-negotiate",
+   "Use HTTP Negotiate (SPNEGO) authentication on the proxy"},
+  {"    --proxy-ntlm",
+   "Use NTLM authentication on the proxy"},
+  {"    --proxy-pass <phrase>",
+   "Pass phrase for the private key for HTTPS proxy"},
+  {"    --proxy-service-name <name>",
+   "SPNEGO proxy service name"},
+  {"    --proxy-ssl-allow-beast",
+   "Allow security flaw for interop for HTTPS proxy"},
+  {"    --proxy-tlsauthtype <type>",
+   "TLS authentication type for HTTPS proxy"},
+  {"    --proxy-tlspassword <string>",
+   "TLS password for HTTPS proxy"},
+  {"    --proxy-tlsuser <name>",
+   "TLS username for HTTPS proxy"},
+  {"    --proxy-tlsv1",
+   "Use TLSv1 for HTTPS proxy"},
+  {"-U, --proxy-user <user:password>",
+   "Proxy user and password"},
+  {"    --proxy1.0 <host[:port]>",
+   "Use HTTP/1.0 proxy on given port"},
+  {"-p, --proxytunnel",
+   "Operate through a HTTP proxy tunnel (using CONNECT)"},
+  {"    --pubkey <key>",
+   "SSH Public key file name"},
+  {"-Q, --quote",
+   "Send command(s) to server before transfer"},
+  {"    --random-file <file>",
+   "File for reading random data from"},
+  {"-r, --range <range>",
+   "Retrieve only the bytes within RANGE"},
+  {"    --raw",
+   "Do HTTP \"raw\"; no transfer decoding"},
+  {"-e, --referer <URL>",
+   "Referrer URL"},
+  {"-J, --remote-header-name",
+   "Use the header-provided filename"},
+  {"-O, --remote-name",
+   "Write output to a file named as the remote file"},
+  {"    --remote-name-all",
+   "Use the remote file name for all URLs"},
+  {"-R, --remote-time",
+   "Set the remote file's time on the local output"},
+  {"-X, --request <command>",
+   "Specify request command to use"},
+  {"    --resolve <host:port:address>",
+   "Resolve the host+port to this address"},
+  {"    --retry <num>",
+   "Retry request if transient problems occur"},
+  {"    --retry-connrefused",
+   "Retry on connection refused (use with --retry)"},
+  {"    --retry-delay <seconds>",
+   "Wait time between retries"},
+  {"    --retry-max-time <seconds>",
+   "Retry only within this period"},
+  {"    --sasl-ir",
+   "Enable initial response in SASL authentication"},
+  {"    --service-name <name>",
+   "SPNEGO service name"},
+  {"-S, --show-error",
+   "Show error even when -s is used"},
+  {"-s, --silent",
+   "Silent mode"},
+  {"    --socks4 <host[:port]>",
+   "SOCKS4 proxy on given host + port"},
+  {"    --socks4a <host[:port]>",
+   "SOCKS4a proxy on given host + port"},
+  {"    --socks5 <host[:port]>",
+   "SOCKS5 proxy on given host + port"},
+  {"    --socks5-gssapi-nec",
+   "Compatibility with NEC SOCKS5 server"},
+  {"    --socks5-gssapi-service <name>",
+   "SOCKS5 proxy service name for GSS-API"},
+  {"    --socks5-hostname <host[:port]>",
+   "SOCKS5 proxy, pass host name to proxy"},
+  {"-Y, --speed-limit <speed>",
+   "Stop transfers slower than this"},
+  {"-y, --speed-time <seconds>",
+   "Trigger 'speed-limit' abort after this time"},
+  {"    --ssl",
+   "Try SSL/TLS"},
+  {"    --ssl-allow-beast",
+   "Allow security flaw to improve interop"},
+  {"    --ssl-no-revoke",
+   "Disable cert revocation checks (WinSSL)"},
+  {"    --ssl-reqd",
+   "Require SSL/TLS"},
+  {"-2, --sslv2",
+   "Use SSLv2"},
+  {"-3, --sslv3",
+   "Use SSLv3"},
+  {"    --stderr",
+   "Where to redirect stderr"},
+  {"    --suppress-connect-headers",
+   "Suppress proxy CONNECT response headers"},
+  {"    --tcp-fastopen",
+   "Use TCP Fast Open"},
+  {"    --tcp-nodelay",
+   "Use the TCP_NODELAY option"},
+  {"-t, --telnet-option <opt=val>",
+   "Set telnet option"},
+  {"    --tftp-blksize <value>",
+   "Set TFTP BLKSIZE option"},
+  {"    --tftp-no-options",
+   "Do not send any TFTP options"},
+  {"-z, --time-cond <time>",
+   "Transfer based on a time condition"},
+  {"    --tls-max <VERSION>",
+   "Use TLSv1.0 or greater"},
+  {"    --tlsauthtype <type>",
+   "TLS authentication type"},
+  {"    --tlspassword",
+   "TLS password"},
+  {"    --tlsuser <name>",
+   "TLS user name"},
+  {"-1, --tlsv1",
+   "Use TLSv1.0 or greater"},
+  {"    --tlsv1.0",
+   "Use TLSv1.0"},
+  {"    --tlsv1.1",
+   "Use TLSv1.1"},
+  {"    --tlsv1.2",
+   "Use TLSv1.2"},
+  {"    --tlsv1.3",
+   "Use TLSv1.3"},
+  {"    --tr-encoding",
+   "Request compressed transfer encoding"},
+  {"    --trace <file>",
+   "Write a debug trace to FILE"},
+  {"    --trace-ascii <file>",
+   "Like --trace, but without hex output"},
+  {"    --trace-time",
+   "Add time stamps to trace/verbose output"},
+  {"    --unix-socket <path>",
+   "Connect through this Unix domain socket"},
+  {"-T, --upload-file <file>",
+   "Transfer local FILE to destination"},
+  {"    --url <url>",
+   "URL to work with"},
+  {"-B, --use-ascii",
+   "Use ASCII/text transfer"},
+  {"-u, --user <user:password>",
+   "Server user and password"},
+  {"-A, --user-agent <name>",
+   "Send User-Agent <name> to server"},
+  {"-v, --verbose",
+   "Make the operation more talkative"},
+  {"-V, --version",
+   "Show version number and quit"},
+  {"-w, --write-out <format>",
+   "Use output FORMAT after completion"},
+  {"    --xattr",
+   "Store metadata in extended file attributes"},
+  { NULL, NULL }
+};
+
+#ifdef NETWARE
+#  define PRINT_LINES_PAUSE 23
+#endif
+
+#ifdef __SYMBIAN32__
+#  define PRINT_LINES_PAUSE 16
+#endif
+
+struct feat {
+  const char *name;
+  int bitmask;
+};
+
+static const struct feat feats[] = {
+  {"AsynchDNS",      CURL_VERSION_ASYNCHDNS},
+  {"Debug",          CURL_VERSION_DEBUG},
+  {"TrackMemory",    CURL_VERSION_CURLDEBUG},
+  {"IDN",            CURL_VERSION_IDN},
+  {"IPv6",           CURL_VERSION_IPV6},
+  {"Largefile",      CURL_VERSION_LARGEFILE},
+  {"SSPI",           CURL_VERSION_SSPI},
+  {"GSS-API",        CURL_VERSION_GSSAPI},
+  {"Kerberos",       CURL_VERSION_KERBEROS5},
+  {"SPNEGO",         CURL_VERSION_SPNEGO},
+  {"NTLM",           CURL_VERSION_NTLM},
+  {"NTLM_WB",        CURL_VERSION_NTLM_WB},
+  {"SSL",            CURL_VERSION_SSL},
+  {"libz",           CURL_VERSION_LIBZ},
+  {"CharConv",       CURL_VERSION_CONV},
+  {"TLS-SRP",        CURL_VERSION_TLSAUTH_SRP},
+  {"HTTP2",          CURL_VERSION_HTTP2},
+  {"UnixSockets",    CURL_VERSION_UNIX_SOCKETS},
+  {"HTTPS-proxy",    CURL_VERSION_HTTPS_PROXY}
+};
+
+void tool_help(void)
+{
+  int i;
+  puts("Usage: curl [options...] <url>");
+  for(i = 0; helptext[i].opt; i++) {
+    printf(" %-19s %s\n", helptext[i].opt, helptext[i].desc);
+#ifdef PRINT_LINES_PAUSE
+    if(i && ((i % PRINT_LINES_PAUSE) == 0))
+      tool_pressanykey();
+#endif
+  }
+}
+
+void tool_version_info(void)
+{
+  const char *const *proto;
+
+  printf(CURL_ID "%s\n", curl_version());
+#ifdef CURL_PATCHSTAMP
+  printf("Release-Date: %s, security patched: %s\n",
+         LIBCURL_TIMESTAMP, CURL_PATCHSTAMP);
+#else
+  printf("Release-Date: %s\n", LIBCURL_TIMESTAMP);
+#endif
+  if(curlinfo->protocols) {
+    printf("Protocols: ");
+    for(proto = curlinfo->protocols; *proto; ++proto) {
+      printf("%s ", *proto);
+    }
+    puts(""); /* newline */
+  }
+  if(curlinfo->features) {
+    unsigned int i;
+    printf("Features: ");
+    for(i = 0; i < sizeof(feats)/sizeof(feats[0]); i++) {
+      if(curlinfo->features & feats[i].bitmask)
+        printf("%s ", feats[i].name);
+    }
+#ifdef USE_METALINK
+    printf("Metalink ");
+#endif
+#ifdef USE_LIBPSL
+    printf("PSL ");
+#endif
+    puts(""); /* newline */
+  }
+}
+
+void tool_list_engines(CURL *curl)
+{
+  struct curl_slist *engines = NULL;
+
+  /* Get the list of engines */
+  curl_easy_getinfo(curl, CURLINFO_SSL_ENGINES, &engines);
+
+  puts("Build-time engines:");
+  if(engines) {
+    for(; engines; engines = engines->next)
+      printf("  %s\n", engines->data);
+  }
+  else {
+    puts("  <none>");
+  }
+
+  /* Cleanup the list of engines */
+  curl_slist_free_all(engines);
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_help.h b/ap/lib/libcurl/curl-7.54.1/src/tool_help.h
new file mode 100644
index 0000000..43432d7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_help.h
@@ -0,0 +1,31 @@
+#ifndef HEADER_CURL_TOOL_HELP_H
+#define HEADER_CURL_TOOL_HELP_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 "tool_setup.h"
+
+void tool_help(void);
+void tool_list_engines(CURL *curl);
+void tool_version_info(void);
+
+#endif /* HEADER_CURL_TOOL_HELP_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_helpers.c b/ap/lib/libcurl/curl-7.54.1/src/tool_helpers.c
new file mode 100644
index 0000000..3d2dbe3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_helpers.c
@@ -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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_msgs.h"
+#include "tool_getparam.h"
+#include "tool_helpers.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/*
+** Helper functions that are used from more than one source file.
+*/
+
+const char *param2text(int res)
+{
+  ParameterError error = (ParameterError)res;
+  switch(error) {
+  case PARAM_GOT_EXTRA_PARAMETER:
+    return "had unsupported trailing garbage";
+  case PARAM_OPTION_UNKNOWN:
+    return "is unknown";
+  case PARAM_OPTION_AMBIGUOUS:
+    return "is ambiguous";
+  case PARAM_REQUIRES_PARAMETER:
+    return "requires parameter";
+  case PARAM_BAD_USE:
+    return "is badly used here";
+  case PARAM_BAD_NUMERIC:
+    return "expected a proper numerical parameter";
+  case PARAM_NEGATIVE_NUMERIC:
+    return "expected a positive numerical parameter";
+  case PARAM_LIBCURL_DOESNT_SUPPORT:
+    return "the installed libcurl version doesn't support this";
+  case PARAM_LIBCURL_UNSUPPORTED_PROTOCOL:
+    return "a specified protocol is unsupported by libcurl";
+  case PARAM_NO_MEM:
+    return "out of memory";
+  case PARAM_NO_PREFIX:
+    return "the given option can't be reversed with a --no- prefix";
+  default:
+    return "unknown error";
+  }
+}
+
+int SetHTTPrequest(struct OperationConfig *config, HttpReq req, HttpReq *store)
+{
+  /* this mirrors the HttpReq enum in tool_sdecls.h */
+  const char *reqname[]= {
+    "", /* unspec */
+    "GET (-G, --get)",
+    "HEAD (-I, --head)",
+    "multipart formpost (-F, --form)",
+    "POST (-d, --data)"
+  };
+
+  if((*store == HTTPREQ_UNSPEC) ||
+     (*store == req)) {
+    *store = req;
+    return 0;
+  }
+  warnf(config->global, "You can only select one HTTP request method! "
+        "You asked for both %s and %s.\n",
+        reqname[req], reqname[*store]);
+
+  return 1;
+}
+
+void customrequest_helper(struct OperationConfig *config, HttpReq req,
+                          char *method)
+{
+  /* this mirrors the HttpReq enum in tool_sdecls.h */
+  const char *dflt[]= {
+    "GET",
+    "GET",
+    "HEAD",
+    "POST",
+    "POST"
+  };
+
+  if(!method)
+    ;
+  else if(curl_strequal(method, dflt[req])) {
+    notef(config->global, "Unnecessary use of -X or --request, %s is already "
+          "inferred.\n", dflt[req]);
+  }
+  else if(curl_strequal(method, "head")) {
+    warnf(config->global,
+          "Setting custom HTTP method to HEAD with -X/--request may not work "
+          "the way you want. Consider using -I/--head instead.\n");
+  }
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_helpers.h b/ap/lib/libcurl/curl-7.54.1/src/tool_helpers.h
new file mode 100644
index 0000000..9ede16e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_helpers.h
@@ -0,0 +1,35 @@
+#ifndef HEADER_CURL_TOOL_HELPERS_H
+#define HEADER_CURL_TOOL_HELPERS_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+const char *param2text(int res);
+
+int SetHTTPrequest(struct OperationConfig *config, HttpReq req,
+                   HttpReq *store);
+
+void customrequest_helper(struct OperationConfig *config, HttpReq req,
+                          char *method);
+
+#endif /* HEADER_CURL_TOOL_HELPERS_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_homedir.c b/ap/lib/libcurl/curl-7.54.1/src/tool_homedir.c
new file mode 100644
index 0000000..483553d
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_homedir.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 "tool_setup.h"
+
+#ifdef HAVE_PWD_H
+#  include <pwd.h>
+#endif
+
+#include "tool_homedir.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+static char *GetEnv(const char *variable, char do_expand)
+{
+  char *env = NULL;
+#ifdef WIN32
+  char  buf1[1024], buf2[1024];
+  DWORD rc;
+
+  /* Don't use getenv(); it doesn't find variable added after program was
+   * started. Don't accept truncated results (i.e. rc >= sizeof(buf1)).  */
+
+  rc = GetEnvironmentVariableA(variable, buf1, sizeof(buf1));
+  if(rc > 0 && rc < sizeof(buf1)) {
+    env = buf1;
+    variable = buf1;
+  }
+  if(do_expand && strchr(variable, '%')) {
+    /* buf2 == variable if not expanded */
+    rc = ExpandEnvironmentStringsA(variable, buf2, sizeof(buf2));
+    if(rc > 0 && rc < sizeof(buf2) &&
+       !strchr(buf2, '%'))    /* no vars still unexpanded */
+      env = buf2;
+  }
+#else
+  (void)do_expand;
+  /* no length control */
+  env = getenv(variable);
+#endif
+  return (env && env[0]) ? strdup(env) : NULL;
+}
+
+/* return the home directory of the current user as an allocated string */
+char *homedir(void)
+{
+  char *home;
+
+  home = GetEnv("CURL_HOME", FALSE);
+  if(home)
+    return home;
+
+  home = GetEnv("HOME", FALSE);
+  if(home)
+    return home;
+
+#if defined(HAVE_GETPWUID) && defined(HAVE_GETEUID)
+ {
+   struct passwd *pw = getpwuid(geteuid());
+
+   if(pw) {
+     home = pw->pw_dir;
+     if(home && home[0])
+       home = strdup(home);
+     else
+       home = NULL;
+   }
+ }
+#endif /* PWD-stuff */
+#ifdef WIN32
+  home = GetEnv("APPDATA", TRUE);
+  if(!home)
+    home = GetEnv("%USERPROFILE%\\Application Data", TRUE); /* Normally only
+                                                               on Win-2K/XP */
+#endif /* WIN32 */
+  return home;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_homedir.h b/ap/lib/libcurl/curl-7.54.1/src/tool_homedir.h
new file mode 100644
index 0000000..98d94b8
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_homedir.h
@@ -0,0 +1,28 @@
+#ifndef HEADER_CURL_TOOL_HOMEDIR_H
+#define HEADER_CURL_TOOL_HOMEDIR_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 "tool_setup.h"
+
+char *homedir(void);
+
+#endif /* HEADER_CURL_TOOL_HOMEDIR_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_hugehelp.c b/ap/lib/libcurl/curl-7.54.1/src/tool_hugehelp.c
new file mode 100644
index 0000000..f5e351f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_hugehelp.c
@@ -0,0 +1,9794 @@
+#include "tool_setup.h"
+#ifndef HAVE_LIBZ
+/*
+ * NEVER EVER edit this manually, fix the mkhelp.pl script instead!
+ * Generation time: Fri Jun  9 12:10:32 2017
+ */
+#ifdef USE_MANUAL
+#include "tool_hugehelp.h"
+void hugehelp(void)
+{
+   fputs(
+"                                  _   _ ____  _\n"
+"  Project                     ___| | | |  _ \\| |\n"
+"                             / __| | | | |_) | |\n"
+"                            | (__| |_| |  _ <| |___\n"
+"                             \\___|\\___/|_| \\_\\_____|\n"
+"\n"
+"NAME\n"
+"       curl - transfer a URL\n"
+"\n"
+"SYNOPSIS\n"
+"       curl [options] [URL...]\n"
+"\n"
+"DESCRIPTION\n"
+"       curl  is  a tool to transfer data from or to a server, using one of the\n"
+"       supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS,  IMAP,\n"
+, stdout);
+ fputs(
+"       IMAPS,  LDAP,  LDAPS,  POP3,  POP3S,  RTMP, RTSP, SCP, SFTP, SMB, SMBS,\n"
+"       SMTP, SMTPS, TELNET and TFTP). The command is designed to work  without\n"
+"       user interaction.\n"
+"\n"
+"       curl offers a busload of useful tricks like proxy support, user authen-\n"
+"       tication, FTP upload, HTTP post, SSL connections, cookies, file  trans-\n"
+"       fer  resume,  Metalink,  and more. As you will see below, the number of\n"
+"       features will make your head spin!\n"
+"\n"
+, stdout);
+ fputs(
+"       curl is powered by  libcurl  for  all  transfer-related  features.  See\n"
+"       libcurl(3) for details.\n"
+"\n"
+"URL\n"
+"       The  URL  syntax is protocol-dependent. You'll find a detailed descrip-\n"
+"       tion in RFC 3986.\n"
+"\n"
+"       You can specify multiple URLs or parts of URLs  by  writing  part  sets\n"
+"       within braces as in:\n"
+"\n"
+"         http://site.{one,two,three}.com\n"
+"\n"
+"       or you can get sequences of alphanumeric series by using [] as in:\n"
+"\n"
+"         ftp://ftp.example.com/file[1-100].txt\n"
+"\n"
+, stdout);
+ fputs(
+"         ftp://ftp.example.com/file[001-100].txt    (with leading zeros)\n"
+"\n"
+"         ftp://ftp.example.com/file[a-z].txt\n"
+"\n"
+"       Nested  sequences  are not supported, but you can use several ones next\n"
+"       to each other:\n"
+"\n"
+"         http://example.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html\n"
+"\n"
+"       You can specify any amount of URLs on the command line.  They  will  be\n"
+"       fetched in a sequential manner in the specified order.\n"
+"\n"
+, stdout);
+ fputs(
+"       You  can  specify a step counter for the ranges to get every Nth number\n"
+"       or letter:\n"
+"\n"
+"         http://example.com/file[1-100:10].txt\n"
+"\n"
+"         http://example.com/file[a-z:2].txt\n"
+"\n"
+"       When using [] or {} sequences when invoked from a command line  prompt,\n"
+"       you probably have to put the full URL within double quotes to avoid the\n"
+"       shell from interfering with it. This also  goes  for  other  characters\n"
+"       treated special, like for example '&', '?' and '*'.\n"
+"\n"
+, stdout);
+ fputs(
+"       Provide  the IPv6 zone index in the URL with an escaped percentage sign\n"
+"       and the interface name. Like in\n"
+"\n"
+"         http://[fe80::3%25eth0]/\n"
+"\n"
+"       If you specify URL without protocol:// prefix,  curl  will  attempt  to\n"
+"       guess  what  protocol  you might want. It will then default to HTTP but\n"
+"       try other protocols based on often-used host name prefixes.  For  exam-\n"
+"       ple,  for  host names starting with \"ftp.\" curl will assume you want to\n"
+"       speak FTP.\n"
+"\n"
+, stdout);
+ fputs(
+"       curl will do its best to use what you pass to it as a URL.  It  is  not\n"
+"       trying  to  validate it as a syntactically correct URL by any means but\n"
+"       is instead very liberal with what it accepts.\n"
+"\n"
+"       curl will attempt to re-use connections for multiple file transfers, so\n"
+"       that  getting many files from the same server will not do multiple con-\n"
+"       nects / handshakes. This improves speed. Of course this is only done on\n"
+, stdout);
+ fputs(
+"       files  specified  on  a  single command line and cannot be used between\n"
+"       separate curl invokes.\n"
+"\n"
+"PROGRESS METER\n"
+"       curl normally displays a progress meter during  operations,  indicating\n"
+"       the  amount  of  transferred  data,  transfer speeds and estimated time\n"
+"       left, etc. The progress meter displays number of bytes and  the  speeds\n"
+"       are  in  bytes per second. The suffixes (k, M, G, T, P) are 1024 based.\n"
+"       For example 1k is 1024 bytes. 1M is 1048576 bytes.\n"
+"\n"
+, stdout);
+ fputs(
+"       curl displays this data to the terminal by default, so  if  you  invoke\n"
+"       curl  to do an operation and it is about to write data to the terminal,\n"
+"       it disables the progress meter as otherwise it would mess up the output\n"
+"       mixing progress meter and response data.\n"
+"\n"
+"       If you want a progress meter for HTTP POST or PUT requests, you need to\n"
+"       redirect the response output to a file, using shell redirect  (>),  -o,\n"
+"       --output or similar.\n"
+"\n"
+, stdout);
+ fputs(
+"       It  is not the same case for FTP upload as that operation does not spit\n"
+"       out any response data to the terminal.\n"
+"\n"
+"       If you prefer a progress  \"bar\"  instead  of  the  regular  meter,  -#,\n"
+"       --progress-bar  is your friend. You can also disable the progress meter\n"
+"       completely with the -s, --silent option.\n"
+"\n"
+"OPTIONS\n"
+"       Options start with one or two dashes. Many of the  options  require  an\n"
+"       additional value next to them.\n"
+"\n"
+, stdout);
+ fputs(
+"       The  short  \"single-dash\"  form  of the options, -d for example, may be\n"
+"       used with or without a space between it and its value, although a space\n"
+"       is a recommended separator. The long \"double-dash\" form, -d, --data for\n"
+"       example, requires a space between it and its value.\n"
+"\n"
+"       Short version options that don't need any additional values can be used\n"
+"       immediately  next  to  each other, like for example you can specify all\n"
+, stdout);
+ fputs(
+"       the options -O, -L and -v at once as -OLv.\n"
+"\n"
+"       In general, all boolean options are enabled with --option and yet again\n"
+"       disabled  with --no-option. That is, you use the exact same option name\n"
+"       but prefix it with \"no-\". However, in this list we mostly only list and\n"
+"       show  the --option version of them. (This concept with --no options was\n"
+"       added in  7.19.0.  Previously  most  options  were  toggled  on/off  on\n"
+"       repeated use of the same command line option.)\n"
+, stdout);
+ fputs(
+"\n"
+"       --abstract-unix-socket <path>\n"
+"              (HTTP)  Connect  through an abstract Unix domain socket, instead\n"
+"              of using the network.   Note:  netstat  shows  the  path  of  an\n"
+"              abstract  socket  prefixed with '@', however the <path> argument\n"
+"              should not have this leading character.\n"
+"\n"
+"              Added in 7.53.0.\n"
+"\n"
+"       --anyauth\n"
+"              (HTTP) Tells curl to figure out authentication method by itself,\n"
+, stdout);
+ fputs(
+"              and  use  the most secure one the remote site claims to support.\n"
+"              This is done by first doing a request and checking the response-\n"
+"              headers,  thus  possibly  inducing  an extra network round-trip.\n"
+"              This is  used  instead  of  setting  a  specific  authentication\n"
+"              method,  which  you  can  do with --basic, --digest, --ntlm, and\n"
+"              --negotiate.\n"
+"\n"
+, stdout);
+ fputs(
+"              Using --anyauth is not recommended if you do uploads from stdin,\n"
+"              since  it  may require data to be sent twice and then the client\n"
+"              must be able to rewind. If the need should arise when  uploading\n"
+"              from stdin, the upload operation will fail.\n"
+"\n"
+"              Used together with -u, --user.\n"
+"\n"
+"              See also --proxy-anyauth and --basic and --digest.\n"
+"\n"
+"       -a, --append\n"
+, stdout);
+ fputs(
+"              (FTP SFTP) When used in an upload, this makes curl append to the\n"
+"              target file instead  of  overwriting  it.  If  the  remote  file\n"
+"              doesn't  exist,  it  will  be  created.   Note that this flag is\n"
+"              ignored by some SFTP servers (including OpenSSH).\n"
+"\n"
+"       --basic\n"
+"              (HTTP) Tells curl to use  HTTP  Basic  authentication  with  the\n"
+"              remote  host.  This  is  the  default and this option is usually\n"
+, stdout);
+ fputs(
+"              pointless, unless you use it to override a previously set option\n"
+"              that  sets  a  different  authentication method (such as --ntlm,\n"
+"              --digest, or --negotiate).\n"
+"\n"
+"              Used together with -u, --user.\n"
+"\n"
+"              See also --proxy-basic.\n"
+"\n"
+"       --cacert <CA certificate>\n"
+"              (TLS) Tells curl to use the specified certificate file to verify\n"
+"              the  peer.  The  file  may contain multiple CA certificates. The\n"
+, stdout);
+ fputs(
+"              certificate(s) must be in PEM format. Normally curl is built  to\n"
+"              use a default file for this, so this option is typically used to\n"
+"              alter that default file.\n"
+"\n"
+"              curl recognizes the environment variable named  'CURL_CA_BUNDLE'\n"
+"              if  it  is  set,  and uses the given path as a path to a CA cert\n"
+"              bundle. This option overrides that variable.\n"
+"\n"
+"              The windows version of curl will automatically  look  for  a  CA\n"
+, stdout);
+ fputs(
+"              certs file named 'curl-ca-bundle.crt', either in the same direc-\n"
+"              tory as curl.exe, or in the Current Working Directory, or in any\n"
+"              folder along your PATH.\n"
+"\n"
+"              If  curl  is  built  against  the  NSS  SSL library, the NSS PEM\n"
+"              PKCS#11 module (libnsspem.so) needs to  be  available  for  this\n"
+"              option to work properly.\n"
+"\n"
+"              (iOS  and macOS only) If curl is built against Secure Transport,\n"
+, stdout);
+ fputs(
+"              then this option is supported for  backward  compatibility  with\n"
+"              other  SSL  engines,  but it should not be set. If the option is\n"
+"              not set, then curl will use the certificates in the  system  and\n"
+"              user  Keychain to verify the peer, which is the preferred method\n"
+"              of verifying the peer's certificate chain.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --capath <dir>\n"
+, stdout);
+ fputs(
+"              (TLS) Tells curl to use the specified certificate  directory  to\n"
+"              verify  the  peer.  Multiple paths can be provided by separating\n"
+"              them with \":\" (e.g.  \"path1:path2:path3\"). The certificates must\n"
+"              be  in  PEM  format,  and  if curl is built against OpenSSL, the\n"
+"              directory must have been processed using  the  c_rehash  utility\n"
+"              supplied  with OpenSSL. Using --capath can allow OpenSSL-powered\n"
+, stdout);
+ fputs(
+"              curl to make SSL-connections much more  efficiently  than  using\n"
+"              --cacert if the --cacert file contains many CA certificates.\n"
+"\n"
+"              If this option is set, the default capath value will be ignored,\n"
+"              and if it is used several times, the last one will be used.\n"
+"\n"
+"       --cert-status\n"
+"              (TLS) Tells curl to verify the status of the server  certificate\n"
+"              by using the Certificate Status Request (aka. OCSP stapling) TLS\n"
+, stdout);
+ fputs(
+"              extension.\n"
+"\n"
+"              If this option is enabled and the server sends an invalid  (e.g.\n"
+"              expired) response, if the response suggests that the server cer-\n"
+"              tificate has been revoked, or no response at  all  is  received,\n"
+"              the verification fails.\n"
+"\n"
+"              This  is  currently  only implemented in the OpenSSL, GnuTLS and\n"
+"              NSS backends.\n"
+"\n"
+"              Added in 7.41.0.\n"
+"\n"
+"       --cert-type <type>\n"
+, stdout);
+ fputs(
+"              (TLS) Tells curl what certificate type the provided  certificate\n"
+"              is in. PEM, DER and ENG are recognized types.  If not specified,\n"
+"              PEM is assumed.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also -E, --cert and --key and --key-type.\n"
+"\n"
+"       -E, --cert <certificate[:password]>\n"
+"              (TLS) Tells curl to use the specified  client  certificate  file\n"
+, stdout);
+ fputs(
+"              when getting a file with HTTPS, FTPS or another SSL-based proto-\n"
+"              col. The certificate must be in PKCS#12 format if  using  Secure\n"
+"              Transport,  or  PEM  format  if  using any other engine.  If the\n"
+"              optional password isn't specified, it will be queried for on the\n"
+"              terminal.  Note  that  this  option assumes a \"certificate\" file\n"
+"              that is the private key and the client certificate concatenated!\n"
+, stdout);
+ fputs(
+"              See -E, --cert and --key to specify them independently.\n"
+"\n"
+"              If  curl  is  built against the NSS SSL library then this option\n"
+"              can tell curl the nickname of the certificate to use within  the\n"
+"              NSS  database defined by the environment variable SSL_DIR (or by\n"
+"              default /etc/pki/nssdb). If the NSS  PEM  PKCS#11  module  (lib-\n"
+"              nsspem.so)  is  available  then  PEM files may be loaded. If you\n"
+, stdout);
+ fputs(
+"              want to use a file from the current directory, please precede it\n"
+"              with  \"./\"  prefix, in order to avoid confusion with a nickname.\n"
+"              If the nickname contains \":\", it needs to be preceded by \"\\\"  so\n"
+"              that  it  is not recognized as password delimiter.  If the nick-\n"
+"              name contains \"\\\", it needs to be escaped as \"\\\\\" so that it  is\n"
+"              not recognized as an escape character.\n"
+"\n"
+, stdout);
+ fputs(
+"              (iOS  and macOS only) If curl is built against Secure Transport,\n"
+"              then the certificate string can either be the name of a certifi-\n"
+"              cate/private  key in the system or user keychain, or the path to\n"
+"              a PKCS#12-encoded certificate and private key. If  you  want  to\n"
+"              use  a  file  from the current directory, please precede it with\n"
+"              \"./\" prefix, in order to avoid confusion with a nickname.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also --cert-type and --key and --key-type.\n"
+"\n"
+"       --ciphers <list of ciphers>\n"
+"              (TLS) Specifies which ciphers to use in the connection. The list\n"
+"              of  ciphers  must  specify  valid ciphers. Read up on SSL cipher\n"
+"              list details on this URL:\n"
+"\n"
+"               https://curl.haxx.se/docs/ssl-ciphers.html\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --compressed\n"
+"              (HTTP) Request a compressed response using one of the algorithms\n"
+"              curl  supports,  and  save  the  uncompressed document.  If this\n"
+"              option is used and the server  sends  an  unsupported  encoding,\n"
+"              curl will report an error.\n"
+"\n"
+"       -K, --config <file>\n"
+"\n"
+"              Specify  a  text  file  to read curl arguments from. The command\n"
+, stdout);
+ fputs(
+"              line arguments found in the text file will be used  as  if  they\n"
+"              were provided on the command line.\n"
+"\n"
+"              Options  and their parameters must be specified on the same line\n"
+"              in the file, separated by whitespace, colon, or the equals sign.\n"
+"              Long  option  names  can  optionally be given in the config file\n"
+"              without the initial double dashes and if so, the colon or equals\n"
+, stdout);
+ fputs(
+"              characters can be used as separators. If the option is specified\n"
+"              with one or two dashes, there can be no colon or equals  charac-\n"
+"              ter between the option and its parameter.\n"
+"\n"
+"              If the parameter is to contain whitespace, the parameter must be\n"
+"              enclosed within quotes.  Within  double  quotes,  the  following\n"
+"              escape  sequences  are  available:  \\\\, \\\", \\t, \\n, \\r and \\v. A\n"
+, stdout);
+ fputs(
+"              backslash preceding any other letter is ignored.  If  the  first\n"
+"              column of a config line is a '#' character, the rest of the line\n"
+"              will be treated as a comment. Only write one option per physical\n"
+"              line in the config file.\n"
+"\n"
+"              Specify  the  filename  to -K, --config as '-' to make curl read\n"
+"              the file from stdin.\n"
+"\n"
+"              Note that to be able to specify a URL in the  config  file,  you\n"
+, stdout);
+ fputs(
+"              need  to  specify  it  using the --url option, and not by simply\n"
+"              writing the URL on its own line. So, it could  look  similar  to\n"
+"              this:\n"
+"\n"
+"              url = \"https://curl.haxx.se/docs/\"\n"
+"\n"
+"              When  curl  is invoked, it (unless -q, --disable is used) checks\n"
+"              for a default config file and uses it if found. The default con-\n"
+"              fig file is checked for in the following places in this order:\n"
+"\n"
+, stdout);
+ fputs(
+"              1)  curl  tries  to find the \"home dir\": It first checks for the\n"
+"              CURL_HOME and then the HOME environment variables. Failing that,\n"
+"              it  uses getpwuid() on Unix-like systems (which returns the home\n"
+"              dir given the current user in your system). On Windows, it  then\n"
+"              checks for the APPDATA variable, or as a last resort the '%USER-\n"
+"              PROFILE%\\Application Data'.\n"
+"\n"
+, stdout);
+ fputs(
+"              2) On windows, if there is no _curlrc file in the home  dir,  it\n"
+"              checks for one in the same dir the curl executable is placed. On\n"
+"              Unix-like systems, it will simply try to load .curlrc  from  the\n"
+"              determined home dir.\n"
+"\n"
+"              # --- Example file ---\n"
+"              # this is a comment\n"
+"              url = \"example.com\"\n"
+"              output = \"curlhere.html\"\n"
+"              user-agent = \"superagent/1.0\"\n"
+"\n"
+, stdout);
+ fputs(
+"              # and fetch another URL too\n"
+"              url = \"example.com/docs/manpage.html\"\n"
+"              -O\n"
+"              referer = \"http://nowhereatall.example.com/\"\n"
+"              # --- End of example file ---\n"
+"\n"
+"              This  option  can be used multiple times to load multiple config\n"
+"              files.\n"
+"\n"
+"       --connect-timeout <seconds>\n"
+"              Maximum time in seconds that  you  allow  curl's  connection  to\n"
+, stdout);
+ fputs(
+"              take.   This  only  limits the connection phase, so if curl con-\n"
+"              nects within the given period it will continue - if not it  will\n"
+"              exit.  Since version 7.32.0, this option accepts decimal values.\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also -m, --max-time.\n"
+"\n"
+"       --connect-to <HOST1:PORT1:HOST2:PORT2>\n"
+"\n"
+"              For  a  request to the given HOST:PORT pair, connect to CONNECT-\n"
+, stdout);
+ fputs(
+"              TO-HOST:CONNECT-TO-PORT instead.  This  option  is  suitable  to\n"
+"              direct requests at a specific server, e.g. at a specific cluster\n"
+"              node in a cluster of servers.   This  option  is  only  used  to\n"
+"              establish  the  network connection. It does NOT affect the host-\n"
+"              name/port that is used for TLS/SSL (e.g. SNI, certificate  veri-\n"
+"              fication)  or  for the application protocols.  \"host\" and \"port\"\n"
+, stdout);
+ fputs(
+"              may be the empty string, meaning \"any host/port\".   \"connect-to-\n"
+"              host\"  and \"connect-to-port\" may also be the empty string, mean-\n"
+"              ing \"use the request's original host/port\".\n"
+"\n"
+"              This option can be used many times to add many connect rules.\n"
+"\n"
+"              See also --resolve and -H, --header. Added in 7.49.0.\n"
+"\n"
+"       -C, --continue-at <offset>\n"
+"              Continue/Resume a previous file transfer at  the  given  offset.\n"
+, stdout);
+ fputs(
+"              The  given  offset  is  the  exact  number of bytes that will be\n"
+"              skipped, counting from the beginning of the source  file  before\n"
+"              it is transferred to the destination.  If used with uploads, the\n"
+"              FTP server command SIZE will not be used by curl.\n"
+"\n"
+"              Use \"-C -\" to tell curl to automatically find out  where/how  to\n"
+"              resume  the  transfer. It then uses the given output/input files\n"
+"              to figure that out.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also -r, --range.\n"
+"\n"
+"       -c, --cookie-jar <filename>\n"
+"              (HTTP) Specify to which file you want curl to write all  cookies\n"
+"              after  a  completed  operation. Curl writes all cookies from its\n"
+"              in-memory cookie storage to the given file at the end of  opera-\n"
+"              tions.  If  no  cookies  are known, no data will be written. The\n"
+, stdout);
+ fputs(
+"              file will be written using the Netscape cookie file  format.  If\n"
+"              you set the file name to a single dash, \"-\", the cookies will be\n"
+"              written to stdout.\n"
+"\n"
+"              This command line option will activate the  cookie  engine  that\n"
+"              makes curl record and use cookies. Another way to activate it is\n"
+"              to use the -b, --cookie option.\n"
+"\n"
+"              If the cookie jar can't be created or written to, the whole curl\n"
+, stdout);
+ fputs(
+"              operation  won't fail or even report an error clearly. Using -v,\n"
+"              --verbose will get a warning displayed, but  that  is  the  only\n"
+"              visible feedback you get about this possibly lethal situation.\n"
+"\n"
+"              If  this  option  is used several times, the last specified file\n"
+"              name will be used.\n"
+"\n"
+"       -b, --cookie <data>\n"
+"              (HTTP) Pass the data to the HTTP server in the Cookie header. It\n"
+, stdout);
+ fputs(
+"              is  supposedly the data previously received from the server in a\n"
+"              \"Set-Cookie:\"  line.   The  data  should  be   in   the   format\n"
+"              \"NAME1=VALUE1; NAME2=VALUE2\".\n"
+"\n"
+"              If  no '=' symbol is used in the argument, it is instead treated\n"
+"              as a filename to read previously stored cookie from. This option\n"
+"              also  activates  the  cookie  engine which will make curl record\n"
+, stdout);
+ fputs(
+"              incoming cookies, which may be handy if  you're  using  this  in\n"
+"              combination  with  the  -L, --location option or do multiple URL\n"
+"              transfers on the same invoke.\n"
+"\n"
+"              The file format of the file to read cookies from should be plain\n"
+"              HTTP  headers  (Set-Cookie style) or the Netscape/Mozilla cookie\n"
+"              file format.\n"
+"\n"
+"              The file specified with -b, --cookie is only used as  input.  No\n"
+, stdout);
+ fputs(
+"              cookies  will  be written to the file. To store cookies, use the\n"
+"              -c, --cookie-jar option.\n"
+"\n"
+"              Exercise caution if you  are  using  this  option  and  multiple\n"
+"              transfers may occur.  If you use the NAME1=VALUE1; format, or in\n"
+"              a file use the Set-Cookie format and  don't  specify  a  domain,\n"
+"              then the cookie is sent for any domain (even after redirects are\n"
+, stdout);
+ fputs(
+"              followed) and cannot be modified by a server-set cookie. If  the\n"
+"              cookie  engine is enabled and a server sets a cookie of the same\n"
+"              name then both will be sent on a future transfer to that server,\n"
+"              likely  not  what  you  intended.  To address these issues set a\n"
+"              domain in Set-Cookie (doing that will include  sub  domains)  or\n"
+"              use the Netscape format.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"              Users very often want to both read cookies from a file and write\n"
+"              updated cookies back to a file, so using both -b,  --cookie  and\n"
+"              -c, --cookie-jar in the same command line is common.\n"
+"\n"
+"       --create-dirs\n"
+"              When used in conjunction with the -o, --output option, curl will\n"
+"              create the necessary local directory hierarchy as  needed.  This\n"
+, stdout);
+ fputs(
+"              option  creates the dirs mentioned with the -o, --output option,\n"
+"              nothing else. If the --output file name uses no dir  or  if  the\n"
+"              dirs it mentions already exist, no dir will be created.\n"
+"\n"
+"              To  create remote directories when using FTP or SFTP, try --ftp-\n"
+"              create-dirs.\n"
+"\n"
+"       --crlf (FTP SMTP)  Convert  LF  to  CRLF  in  upload.  Useful  for  MVS\n"
+"              (OS/390).\n"
+"\n"
+"              (SMTP added in 7.40.0)\n"
+"\n"
+, stdout);
+ fputs(
+"       --crlfile <file>\n"
+"              (TLS) Provide a file using PEM format with a Certificate Revoca-\n"
+"              tion List that may specify peer certificates that are to be con-\n"
+"              sidered revoked.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.19.7.\n"
+"\n"
+"       --data-ascii <data>\n"
+"              (HTTP) This is just an alias for -d, --data.\n"
+"\n"
+"       --data-binary <data>\n"
+, stdout);
+ fputs(
+"              (HTTP)  This  posts data exactly as specified with no extra pro-\n"
+"              cessing whatsoever.\n"
+"\n"
+"              If you start the data with the letter @, the rest  should  be  a\n"
+"              filename.   Data  is  posted  in  a similar manner as -d, --data\n"
+"              does, except that newlines and carriage  returns  are  preserved\n"
+"              and conversions are never done.\n"
+"\n"
+"              If  this  option  is  used several times, the ones following the\n"
+, stdout);
+ fputs(
+"              first will append data as described in -d, --data.\n"
+"\n"
+"       --data-raw <data>\n"
+"              (HTTP) This posts data similarly to -d, --data but  without  the\n"
+"              special interpretation of the @ character.\n"
+"\n"
+"              See also -d, --data. Added in 7.43.0.\n"
+"\n"
+"       --data-urlencode <data>\n"
+"              (HTTP)  This posts data, similar to the other -d, --data options\n"
+"              with the exception that this performs URL-encoding.\n"
+"\n"
+, stdout);
+ fputs(
+"              To be CGI-compliant, the <data> part should begin  with  a  name\n"
+"              followed  by a separator and a content specification. The <data>\n"
+"              part can be passed to curl using one of the following syntaxes:\n"
+"\n"
+"              content\n"
+"                     This will make curl URL-encode the content and pass  that\n"
+"                     on.  Just  be careful so that the content doesn't contain\n"
+"                     any = or @ symbols, as that will  then  make  the  syntax\n"
+, stdout);
+ fputs(
+"                     match one of the other cases below!\n"
+"\n"
+"              =content\n"
+"                     This  will make curl URL-encode the content and pass that\n"
+"                     on. The preceding = symbol is not included in the data.\n"
+"\n"
+"              name=content\n"
+"                     This will make curl URL-encode the content part and  pass\n"
+"                     that  on.  Note that the name part is expected to be URL-\n"
+"                     encoded already.\n"
+"\n"
+"              @filename\n"
+, stdout);
+ fputs(
+"                     This will  make  curl  load  data  from  the  given  file\n"
+"                     (including  any  newlines), URL-encode that data and pass\n"
+"                     it on in the POST.\n"
+"\n"
+"              name@filename\n"
+"                     This will  make  curl  load  data  from  the  given  file\n"
+"                     (including  any  newlines), URL-encode that data and pass\n"
+"                     it on in the POST. The  name  part  gets  an  equal  sign\n"
+, stdout);
+ fputs(
+"                     appended, resulting in name=urlencoded-file-content. Note\n"
+"                     that the name is expected to be URL-encoded already.\n"
+"       See also -d, --data and --data-raw. Added in 7.18.0.\n"
+"\n"
+"       -d, --data <data>\n"
+"              (HTTP) Sends the specified data in a POST request  to  the  HTTP\n"
+"              server,  in  the  same  way  that a browser does when a user has\n"
+"              filled in an HTML form and presses the submit button. This  will\n"
+, stdout);
+ fputs(
+"              cause curl to pass the data to the server using the content-type\n"
+"              application/x-www-form-urlencoded.  Compare to -F, --form.\n"
+"\n"
+"              --data-raw is almost the same but does not have a special inter-\n"
+"              pretation  of  the  @ character. To post data purely binary, you\n"
+"              should instead use the --data-binary option.  To URL-encode  the\n"
+"              value of a form field you may use --data-urlencode.\n"
+"\n"
+, stdout);
+ fputs(
+"              If  any of these options is used more than once on the same com-\n"
+"              mand line, the data pieces specified  will  be  merged  together\n"
+"              with  a  separating  &-symbol.  Thus,  using  '-d name=daniel -d\n"
+"              skill=lousy'  would  generate  a  post  chunk  that  looks  like\n"
+"              'name=daniel&skill=lousy'.\n"
+"\n"
+"              If  you  start  the data with the letter @, the rest should be a\n"
+, stdout);
+ fputs(
+"              file name to read the data from, or - if you want curl  to  read\n"
+"              the data from stdin. Multiple files can also be specified. Post-\n"
+"              ing data from a file named  from  a  file  like  that,  carriage\n"
+"              returns and newlines will be stripped out. If you don't want the\n"
+"              @ character to have  a  special  interpretation  use  --data-raw\n"
+"              instead.\n"
+"\n"
+"              See also --data-binary and --data-urlencode and --data-raw. This\n"
+, stdout);
+ fputs(
+"              option overrides -F, --form and -I, --head and --upload.\n"
+"\n"
+"       --delegation <LEVEL>\n"
+"              (GSS/kerberos) Set LEVEL to tell the server what it  is  allowed\n"
+"              to delegate when it comes to user credentials.\n"
+"\n"
+"              none   Don't allow any delegation.\n"
+"\n"
+"              policy Delegates  if  and only if the OK-AS-DELEGATE flag is set\n"
+"                     in the Kerberos service ticket,  which  is  a  matter  of\n"
+"                     realm policy.\n"
+"\n"
+, stdout);
+ fputs(
+"              always Unconditionally allow the server to delegate.\n"
+"\n"
+"       --digest\n"
+"              (HTTP)  Enables HTTP Digest authentication. This is an authenti-\n"
+"              cation scheme that prevents the password from  being  sent  over\n"
+"              the  wire in clear text. Use this in combination with the normal\n"
+"              -u, --user option to set user name and password.\n"
+"\n"
+"              If this option is used several times,  only  the  first  one  is\n"
+"              used.\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  -u,  --user  and  --proxy-digest  and --anyauth. This\n"
+"              option overrides --basic and --ntlm and --negotiate.\n"
+"\n"
+"       --disable-eprt\n"
+"              (FTP) Tell curl to disable the use of the EPRT and LPRT commands\n"
+"              when doing active FTP transfers. Curl will normally always first\n"
+"              attempt to use EPRT, then LPRT before using PORT, but with  this\n"
+"              option,  it  will  use PORT right away. EPRT and LPRT are exten-\n"
+, stdout);
+ fputs(
+"              sions to the original FTP protocol, and  may  not  work  on  all\n"
+"              servers, but they enable more functionality in a better way than\n"
+"              the traditional PORT command.\n"
+"\n"
+"              --eprt can be used to explicitly enable EPRT again and --no-eprt\n"
+"              is an alias for --disable-eprt.\n"
+"\n"
+"              If  the  server is accessed using IPv6, this option will have no\n"
+"              effect as EPRT is necessary then.\n"
+"\n"
+, stdout);
+ fputs(
+"              Disabling EPRT only changes the active behavior. If you want  to\n"
+"              switch  to  passive  mode  you need to not use -P, --ftp-port or\n"
+"              force it with --ftp-pasv.\n"
+"\n"
+"       --disable-epsv\n"
+"              (FTP) (FTP) Tell curl to disable the use  of  the  EPSV  command\n"
+"              when  doing  passive  FTP  transfers.  Curl will normally always\n"
+"              first attempt to use EPSV before PASV, but with this option,  it\n"
+"              will not try using EPSV.\n"
+"\n"
+, stdout);
+ fputs(
+"              --epsv can be used to explicitly enable EPSV again and --no-epsv\n"
+"              is an alias for --disable-epsv.\n"
+"\n"
+"              If the server is an IPv6 host, this option will have  no  effect\n"
+"              as EPSV is necessary then.\n"
+"\n"
+"              Disabling EPSV only changes the passive behavior. If you want to\n"
+"              switch to active mode you need to use -P, --ftp-port.\n"
+"\n"
+"       -q, --disable\n"
+"              If used as the first parameter on the command line,  the  curlrc\n"
+, stdout);
+ fputs(
+"              config  file will not be read and used. See the -K, --config for\n"
+"              details on the default config file search path.\n"
+"\n"
+"       --dns-interface <interface>\n"
+"              (DNS) Tell curl to send outgoing DNS  requests  through  <inter-\n"
+"              face>.  This  option is a counterpart to --interface (which does\n"
+"              not affect DNS). The supplied string must be an  interface  name\n"
+"              (not an address).\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --dns-ipv4-addr  and --dns-ipv6-addr. --dns-interface\n"
+"              requires that the underlying libcurl was  built  to  support  c-\n"
+"              ares. Added in 7.33.0.\n"
+"\n"
+"       --dns-ipv4-addr <address>\n"
+"              (DNS)  Tell  curl  to  bind to <ip-address> when making IPv4 DNS\n"
+"              requests, so that the DNS requests originate from this  address.\n"
+"              The argument should be a single IPv4 address.\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --dns-interface  and --dns-ipv6-addr. --dns-ipv4-addr\n"
+"              requires that the underlying libcurl was  built  to  support  c-\n"
+"              ares. Added in 7.33.0.\n"
+"\n"
+"       --dns-ipv6-addr <address>\n"
+"              (DNS)  Tell  curl  to  bind to <ip-address> when making IPv6 DNS\n"
+"              requests, so that the DNS requests originate from this  address.\n"
+"              The argument should be a single IPv6 address.\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --dns-interface  and --dns-ipv4-addr. --dns-ipv6-addr\n"
+"              requires that the underlying libcurl was  built  to  support  c-\n"
+"              ares. Added in 7.33.0.\n"
+"\n"
+"       --dns-servers <addresses>\n"
+"              Set  the  list  of  DNS servers to be used instead of the system\n"
+"              default.  The list of IP addresses should be separated with com-\n"
+"              mas. Port numbers may also optionally be given as :<port-number>\n"
+, stdout);
+ fputs(
+"              after each IP address.\n"
+"\n"
+"              --dns-servers requires that the underlying libcurl was built  to\n"
+"              support c-ares. Added in 7.33.0.\n"
+"\n"
+"       -D, --dump-header <filename>\n"
+"              (HTTP  FTP) Write the received protocol headers to the specified\n"
+"              file.\n"
+"\n"
+"              This option is handy to use when you want to store  the  headers\n"
+"              that  an  HTTP site sends to you. Cookies from the headers could\n"
+, stdout);
+ fputs(
+"              then be read in a  second  curl  invocation  by  using  the  -b,\n"
+"              --cookie  option! The -c, --cookie-jar option is a better way to\n"
+"              store cookies.\n"
+"\n"
+"              When used in FTP, the FTP server response lines  are  considered\n"
+"              being \"headers\" and thus are saved there.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also -o, --output.\n"
+"\n"
+"       --egd-file <file>\n"
+, stdout);
+ fputs(
+"              (TLS)  Specify  the  path  name  to the Entropy Gathering Daemon\n"
+"              socket. The socket is used to seed the  random  engine  for  SSL\n"
+"              connections.\n"
+"\n"
+"              See also --random-file.\n"
+"\n"
+"       --engine <name>\n"
+"              (TLS)  Select the OpenSSL crypto engine to use for cipher opera-\n"
+"              tions. Use --engine list to print a list of build-time supported\n"
+"              engines.  Note  that  not  all  (or  none) of the engines may be\n"
+, stdout);
+ fputs(
+"              available at run-time.\n"
+"\n"
+"       --expect100-timeout <seconds>\n"
+"              (HTTP) Maximum time in seconds that you allow curl to wait for a\n"
+"              100-continue  response  when curl emits an Expects: 100-continue\n"
+"              header in its request. By default curl  will  wait  one  second.\n"
+"              This  option accepts decimal values! When curl stops waiting, it\n"
+"              will continue as if the response has been received.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --connect-timeout. Added in 7.47.0.\n"
+"\n"
+"       --fail-early\n"
+"              Fail and exit on the first detected transfer error.\n"
+"\n"
+"              When curl is used to do multiple transfers on the command  line,\n"
+"              it  will  attempt  to  operate on each given URL, one by one. By\n"
+"              default, it will ignore errors if there are more URLs given  and\n"
+"              the  last  URL's  success  will  determine  the  error code curl\n"
+, stdout);
+ fputs(
+"              returns. So early failures will be \"hidden\" by  subsequent  suc-\n"
+"              cessful transfers.\n"
+"\n"
+"              Using  this  option,  curl  will  instead return an error on the\n"
+"              first transfer that fails, independent of  the  amount  of  URLs\n"
+"              that  are given on the command line. This way, no transfer fail-\n"
+"              ures go undetected by scripts and similar.\n"
+"\n"
+"              This option is global and does not need to be specified for each\n"
+, stdout);
+ fputs(
+"              use of -:, --next.\n"
+"\n"
+"              This option does not imply -f, --fail, which causes transfers to\n"
+"              fail due to the server's HTTP status code. You can  combine  the\n"
+"              two options, however note -f, --fail is not global and is there-\n"
+"              fore contained by -:, --next.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       -f, --fail\n"
+"              (HTTP) Fail silently (no output at all) on server  errors.  This\n"
+, stdout);
+ fputs(
+"              is  mostly done to better enable scripts etc to better deal with\n"
+"              failed attempts. In normal cases when an HTTP  server  fails  to\n"
+"              deliver  a  document,  it  returns  an  HTML document stating so\n"
+"              (which often also describes why and more). This flag  will  pre-\n"
+"              vent curl from outputting that and return error 22.\n"
+"\n"
+"              This  method is not fail-safe and there are occasions where non-\n"
+, stdout);
+ fputs(
+"              successful response codes will  slip  through,  especially  when\n"
+"              authentication is involved (response codes 401 and 407).\n"
+"\n"
+"       --false-start\n"
+"              (TLS)  Tells  curl  to use false start during the TLS handshake.\n"
+"              False start is a mode where a  TLS  client  will  start  sending\n"
+"              application data before verifying the server's Finished message,\n"
+"              thus saving a round trip when performing a full handshake.\n"
+"\n"
+, stdout);
+ fputs(
+"              This is currently only implemented in the NSS and Secure  Trans-\n"
+"              port (on iOS 7.0 or later, or OS X 10.9 or later) backends.\n"
+"\n"
+"              Added in 7.42.0.\n"
+"\n"
+"       --form-string <name=string>\n"
+"              (HTTP)  Similar  to  -F, --form except that the value string for\n"
+"              the named parameter is used literally. Leading '@' and '<' char-\n"
+"              acters,  and  the  ';type='  string in the value have no special\n"
+, stdout);
+ fputs(
+"              meaning. Use this in preference to -F,  --form  if  there's  any\n"
+"              possibility  that  the string value may accidentally trigger the\n"
+"              '@' or '<' features of -F, --form.\n"
+"\n"
+"              See also -F, --form.\n"
+"\n"
+"       -F, --form <name=content>\n"
+"              (HTTP) This lets curl emulate a filled-in form in which  a  user\n"
+"              has  pressed  the  submit  button. This causes curl to POST data\n"
+, stdout);
+ fputs(
+"              using the  Content-Type  multipart/form-data  according  to  RFC\n"
+"              2388.  This  enables uploading of binary files etc. To force the\n"
+"              'content' part to be a file, prefix the  file  name  with  an  @\n"
+"              sign.  To just get the content part from a file, prefix the file\n"
+"              name with the symbol <. The difference between @ and <  is  then\n"
+"              that  @  makes a file get attached in the post as a file upload,\n"
+, stdout);
+ fputs(
+"              while the < makes a text field and just  get  the  contents  for\n"
+"              that text field from a file.\n"
+"\n"
+"              Example:  to  send  an image to a server, where 'profile' is the\n"
+"              name of the form-field to which portrait.jpg will be the input:\n"
+"\n"
+"               curl -F profile=@portrait.jpg https://example.com/upload.cgi\n"
+"\n"
+"              To read content from stdin instead of a file, use - as the file-\n"
+, stdout);
+ fputs(
+"              name.  This  goes  for both @ and < constructs. Unfortunately it\n"
+"              does not support reading the file from a named pipe or  similar,\n"
+"              as it needs the full size before the transfer starts.\n"
+"\n"
+"              You  can  also  tell  curl  what  Content-Type  to  use by using\n"
+"              'type=', in a manner similar to:\n"
+"\n"
+"               curl -F \"web=@index.html;type=text/html\" example.com\n"
+"\n"
+"              or\n"
+"\n"
+, stdout);
+ fputs(
+"               curl -F \"name=daniel;type=text/foo\" example.com\n"
+"\n"
+"              You can also explicitly change the name field of a  file  upload\n"
+"              part by setting filename=, like this:\n"
+"\n"
+"               curl -F \"file=@localfile;filename=nameinpost\" example.com\n"
+"\n"
+"              If  filename/path contains ',' or ';', it must be quoted by dou-\n"
+"              ble-quotes like:\n"
+"\n"
+"               curl  -F  \"file=@\\\"localfile\\\";filename=\\\"nameinpost\\\"\"   exam-\n"
+"              ple.com\n"
+"\n"
+, stdout);
+ fputs(
+"              or\n"
+"\n"
+"               curl -F 'file=@\"localfile\";filename=\"nameinpost\"' example.com\n"
+"\n"
+"              Note  that  if  a  filename/path is quoted by double-quotes, any\n"
+"              double-quote or backslash within the filename must be escaped by\n"
+"              backslash.\n"
+"\n"
+"              See further examples and details in the MANUAL.\n"
+"\n"
+"              This option can be used multiple times.\n"
+"\n"
+"              This option overrides -d, --data and -I, --head and --upload.\n"
+"\n"
+, stdout);
+ fputs(
+"       --ftp-account <data>\n"
+"              (FTP) When an FTP server asks for \"account data\" after user name\n"
+"              and password has been provided, this data is sent off using  the\n"
+"              ACCT command.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.13.0.\n"
+"\n"
+"       --ftp-alternative-to-user <command>\n"
+"              (FTP)  If  authenticating with the USER and PASS commands fails,\n"
+, stdout);
+ fputs(
+"              send this  command.   When  connecting  to  Tumbleweed's  Secure\n"
+"              Transport  server  over  FTPS  using a client certificate, using\n"
+"              \"SITE AUTH\" will tell the server to retrieve the  username  from\n"
+"              the certificate.\n"
+"              Added in 7.15.5.\n"
+"\n"
+"       --ftp-create-dirs\n"
+"              (FTP  SFTP)  When  an FTP or SFTP URL/operation uses a path that\n"
+"              doesn't currently exist on the server, the standard behavior  of\n"
+, stdout);
+ fputs(
+"              curl is to fail. Using this option, curl will instead attempt to\n"
+"              create missing directories.\n"
+"\n"
+"              See also --create-dirs.\n"
+"\n"
+"       --ftp-method <method>\n"
+"              (FTP) Control what method curl should use to reach a file on  an\n"
+"              FTP(S)  server. The method argument should be one of the follow-\n"
+"              ing alternatives:\n"
+"\n"
+"              multicwd\n"
+"                     curl does a single CWD operation for each  path  part  in\n"
+, stdout);
+ fputs(
+"                     the  given URL. For deep hierarchies this means very many\n"
+"                     commands. This is how RFC 1738 says it  should  be  done.\n"
+"                     This is the default but the slowest behavior.\n"
+"\n"
+"              nocwd  curl  does  no  CWD at all. curl will do SIZE, RETR, STOR\n"
+"                     etc and give a full path to the server for all these com-\n"
+"                     mands. This is the fastest behavior.\n"
+"\n"
+"              singlecwd\n"
+, stdout);
+ fputs(
+"                     curl does one CWD with the full target directory and then\n"
+"                     operates on the file \"normally\"  (like  in  the  multicwd\n"
+"                     case).  This  is  somewhat  more standards compliant than\n"
+"                     'nocwd' but without the full penalty of 'multicwd'.\n"
+"\n"
+"       Added in 7.15.1.\n"
+"\n"
+"       --ftp-pasv\n"
+"              (FTP) Use passive mode for the data connection. Passive  is  the\n"
+, stdout);
+ fputs(
+"              internal  default behavior, but using this option can be used to\n"
+"              override a previous -P, --ftp-port option.\n"
+"\n"
+"              If this option is used several times,  only  the  first  one  is\n"
+"              used.  Undoing  an  enforced passive really isn't doable but you\n"
+"              must then instead enforce the correct -P, --ftp-port again.\n"
+"\n"
+"              Passive mode means that curl will try the EPSV command first and\n"
+, stdout);
+ fputs(
+"              then PASV, unless --disable-epsv is used.\n"
+"              See also --disable-epsv. Added in 7.11.0.\n"
+"\n"
+"       -P, --ftp-port <address>\n"
+"              (FTP)  Reverses  the  default initiator/listener roles when con-\n"
+"              necting with FTP. This option makes curl use active  mode.  curl\n"
+"              then  tells the server to connect back to the client's specified\n"
+"              address and port, while passive mode asks the server to setup an\n"
+, stdout);
+ fputs(
+"              IP  address  and  port for it to connect to. <address> should be\n"
+"              one of:\n"
+"\n"
+"              interface\n"
+"                     i.e \"eth0\" to specify which interface's  IP  address  you\n"
+"                     want to use (Unix only)\n"
+"\n"
+"              IP address\n"
+"                     i.e \"192.168.10.1\" to specify the exact IP address\n"
+"\n"
+"              host name\n"
+"                     i.e \"my.host.domain\" to specify the machine\n"
+"\n"
+, stdout);
+ fputs(
+"              -      make  curl  pick the same IP address that is already used\n"
+"                     for the control connection\n"
+"\n"
+"       If this option is used several times, the last one will be  used.  Dis-\n"
+"       able  the  use  of PORT with --ftp-pasv. Disable the attempt to use the\n"
+"       EPRT command instead of PORT by using --disable-eprt.  EPRT  is  really\n"
+"       PORT++.\n"
+"\n"
+"       Since  7.19.5,  you  can  append  \":[start]-[end]\"  to the right of the\n"
+, stdout);
+ fputs(
+"       address, to tell curl what TCP port range to use. That means you  spec-\n"
+"       ify  a  port  range,  from  a lower to a higher number. A single number\n"
+"       works as well, but do note that it increases the risk of failure  since\n"
+"       the port may not be available.\n"
+"\n"
+"       See also --ftp-pasv and --disable-eprt.\n"
+"\n"
+"       --ftp-pret\n"
+"              (FTP)  Tell  curl to send a PRET command before PASV (and EPSV).\n"
+"              Certain FTP servers, mainly drftpd,  require  this  non-standard\n"
+, stdout);
+ fputs(
+"              command  for  directory  listings as well as up and downloads in\n"
+"              PASV mode.\n"
+"\n"
+"              Added in 7.20.0.\n"
+"\n"
+"       --ftp-skip-pasv-ip\n"
+"              (FTP) Tell curl to not use the IP address the server suggests in\n"
+"              its  response to curl's PASV command when curl connects the data\n"
+"              connection. Instead curl will re-use  the  same  IP  address  it\n"
+"              already uses for the control connection.\n"
+"\n"
+, stdout);
+ fputs(
+"              This  option has no effect if PORT, EPRT or EPSV is used instead\n"
+"              of PASV.\n"
+"\n"
+"              See also --ftp-pasv. Added in 7.14.2.\n"
+"\n"
+"       --ftp-ssl-ccc-mode <active/passive>\n"
+"              (FTP) Sets the CCC mode. The passive mode will not initiate  the\n"
+"              shutdown, but instead wait for the server to do it, and will not\n"
+"              reply to the shutdown from the server. The active mode initiates\n"
+, stdout);
+ fputs(
+"              the shutdown and waits for a reply from the server.\n"
+"\n"
+"              See also --ftp-ssl-ccc. Added in 7.16.2.\n"
+"\n"
+"       --ftp-ssl-ccc\n"
+"              (FTP)  Use  CCC  (Clear  Command Channel) Shuts down the SSL/TLS\n"
+"              layer after authenticating. The rest of the control channel com-\n"
+"              munication  will be unencrypted. This allows NAT routers to fol-\n"
+"              low the FTP transaction. The default mode is passive.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --ssl and --ftp-ssl-ccc-mode. Added in 7.16.1.\n"
+"\n"
+"       --ftp-ssl-control\n"
+"              (FTP) Require SSL/TLS for the FTP  login,  clear  for  transfer.\n"
+"              Allows  secure  authentication, but non-encrypted data transfers\n"
+"              for efficiency.  Fails the transfer if the server  doesn't  sup-\n"
+"              port SSL/TLS.\n"
+"\n"
+"              Added in 7.16.0.\n"
+"\n"
+"       -G, --get\n"
+"              When  used,  this  option  will make all data specified with -d,\n"
+, stdout);
+ fputs(
+"              --data, --data-binary or --data-urlencode to be used in an  HTTP\n"
+"              GET  request instead of the POST request that otherwise would be\n"
+"              used. The data will be appended to the URL with a '?' separator.\n"
+"              If used in combination with  -I,  --head,  the  POST  data  will\n"
+"              instead be appended to the URL with a HEAD request.\n"
+"\n"
+"              If  this  option  is  used  several times, only the first one is\n"
+, stdout);
+ fputs(
+"              used. This is because undoing a GET doesn't make sense, but  you\n"
+"              should then instead enforce the alternative method you prefer.\n"
+"\n"
+"       -g, --globoff\n"
+"              This option switches off the \"URL globbing parser\". When you set\n"
+"              this option, you can specify URLs that contain the letters  {}[]\n"
+"              without  having them being interpreted by curl itself. Note that\n"
+"              these letters are not normal legal URL contents but they  should\n"
+, stdout);
+ fputs(
+"              be encoded according to the URI standard.\n"
+"\n"
+"       -I, --head\n"
+"              (HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the\n"
+"              command HEAD which this uses to get nothing but the header of  a\n"
+"              document.  When  used  on an FTP or FILE file, curl displays the\n"
+"              file size and last modification time only.\n"
+"\n"
+"       -H, --header <header>\n"
+"              (HTTP) Extra header to include in the request when sending  HTTP\n"
+, stdout);
+ fputs(
+"              to  a  server. You may specify any number of extra headers. Note\n"
+"              that if you should add a custom header that has the same name as\n"
+"              one  of  the  internal  ones curl would use, your externally set\n"
+"              header will be used instead of the internal one. This allows you\n"
+"              to  make  even  trickier  stuff than curl would normally do. You\n"
+"              should not replace internally set headers without  knowing  per-\n"
+, stdout);
+ fputs(
+"              fectly well what you're doing. Remove an internal header by giv-\n"
+"              ing a replacement without content  on  the  right  side  of  the\n"
+"              colon, as in: -H \"Host:\". If you send the custom header with no-\n"
+"              value then its header must be terminated with a semicolon,  such\n"
+"              as -H \"X-Custom-Header;\" to send \"X-Custom-Header:\".\n"
+"\n"
+"              curl  will  make  sure  that each header you add/replace is sent\n"
+, stdout);
+ fputs(
+"              with the proper end-of-line marker, you should thus not add that\n"
+"              as a part of the header content: do not add newlines or carriage\n"
+"              returns, they will only mess things up for you.\n"
+"\n"
+"              See also the -A, --user-agent and -e, --referer options.\n"
+"\n"
+"              Starting in 7.37.0, you need --proxy-header to send custom head-\n"
+"              ers intended for a proxy.\n"
+"\n"
+"              Example:\n"
+"\n"
+"               curl -H \"X-First-Name: Joe\" http://example.com/\n"
+, stdout);
+ fputs(
+"\n"
+"              WARNING:  headers  set  with  this  option  will  be  set in all\n"
+"              requests - even after redirects are  followed,  like  when  told\n"
+"              with  -L,  --location. This can lead to the header being sent to\n"
+"              other hosts than the original host, so sensitive headers  should\n"
+"              be used with caution combined with following redirects.\n"
+"\n"
+"              This  option  can  be  used multiple times to add/replace/remove\n"
+"              multiple headers.\n"
+"\n"
+, stdout);
+ fputs(
+"       -h, --help\n"
+"              Usage help. This lists all current command line options  with  a\n"
+"              short description.\n"
+"       --hostpubmd5 <md5>\n"
+"              (SFTP  SCP)  Pass a string containing 32 hexadecimal digits. The\n"
+"              string should be the 128 bit MD5 checksum of the  remote  host's\n"
+"              public key, curl will refuse the connection with the host unless\n"
+"              the md5sums match.\n"
+"\n"
+"              Added in 7.17.1.\n"
+"\n"
+"       -0, --http1.0\n"
+, stdout);
+ fputs(
+"              (HTTP) Tells curl to use HTTP version 1.0 instead of  using  its\n"
+"              internally preferred HTTP version.\n"
+"\n"
+"              This option overrides --http1.1 and --http2.\n"
+"\n"
+"       --http1.1\n"
+"              (HTTP) Tells curl to use HTTP version 1.1.\n"
+"\n"
+"              This  option  overrides  -0,  --http1.0  and  --http2.  Added in\n"
+"              7.33.0.\n"
+"\n"
+"       --http2-prior-knowledge\n"
+"              (HTTP) Tells curl to  issue  its  non-TLS  HTTP  requests  using\n"
+, stdout);
+ fputs(
+"              HTTP/2  without  HTTP/1.1  Upgrade.  It requires prior knowledge\n"
+"              that the server supports HTTP/2 straight  away.  HTTPS  requests\n"
+"              will  still  do HTTP/2 the standard way with negotiated protocol\n"
+"              version in the TLS handshake.\n"
+"\n"
+"              --http2-prior-knowledge requires that the underlying libcurl was\n"
+"              built to support HTTP/2. This option overrides --http1.1 and -0,\n"
+"              --http1.0 and --http2. Added in 7.49.0.\n"
+"\n"
+, stdout);
+ fputs(
+"       --http2\n"
+"              (HTTP) Tells curl to use HTTP version 2.\n"
+"\n"
+"              See also --no-alpn. --http2 requires that the underlying libcurl\n"
+"              was built to support HTTP/2. This option overrides --http1.1 and\n"
+"              -0, --http1.0 and --http2-prior-knowledge. Added in 7.33.0.\n"
+"\n"
+"       --ignore-content-length\n"
+"              (FTP HTTP) For HTTP, Ignore the Content-Length header.  This  is\n"
+"              particularly  useful  for servers running Apache 1.x, which will\n"
+, stdout);
+ fputs(
+"              report incorrect Content-Length for files larger  than  2  giga-\n"
+"              bytes.\n"
+"\n"
+"              For  FTP (since 7.46.0), skip the RETR command to figure out the\n"
+"              size before downloading a file.\n"
+"\n"
+"       -i, --include\n"
+"              Include the HTTP-header in the output. The HTTP-header  includes\n"
+"              things  like server-name, date of the document, HTTP-version and\n"
+"              more...\n"
+"\n"
+"              See also -v, --verbose.\n"
+"\n"
+"       -k, --insecure\n"
+, stdout);
+ fputs(
+"              (TLS) By default, every SSL connection curl makes is verified to\n"
+"              be  secure.  This option allows curl to proceed and operate even\n"
+"              for server connections otherwise considered insecure.\n"
+"\n"
+"              The server connection is verified by making  sure  the  server's\n"
+"              certificate  contains  the  right name and verifies successfully\n"
+"              using the cert store.\n"
+"\n"
+"              See this online resource for further details:\n"
+, stdout);
+ fputs(
+"               https://curl.haxx.se/docs/sslcerts.html\n"
+"              See also --proxy-insecure and --cacert.\n"
+"\n"
+"       --interface <name>\n"
+"\n"
+"              Perform an operation using a specified interface. You can  enter\n"
+"              interface  name,  IP address or host name. An example could look\n"
+"              like:\n"
+"\n"
+"               curl --interface eth0:1 https://www.example.com/\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --dns-interface.\n"
+"\n"
+"       -4, --ipv4\n"
+"              This option tells curl to resolve names to IPv4 addresses  only,\n"
+"              and not for example try IPv6.\n"
+"\n"
+"              See  also  --http1.1  and  --http2.  This  option  overrides -6,\n"
+"              --ipv6.\n"
+"\n"
+"       -6, --ipv6\n"
+"              This option tells curl to resolve names to IPv6 addresses  only,\n"
+"              and not for example try IPv4.\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --http1.1  and  --http2.  This  option  overrides -6,\n"
+"              --ipv6.\n"
+"\n"
+"       -j, --junk-session-cookies\n"
+"              (HTTP) When curl is told to read cookies from a given file, this\n"
+"              option  will  make  it  discard all \"session cookies\". This will\n"
+"              basically have the same effect as if a new session  is  started.\n"
+"              Typical  browsers  always  discard  session cookies when they're\n"
+"              closed down.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also -b, --cookie and -c, --cookie-jar.\n"
+"\n"
+"       --keepalive-time <seconds>\n"
+"              This option sets the time a  connection  needs  to  remain  idle\n"
+"              before  sending keepalive probes and the time between individual\n"
+"              keepalive probes. It is currently effective on operating systems\n"
+"              offering  the  TCP_KEEPIDLE  and  TCP_KEEPINTVL  socket  options\n"
+"              (meaning Linux, recent AIX, HP-UX and more). This option has  no\n"
+, stdout);
+ fputs(
+"              effect if --no-keepalive is used.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"              If unspecified, the option defaults to 60 seconds.\n"
+"\n"
+"              Added in 7.18.0.\n"
+"\n"
+"       --key-type <type>\n"
+"              (TLS) Private key file type. Specify which type your --key  pro-\n"
+"              vided  private  key  is. DER, PEM, and ENG are supported. If not\n"
+"              specified, PEM is assumed.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --key <key>\n"
+"              (TLS SSH) Private key file name. Allows you to provide your pri-\n"
+"              vate  key in this separate file. For SSH, if not specified, curl\n"
+"              tries the following candidates in order:\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --krb <level>\n"
+"              (FTP) Enable Kerberos authentication and use. The level must  be\n"
+, stdout);
+ fputs(
+"              entered and should be one of 'clear', 'safe', 'confidential', or\n"
+"              'private'. Should you use a level that  is  not  one  of  these,\n"
+"              'private' will instead be used.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"              --krb  requires that the underlying libcurl was built to support\n"
+"              Kerberos.\n"
+"\n"
+"       --libcurl <file>\n"
+"              Append this option to any ordinary curl command  line,  and  you\n"
+, stdout);
+ fputs(
+"              will  get a libcurl-using C source code written to the file that\n"
+"              does the equivalent of what your command-line operation does!\n"
+"\n"
+"              If this option is used several times, the last given  file  name\n"
+"              will be used.\n"
+"\n"
+"              Added in 7.16.1.\n"
+"\n"
+"       --limit-rate <speed>\n"
+"              Specify  the  maximum  transfer  rate you want curl to use - for\n"
+"              both downloads and uploads. This feature is useful if you have a\n"
+, stdout);
+ fputs(
+"              limited pipe and you'd like your transfer not to use your entire\n"
+"              bandwidth. To make it slower than it otherwise would be.\n"
+"\n"
+"              The given speed is measured in bytes/second, unless a suffix  is\n"
+"              appended.   Appending  'k' or 'K' will count the number as kilo-\n"
+"              bytes, 'm' or M' makes it megabytes, while 'g' or 'G'  makes  it\n"
+"              gigabytes. Examples: 200K, 3m and 1G.\n"
+"\n"
+, stdout);
+ fputs(
+"              If  you  also use the -Y, --speed-limit option, that option will\n"
+"              take precedence and might cripple the rate-limiting slightly, to\n"
+"              help keeping the speed-limit logic working.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -l, --list-only\n"
+"              (FTP  POP3)  (FTP)  When  listing  an FTP directory, this switch\n"
+"              forces a name-only view. This is especially useful if  the  user\n"
+, stdout);
+ fputs(
+"              wants  to  machine-parse  the contents of an FTP directory since\n"
+"              the normal directory view doesn't use a standard look or format.\n"
+"              When used like this, the option causes a NLST command to be sent\n"
+"              to the server instead of LIST.\n"
+"\n"
+"              Note: Some FTP servers list only  files  in  their  response  to\n"
+"              NLST; they do not include sub-directories and symbolic links.\n"
+"\n"
+, stdout);
+ fputs(
+"              (POP3)  When  retrieving a specific email from POP3, this switch\n"
+"              forces a LIST command to be performed instead of RETR.  This  is\n"
+"              particularly  useful if the user wants to see if a specific mes-\n"
+"              sage id exists on the server and what size it is.\n"
+"\n"
+"              Note: When combined with -X, --request, this option can be  used\n"
+"              to send an UIDL command instead, so the user may use the email's\n"
+, stdout);
+ fputs(
+"              unique identifier rather  than  it's  message  id  to  make  the\n"
+"              request.\n"
+"\n"
+"              Added in 7.21.5.\n"
+"\n"
+"       --local-port <num/range>\n"
+"              Set  a  preferred single number or range (FROM-TO) of local port\n"
+"              numbers to use for the connection(s).  Note that port numbers by\n"
+"              nature  are a scarce resource that will be busy at times so set-\n"
+"              ting this range to something too narrow might cause  unnecessary\n"
+, stdout);
+ fputs(
+"              connection setup failures.\n"
+"\n"
+"              Added in 7.15.2.\n"
+"\n"
+"       --location-trusted\n"
+"              (HTTP)  Like  -L,  --location, but will allow sending the name +\n"
+"              password to all hosts that the site may redirect to. This may or\n"
+"              may not introduce a security breach if the site redirects you to\n"
+"              a site to which you'll send your authentication info  (which  is\n"
+"              plaintext in the case of HTTP Basic authentication).\n"
+"\n"
+, stdout);
+ fputs(
+"              See also -u, --user.\n"
+"\n"
+"       -L, --location\n"
+"              (HTTP)  If  the server reports that the requested page has moved\n"
+"              to a different location (indicated with a Location: header and a\n"
+"              3XX  response code), this option will make curl redo the request\n"
+"              on the new place. If used together with  -i,  --include  or  -I,\n"
+"              --head,  headers  from  all  requested pages will be shown. When\n"
+, stdout);
+ fputs(
+"              authentication is used, curl only sends its credentials  to  the\n"
+"              initial  host.  If a redirect takes curl to a different host, it\n"
+"              won't be able to intercept the user+password. See  also  --loca-\n"
+"              tion-trusted  on how to change this. You can limit the amount of\n"
+"              redirects to follow by using the --max-redirs option.\n"
+"\n"
+"              When curl follows a redirect and the request is not a plain  GET\n"
+, stdout);
+ fputs(
+"              (for example POST or PUT), it will do the following request with\n"
+"              a GET if the HTTP response was 301, 302, or 303. If the response\n"
+"              code  was  any  other  3xx code, curl will re-send the following\n"
+"              request using the same unmodified method.\n"
+"\n"
+"              You can tell curl to not change the non-GET  request  method  to\n"
+"              GET  after  a  30x  response  by using the dedicated options for\n"
+, stdout);
+ fputs(
+"              that: --post301, --post302 and --post303.\n"
+"\n"
+"       --login-options <options>\n"
+"              (IMAP POP3 SMTP) Specify the login options to use during  server\n"
+"              authentication.\n"
+"\n"
+"              You  can  use  the  login  options  to specify protocol specific\n"
+"              options that may be used during authentication. At present  only\n"
+"              IMAP,  POP3 and SMTP support login options. For more information\n"
+, stdout);
+ fputs(
+"              about the login options please see RFC 2384, RFC 5092  and  IETF\n"
+"              draft draft-earhart-url-smtp-00.txt\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.34.0.\n"
+"\n"
+"       --mail-auth <address>\n"
+"              (SMTP)  Specify  a  single address. This will be used to specify\n"
+"              the authentication address (identity)  of  a  submitted  message\n"
+"              that is being relayed to another server.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --mail-rcpt and --mail-from. Added in 7.25.0.\n"
+"\n"
+"       --mail-from <address>\n"
+"              (SMTP)  Specify  a single address that the given mail should get\n"
+"              sent from.\n"
+"\n"
+"              See also --mail-rcpt and --mail-auth. Added in 7.20.0.\n"
+"\n"
+"       --mail-rcpt <address>\n"
+"              (SMTP) Specify a single address, user name or mailing list name.\n"
+"              Repeat this option several times to send to multiple recipients.\n"
+, stdout);
+ fputs(
+"              When  performing a mail transfer, the recipient should specify a\n"
+"              valid email address to send the mail to.\n"
+"\n"
+"              When performing an  address  verification  (VRFY  command),  the\n"
+"              recipient  should be specified as the user name or user name and\n"
+"              domain (as per Section 3.5 of RFC5321). (Added in 7.34.0)\n"
+"\n"
+"              When performing a mailing list expand (EXPN command), the recip-\n"
+, stdout);
+ fputs(
+"              ient  should  be  specified using the mailing list name, such as\n"
+"              \"Friends\" or \"London-Office\".  (Added in 7.34.0)\n"
+"\n"
+"              Added in 7.20.0.\n"
+"\n"
+"       -M, --manual\n"
+"              Manual. Display the huge help text.\n"
+"\n"
+"       --max-filesize <bytes>\n"
+"              Specify the maximum size (in bytes) of a file  to  download.  If\n"
+"              the  file requested is larger than this value, the transfer will\n"
+"              not start and curl will return with exit code 63.\n"
+"\n"
+, stdout);
+ fputs(
+"              NOTE: The file size is not always known prior to  download,  and\n"
+"              for such files this option has no effect even if the file trans-\n"
+"              fer ends up being larger than this given  limit.  This  concerns\n"
+"              both FTP and HTTP transfers.\n"
+"\n"
+"              See also --limit-rate.\n"
+"\n"
+"       --max-redirs <num>\n"
+"              (HTTP)  Set  maximum  number  of redirection-followings allowed.\n"
+, stdout);
+ fputs(
+"              When -L, --location is used, is used to prevent curl  from  fol-\n"
+"              lowing  redirections \"in absurdum\". By default, the limit is set\n"
+"              to 50 redirections. Set this option to -1 to make it unlimited.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -m, --max-time <time>\n"
+"              Maximum time in seconds that you allow the  whole  operation  to\n"
+, stdout);
+ fputs(
+"              take.   This is useful for preventing your batch jobs from hang-\n"
+"              ing for hours due to slow networks or links going  down.   Since\n"
+"              7.32.0, this option accepts decimal values, but the actual time-\n"
+"              out will decrease in accuracy as the specified timeout increases\n"
+"              in decimal precision.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also --connect-timeout.\n"
+"\n"
+"       --metalink\n"
+, stdout);
+ fputs(
+"              This  option  can  tell curl to parse and process a given URI as\n"
+"              Metalink file (both version 3 and 4 (RFC  5854)  are  supported)\n"
+"              and  make use of the mirrors listed within for failover if there\n"
+"              are errors (such as the file or server not being available).  It\n"
+"              will  also  verify  the hash of the file after the download com-\n"
+"              pletes. The Metalink file itself is downloaded and processed  in\n"
+, stdout);
+ fputs(
+"              memory and not stored in the local file system.\n"
+"\n"
+"              Example to use a remote Metalink file:\n"
+"\n"
+"               curl --metalink http://www.example.com/example.metalink\n"
+"\n"
+"              To use a Metalink file in the local file system, use FILE proto-\n"
+"              col (file://):\n"
+"\n"
+"               curl --metalink file://example.metalink\n"
+"\n"
+"              Please note that if FILE protocol is disabled, there is  no  way\n"
+, stdout);
+ fputs(
+"              to  use  a local Metalink file at the time of this writing. Also\n"
+"              note that if --metalink and -i,  --include  are  used  together,\n"
+"              --include  will be ignored. This is because including headers in\n"
+"              the response will break Metalink parser and if the  headers  are\n"
+"              included in the file described in Metalink file, hash check will\n"
+"              fail.\n"
+"\n"
+"              --metalink requires that the underlying  libcurl  was  built  to\n"
+, stdout);
+ fputs(
+"              support metalink. Added in 7.27.0.\n"
+"\n"
+"       --negotiate\n"
+"              (HTTP) Enables Negotiate (SPNEGO) authentication.\n"
+"\n"
+"              This  option  requires a library built with GSS-API or SSPI sup-\n"
+"              port. Use -V, --version  to  see  if  your  curl  supports  GSS-\n"
+"              API/SSPI or SPNEGO.\n"
+"\n"
+"              When  using this option, you must also provide a fake -u, --user\n"
+"              option to activate the authentication code properly.  Sending  a\n"
+, stdout);
+ fputs(
+"              '-u  :'  is  enough  as  the user name and password from the -u,\n"
+"              --user option aren't actually used.\n"
+"\n"
+"              If this option is used several times,  only  the  first  one  is\n"
+"              used.\n"
+"\n"
+"              See also --basic and --ntlm and --anyauth and --proxy-negotiate.\n"
+"\n"
+"       --netrc-file <filename>\n"
+"              This  option  is similar to -n, --netrc, except that you provide\n"
+"              the path (absolute or relative) to  the  netrc  file  that  Curl\n"
+, stdout);
+ fputs(
+"              should use.  You can only specify one netrc file per invocation.\n"
+"              If several --netrc-file options are provided, the last one  will\n"
+"              be used.\n"
+"\n"
+"              It will abide by --netrc-optional if specified.\n"
+"\n"
+"              This option overrides -n, --netrc. Added in 7.21.5.\n"
+"\n"
+"       --netrc-optional\n"
+"              Very  similar  to  -n, --netrc, but this option makes the .netrc\n"
+"              usage optional and not mandatory as the -n, --netrc option does.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --netrc-file. This option overrides -n, --netrc.\n"
+"\n"
+"       -n, --netrc\n"
+"              Makes curl scan the .netrc  (_netrc  on  Windows)  file  in  the\n"
+"              user's home directory for login name and password. This is typi-\n"
+"              cally used for FTP on Unix. If used with HTTP, curl will  enable\n"
+"              user authentication. See netrc(5) ftp(1) for details on the file\n"
+"              format. Curl will not complain if that  file  doesn't  have  the\n"
+, stdout);
+ fputs(
+"              right permissions (it should not be either world- or group-read-\n"
+"              able). The environment variable \"HOME\" is used to find the  home\n"
+"              directory.\n"
+"\n"
+"              A  quick  and  very  simple  example of how to setup a .netrc to\n"
+"              allow curl to FTP to the machine host.domain.com with user  name\n"
+"              'myself' and password 'secret' should look similar to:\n"
+"\n"
+"              machine host.domain.com login myself password secret\n"
+"\n"
+"       -:, --next\n"
+, stdout);
+ fputs(
+"              Tells curl to use a separate operation for the following URL and\n"
+"              associated  options.  This  allows  you  to  send  several   URL\n"
+"              requests,  each  with  their  own specific options, for example,\n"
+"              such as different user names or custom requests for each.\n"
+"\n"
+"              -:, --next will reset all local options  and  only  global  ones\n"
+"              will  have  their values survive over to the operation following\n"
+, stdout);
+ fputs(
+"              the -:, --next instruction. Global options  include  -v,  --ver-\n"
+"              bose, --trace, --trace-ascii and --fail-early.\n"
+"\n"
+"              For  example,  you can do both a GET and a POST in a single com-\n"
+"              mand line:\n"
+"\n"
+"               curl www1.example.com --next -d postthis www2.example.com\n"
+"\n"
+"              Added in 7.36.0.\n"
+"\n"
+"       --no-alpn\n"
+"              (HTTPS) Disable the ALPN  TLS  extension.  ALPN  is  enabled  by\n"
+, stdout);
+ fputs(
+"              default  if  libcurl was built with an SSL library that supports\n"
+"              ALPN. ALPN is used by a libcurl that supports HTTP/2 to  negoti-\n"
+"              ate HTTP/2 support with the server during https sessions.\n"
+"\n"
+"              See  also  --no-npn  and  --http2.  --no-alpn  requires that the\n"
+"              underlying libcurl was built to support TLS. Added in 7.36.0.\n"
+"\n"
+"       -N, --no-buffer\n"
+"              Disables the buffering of the output stream. In normal work sit-\n"
+, stdout);
+ fputs(
+"              uations,  curl  will  use a standard buffered output stream that\n"
+"              will have the effect that it will output the data in chunks, not\n"
+"              necessarily  exactly  when  the data arrives.  Using this option\n"
+"              will disable that buffering.\n"
+"\n"
+"              Note that this is the negated option name  documented.  You  can\n"
+"              thus use --buffer to enforce the buffering.\n"
+"\n"
+"       --no-keepalive\n"
+, stdout);
+ fputs(
+"              Disables  the  use  of keepalive messages on the TCP connection.\n"
+"              curl otherwise enables them by default.\n"
+"\n"
+"              Note that this is the negated option name  documented.  You  can\n"
+"              thus use --keepalive to enforce keepalive.\n"
+"\n"
+"       --no-npn\n"
+"              (HTTPS) Disable the NPN TLS extension. NPN is enabled by default\n"
+"              if libcurl was built with an SSL library that supports NPN.  NPN\n"
+, stdout);
+ fputs(
+"              is  used  by  a libcurl that supports HTTP/2 to negotiate HTTP/2\n"
+"              support with the server during https sessions.\n"
+"\n"
+"              See also --no-alpn  and  --http2.  --no-npn  requires  that  the\n"
+"              underlying libcurl was built to support TLS. Added in 7.36.0.\n"
+"\n"
+"       --no-sessionid\n"
+"              (TLS)  Disable curl's use of SSL session-ID caching.  By default\n"
+"              all transfers are done using the cache. Note that while  nothing\n"
+, stdout);
+ fputs(
+"              should  ever  get  hurt  by attempting to reuse SSL session-IDs,\n"
+"              there seem to be broken SSL implementations in the wild that may\n"
+"              require you to disable this in order for you to succeed.\n"
+"\n"
+"              Note  that  this  is the negated option name documented. You can\n"
+"              thus use --sessionid to enforce session-ID caching.\n"
+"\n"
+"              Added in 7.16.0.\n"
+"\n"
+"       --noproxy <no-proxy-list>\n"
+, stdout);
+ fputs(
+"              Comma-separated list of hosts which do not use a proxy,  if  one\n"
+"              is  specified.  The only wildcard is a single * character, which\n"
+"              matches all hosts, and effectively disables the proxy. Each name\n"
+"              in  this  list  is matched as either a domain which contains the\n"
+"              hostname, or the hostname itself. For example,  local.com  would\n"
+"              match   local.com,  local.com:80,  and  www.local.com,  but  not\n"
+, stdout);
+ fputs(
+"              www.notlocal.com.\n"
+"\n"
+"              Since 7.53.0, This option overrides  the  environment  variables\n"
+"              that  disable the proxy. If there's an environment variable dis-\n"
+"              abling a proxy, you can set noproxy list to \"\" to override it.\n"
+"\n"
+"              Added in 7.19.4.\n"
+"\n"
+"       --ntlm-wb\n"
+"              (HTTP) Enables NTLM much in the style --ntlm does, but hand over\n"
+"              the  authentication  to the separate binary ntlmauth application\n"
+, stdout);
+ fputs(
+"              that is executed when needed.\n"
+"\n"
+"              See also --ntlm and --proxy-ntlm.\n"
+"\n"
+"       --ntlm (HTTP) Enables  NTLM  authentication.  The  NTLM  authentication\n"
+"              method was designed by Microsoft and is used by IIS web servers.\n"
+"              It is a proprietary protocol, reverse-engineered by clever  peo-\n"
+"              ple and implemented in curl based on their efforts. This kind of\n"
+"              behavior should not be endorsed, you should  encourage  everyone\n"
+, stdout);
+ fputs(
+"              who  uses  NTLM to switch to a public and documented authentica-\n"
+"              tion method instead, such as Digest.\n"
+"\n"
+"              If you want to enable NTLM for your proxy  authentication,  then\n"
+"              use --proxy-ntlm.\n"
+"\n"
+"              If  this  option  is  used  several times, only the first one is\n"
+"              used.\n"
+"\n"
+"              See also  --proxy-ntlm.  --ntlm  requires  that  the  underlying\n"
+, stdout);
+ fputs(
+"              libcurl  was built to support TLS. This option overrides --basic\n"
+"              and --negotiated and --digest and --anyauth.\n"
+"\n"
+"       --oauth2-bearer <token>\n"
+"              (IMAP POP3 SMTP) Specify the Bearer Token for OAUTH  2.0  server\n"
+"              authentication. The Bearer Token is used in conjunction with the\n"
+"              user name which can be specified as part of  the  --url  or  -u,\n"
+"              --user options.\n"
+"\n"
+, stdout);
+ fputs(
+"              The  Bearer  Token  and user name are formatted according to RFC\n"
+"              6750.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -o, --output <file>\n"
+"              Write output to <file> instead of stdout. If you are using {} or\n"
+"              []  to  fetch  multiple documents, you can use '#' followed by a\n"
+"              number in the <file> specifier. That variable will  be  replaced\n"
+, stdout);
+ fputs(
+"              with the current string for the URL being fetched. Like in:\n"
+"\n"
+"               curl http://{one,two}.example.com -o \"file_#1.txt\"\n"
+"\n"
+"              or use several variables like:\n"
+"\n"
+"               curl http://{site,host}.host[1-5].com -o \"#1_#2\"\n"
+"\n"
+"              You  may use this option as many times as the number of URLs you\n"
+"              have. For example, if you specify two URLs on the  same  command\n"
+"              line, you can use it like this:\n"
+"\n"
+, stdout);
+ fputs(
+"                curl -o aa example.com -o bb example.net\n"
+"\n"
+"              and  the  order  of  the -o options and the URLs doesn't matter,\n"
+"              just that the first -o is for the first URL and so  on,  so  the\n"
+"              above command line can also be written as\n"
+"\n"
+"                curl example.com example.net -o aa -o bb\n"
+"\n"
+"              See  also  the --create-dirs option to create the local directo-\n"
+"              ries dynamically. Specifying the output as '-' (a  single  dash)\n"
+, stdout);
+ fputs(
+"              will force the output to be done to stdout.\n"
+"\n"
+"              See   also  -O,  --remote-name  and  --remote-name-all  and  -J,\n"
+"              --remote-header-name.\n"
+"\n"
+"       --pass <phrase>\n"
+"              (SSH TLS) Passphrase for the private key\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --path-as-is\n"
+"              Tell curl to not handle sequences of /../ or /./  in  the  given\n"
+, stdout);
+ fputs(
+"              URL  path.  Normally curl will squash or merge them according to\n"
+"              standards but with this option set you tell it not to do that.\n"
+"\n"
+"              Added in 7.42.0.\n"
+"\n"
+"       --pinnedpubkey <hashes>\n"
+"              (TLS) Tells curl to  use  the  specified  public  key  file  (or\n"
+"              hashes)  to  verify the peer. This can be a path to a file which\n"
+"              contains a single public key in PEM or DER format, or any number\n"
+, stdout);
+ fputs(
+"              of base64 encoded sha256 hashes preceded by 'sha256//' and sepa-\n"
+"              rated by ';'\n"
+"\n"
+"              When negotiating a TLS or SSL connection,  the  server  sends  a\n"
+"              certificate  indicating  its identity. A public key is extracted\n"
+"              from this certificate and if it does not exactly match the  pub-\n"
+"              lic  key provided to this option, curl will abort the connection\n"
+"              before sending or receiving any data.\n"
+"\n"
+, stdout);
+ fputs(
+"              PEM/DER support:\n"
+"                7.39.0: OpenSSL, GnuTLS and GSKit\n"
+"                7.43.0: NSS and wolfSSL/CyaSSL\n"
+"                7.47.0: mbedtls\n"
+"                7.49.0: PolarSSL sha256 support:\n"
+"                7.44.0: OpenSSL, GnuTLS, NSS and wolfSSL/CyaSSL.\n"
+"                7.47.0: mbedtls\n"
+"                7.49.0: PolarSSL Other SSL backends not supported.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --post301\n"
+, stdout);
+ fputs(
+"              (HTTP) Tells curl to respect RFC 7231/6.4.2 and not convert POST\n"
+"              requests into GET requests when following a 301 redirection. The\n"
+"              non-RFC behaviour is ubiquitous in web browsers,  so  curl  does\n"
+"              the  conversion  by  default to maintain consistency. However, a\n"
+"              server may require a POST to remain a POST after  such  a  redi-\n"
+"              rection.  This  option is meaningful only when using -L, --loca-\n"
+"              tion.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --post302 and --post303 and -L,  --location.  Added  in\n"
+"              7.17.1.\n"
+"\n"
+"       --post302\n"
+"              (HTTP) Tells curl to respect RFC 7231/6.4.3 and not convert POST\n"
+"              requests into GET requests when following a 302 redirection. The\n"
+"              non-RFC  behaviour  is  ubiquitous in web browsers, so curl does\n"
+"              the conversion by default to maintain  consistency.  However,  a\n"
+, stdout);
+ fputs(
+"              server  may  require  a POST to remain a POST after such a redi-\n"
+"              rection. This option is meaningful only when using  -L,  --loca-\n"
+"              tion.\n"
+"\n"
+"              See  also  --post301  and --post303 and -L, --location. Added in\n"
+"              7.19.1.\n"
+"\n"
+"       --post303\n"
+"              (HTTP) Tells curl to respect RFC 7231/6.4.4 and not convert POST\n"
+"              requests into GET requests when following a 303 redirection. The\n"
+, stdout);
+ fputs(
+"              non-RFC behaviour is ubiquitous in web browsers,  so  curl  does\n"
+"              the  conversion  by  default to maintain consistency. However, a\n"
+"              server may require a POST to remain a POST after  such  a  redi-\n"
+"              rection.  This  option is meaningful only when using -L, --loca-\n"
+"              tion.\n"
+"\n"
+"              See also --post302 and --post301 and -L,  --location.  Added  in\n"
+"              7.26.0.\n"
+"\n"
+"       --preproxy [protocol://]host[:port]\n"
+, stdout);
+ fputs(
+"              Use  the  specified  SOCKS proxy before connecting to an HTTP or\n"
+"              HTTPS -x, --proxy. In such a case curl  first  connects  to  the\n"
+"              SOCKS  proxy  and  then  connects (through SOCKS) to the HTTP or\n"
+"              HTTPS proxy. Hence pre proxy.\n"
+"\n"
+"              The pre proxy string should be specified with a protocol:// pre-\n"
+"              fix  to  specify  alternative  proxy  protocols.  Use socks4://,\n"
+, stdout);
+ fputs(
+"              socks4a://, socks5:// or  socks5h://  to  request  the  specific\n"
+"              SOCKS  version  to be used. No protocol specified will make curl\n"
+"              default to SOCKS4.\n"
+"\n"
+"              If the port number is not specified in the proxy string,  it  is\n"
+"              assumed to be 1080.\n"
+"\n"
+"              User and password that might be provided in the proxy string are\n"
+"              URL decoded by curl. This allows you to pass in special  charac-\n"
+, stdout);
+ fputs(
+"              ters such as @ by using %40 or pass in a colon with %3a.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       -#, --progress-bar\n"
+"              Make  curl  display  transfer  progress as a simple progress bar\n"
+"              instead of the standard, more informational, meter.\n"
+"\n"
+"              This progress bar draws a single line of '#'  characters  across\n"
+, stdout);
+ fputs(
+"              the screen and shows a percentage if the transfer size is known.\n"
+"              For transfers without a known size, it will instead  output  one\n"
+"              '#' character for every 1024 bytes transferred.\n"
+"\n"
+"       --proto-default <protocol>\n"
+"              Tells curl to use protocol for any URL missing a scheme name.\n"
+"\n"
+"              Example:\n"
+"\n"
+"               curl --proto-default https ftp.mozilla.org\n"
+"\n"
+"              An  unknown  or  unsupported  protocol causes error CURLE_UNSUP-\n"
+, stdout);
+ fputs(
+"              PORTED_PROTOCOL (1).\n"
+"\n"
+"              This option does not change the default proxy protocol (http).\n"
+"\n"
+"              Without this option curl would make a guess based on  the  host,\n"
+"              see --url for details.\n"
+"\n"
+"              Added in 7.45.0.\n"
+"\n"
+"       --proto-redir <protocols>\n"
+"              Tells  curl to limit what protocols it may use on redirect. Pro-\n"
+"              tocols denied by --proto are not overridden by this option.  See\n"
+, stdout);
+ fputs(
+"              --proto for how protocols are represented.\n"
+"\n"
+"              Example, allow only HTTP and HTTPS on redirect:\n"
+"\n"
+"               curl --proto-redir -all,http,https http://example.com\n"
+"\n"
+"              By default curl will allow all protocols on redirect except sev-\n"
+"              eral disabled for security reasons: Since 7.19.4  FILE  and  SCP\n"
+"              are  disabled,  and since 7.40.0 SMB and SMBS are also disabled.\n"
+, stdout);
+ fputs(
+"              Specifying all  or  +all  enables  all  protocols  on  redirect,\n"
+"              including those disabled for security.\n"
+"\n"
+"              Added in 7.20.2.\n"
+"\n"
+"       --proto <protocols>\n"
+"              Tells  curl  to limit what protocols it may use in the transfer.\n"
+"              Protocols are evaluated left to right, are comma separated,  and\n"
+"              are each a protocol name or\n"
+"\n"
+"              +  Permit this protocol in addition to protocols already permit-\n"
+, stdout);
+ fputs(
+"                 ted (this is the default if no modifier is used).\n"
+"\n"
+"              -  Deny this protocol, removing it from the  list  of  protocols\n"
+"                 already permitted.\n"
+"\n"
+"              =  Permit  only this protocol (ignoring the list already permit-\n"
+"                 ted), though subject  to  later  modification  by  subsequent\n"
+"                 entries in the comma separated list.\n"
+"\n"
+"              For example:\n"
+"\n"
+"              --proto -ftps  uses the default protocols, but disables ftps\n"
+, stdout);
+ fputs(
+"\n"
+"              --proto -all,https,+http\n"
+"                             only enables http and https\n"
+"\n"
+"              --proto =http,https\n"
+"                             also only enables http and https\n"
+"\n"
+"       Unknown protocols produce a warning. This allows scripts to safely rely\n"
+"       on being able to disable potentially dangerous protocols, without rely-\n"
+"       ing  upon  support  for that protocol being built into curl to avoid an\n"
+"       error.\n"
+"\n"
+, stdout);
+ fputs(
+"       This option can be used multiple times, in which case the effect is the\n"
+"       same as concatenating the protocols into one instance of the option.\n"
+"\n"
+"       See also --proto-redir and --proto-default. Added in 7.20.2.\n"
+"\n"
+"       --proxy-anyauth\n"
+"              Tells  curl to pick a suitable authentication method when commu-\n"
+"              nicating with the given HTTP proxy. This might  cause  an  extra\n"
+"              request/response round-trip.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also -x, --proxy and --proxy-basic and --proxy-digest. Added\n"
+"              in 7.13.2.\n"
+"\n"
+"       --proxy-basic\n"
+"              Tells curl to use HTTP Basic authentication  when  communicating\n"
+"              with the given proxy. Use --basic for enabling HTTP Basic with a\n"
+"              remote host. Basic is the  default  authentication  method  curl\n"
+"              uses with proxies.\n"
+"\n"
+"              See also -x, --proxy and --proxy-anyauth and --proxy-digest.\n"
+"\n"
+, stdout);
+ fputs(
+"       --proxy-cacert <file>\n"
+"              Same as --cacert but used in HTTPS proxy context.\n"
+"\n"
+"              See  also  --proxy-capath  and  --cacert  and  --capath  and -x,\n"
+"              --proxy. Added in 7.52.0.\n"
+"\n"
+"       --proxy-capath <dir>\n"
+"              Same as --capath but used in HTTPS proxy context.\n"
+"\n"
+"              See also --proxy-cacert and -x, --proxy and --capath.  Added  in\n"
+"              7.52.0.\n"
+"\n"
+"       --proxy-cert-type <type>\n"
+, stdout);
+ fputs(
+"              Same as --cert-type but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-cert <cert[:passwd]>\n"
+"              Same as -E, --cert but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-ciphers <list>\n"
+"              Same as --ciphers but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-crlfile <file>\n"
+"              Same as --crlfile but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+, stdout);
+ fputs(
+"       --proxy-digest\n"
+"              Tells  curl to use HTTP Digest authentication when communicating\n"
+"              with the given proxy. Use --digest for enabling HTTP Digest with\n"
+"              a remote host.\n"
+"\n"
+"              See also -x, --proxy and --proxy-anyauth and --proxy-basic.\n"
+"\n"
+"       --proxy-header <header>\n"
+"              (HTTP)  Extra header to include in the request when sending HTTP\n"
+"              to a proxy. You may specify any number of extra headers. This is\n"
+, stdout);
+ fputs(
+"              the  equivalent option to -H, --header but is for proxy communi-\n"
+"              cation only like in CONNECT requests when you  want  a  separate\n"
+"              header  sent  to  the proxy to what is sent to the actual remote\n"
+"              host.\n"
+"\n"
+"              curl will make sure that each header  you  add/replace  is  sent\n"
+"              with the proper end-of-line marker, you should thus not add that\n"
+"              as a part of the header content: do not add newlines or carriage\n"
+, stdout);
+ fputs(
+"              returns, they will only mess things up for you.\n"
+"\n"
+"              Headers  specified  with  this  option  will  not be included in\n"
+"              requests that curl knows will not be sent to a proxy.\n"
+"\n"
+"              This option can be used  multiple  times  to  add/replace/remove\n"
+"              multiple headers.\n"
+"\n"
+"              Added in 7.37.0.\n"
+"       --proxy-insecure\n"
+"              Same as -k, --insecure but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+, stdout);
+ fputs(
+"       --proxy-key-type <type>\n"
+"              Same as --key-type but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-key <key>\n"
+"              Same as --key but used in HTTPS proxy context.\n"
+"\n"
+"       --proxy-negotiate\n"
+"              Tells  curl  to  use HTTP Negotiate (SPNEGO) authentication when\n"
+"              communicating with the given proxy. Use --negotiate for enabling\n"
+"              HTTP Negotiate (SPNEGO) with a remote host.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --proxy-anyauth and --proxy-basic. Added in 7.17.1.\n"
+"\n"
+"       --proxy-ntlm\n"
+"              Tells  curl  to  use HTTP NTLM authentication when communicating\n"
+"              with the given proxy. Use --ntlm for enabling NTLM with a remote\n"
+"              host.\n"
+"\n"
+"              See also --proxy-negotiate and --proxy-anyauth.\n"
+"\n"
+"       --proxy-pass <phrase>\n"
+"              Same as --pass but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-service-name <name>\n"
+, stdout);
+ fputs(
+"              This  option  allows  you  to  change the service name for proxy\n"
+"              negotiation.\n"
+"\n"
+"              Added in 7.43.0.\n"
+"\n"
+"       --proxy-ssl-allow-beast\n"
+"              Same as --ssl-allow-beast but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-tlsauthtype <type>\n"
+"              Same as --tlsauthtype but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-tlspassword <string>\n"
+, stdout);
+ fputs(
+"              Same as --tlspassword but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-tlsuser <name>\n"
+"              Same as --tlsuser but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --proxy-tlsv1\n"
+"              Same as -1, --tlsv1 but used in HTTPS proxy context.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       -U, --proxy-user <user:password>\n"
+"              Specify the user name and password to use for proxy  authentica-\n"
+"              tion.\n"
+"\n"
+, stdout);
+ fputs(
+"              If  you  use  a  Windows  SSPI-enabled curl binary and do either\n"
+"              Negotiate or NTLM authentication  then  you  can  tell  curl  to\n"
+"              select the user name and password from your environment by spec-\n"
+"              ifying a single colon with this option: \"-U :\".\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -x, --proxy [protocol://]host[:port]\n"
+"              Use the specified proxy.\n"
+"\n"
+, stdout);
+ fputs(
+"              The proxy string can be specified with a protocol:// prefix.  No\n"
+"              protocol specified or http:// will be treated as HTTP proxy. Use\n"
+"              socks4://, socks4a://, socks5:// or socks5h:// to request a spe-\n"
+"              cific SOCKS version to be used.  (The protocol support was added\n"
+"              in curl 7.21.7)\n"
+"\n"
+"              HTTPS proxy support via https:// protocol prefix  was  added  in\n"
+"              7.52.0 for OpenSSL, GnuTLS and NSS.\n"
+"\n"
+, stdout);
+ fputs(
+"              Unrecognized  and  unsupported  proxy  protocols  cause an error\n"
+"              since 7.52.0.  Prior versions may ignore the  protocol  and  use\n"
+"              http:// instead.\n"
+"\n"
+"              If  the  port number is not specified in the proxy string, it is\n"
+"              assumed to be 1080.\n"
+"\n"
+"              This option overrides existing environment  variables  that  set\n"
+"              the  proxy  to use. If there's an environment variable setting a\n"
+, stdout);
+ fputs(
+"              proxy, you can set proxy to \"\" to override it.\n"
+"\n"
+"              All operations that are performed over an HTTP proxy will trans-\n"
+"              parently  be  converted  to HTTP. It means that certain protocol\n"
+"              specific operations might not be available. This is not the case\n"
+"              if you can tunnel through the proxy, as one with the -p, --prox-\n"
+"              ytunnel option.\n"
+"\n"
+"              User and password that might be provided in the proxy string are\n"
+, stdout);
+ fputs(
+"              URL  decoded by curl. This allows you to pass in special charac-\n"
+"              ters such as @ by using %40 or pass in a colon with %3a.\n"
+"\n"
+"              The proxy host can be specified the exact same way as the  proxy\n"
+"              environment  variables,  including the protocol prefix (http://)\n"
+"              and the embedded user + password.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --proxy1.0 <host[:port]>\n"
+, stdout);
+ fputs(
+"              Use the specified HTTP 1.0 proxy. If  the  port  number  is  not\n"
+"              specified, it is assumed at port 1080.\n"
+"\n"
+"              The  only  difference between this and the HTTP proxy option -x,\n"
+"              --proxy, is that attempts to use CONNECT through the proxy  will\n"
+"              specify an HTTP 1.0 protocol instead of the default HTTP 1.1.\n"
+"\n"
+"       -p, --proxytunnel\n"
+"              When  an  HTTP proxy is used -x, --proxy, this option will cause\n"
+, stdout);
+ fputs(
+"              non-HTTP protocols  to  attempt  to  tunnel  through  the  proxy\n"
+"              instead  of merely using it to do HTTP-like operations. The tun-\n"
+"              nel approach is made with the HTTP  proxy  CONNECT  request  and\n"
+"              requires that the proxy allows direct connect to the remote port\n"
+"              number curl wants to tunnel through to.\n"
+"\n"
+"              To suppress proxy CONNECT response headers when curl is  set  to\n"
+, stdout);
+ fputs(
+"              output headers use --suppress-connect-headers.\n"
+"\n"
+"              See also -x, --proxy.\n"
+"\n"
+"       --pubkey <key>\n"
+"              (SFTP SCP) Public key file name. Allows you to provide your pub-\n"
+"              lic key in this separate file.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"              (As of 7.39.0, curl attempts to automatically extract the public\n"
+"              key  from the private key file, so passing this option is gener-\n"
+, stdout);
+ fputs(
+"              ally not required. Note that this public key extraction requires\n"
+"              libcurl  to  be linked against a copy of libssh2 1.2.8 or higher\n"
+"              that is itself linked against OpenSSL.)\n"
+"\n"
+"       -Q, --quote\n"
+"              (FTP SFTP) Send an arbitrary command to the remote FTP  or  SFTP\n"
+"              server.  Quote commands are sent BEFORE the transfer takes place\n"
+"              (just after the initial PWD command in an FTP  transfer,  to  be\n"
+, stdout);
+ fputs(
+"              exact). To make commands take place after a successful transfer,\n"
+"              prefix them with a dash '-'.  To make  commands  be  sent  after\n"
+"              curl has changed the working directory, just before the transfer\n"
+"              command(s), prefix the command with a '+'  (this  is  only  sup-\n"
+"              ported for FTP). You may specify any number of commands.\n"
+"\n"
+"              If  the  server  returns  failure  for  one of the commands, the\n"
+, stdout);
+ fputs(
+"              entire operation will be aborted. You  must  send  syntactically\n"
+"              correct  FTP  commands as RFC 959 defines to FTP servers, or one\n"
+"              of the commands listed below to SFTP servers.\n"
+"\n"
+"              This option can be used multiple times. When speaking to an  FTP\n"
+"              server,  prefix  the  command  with an asterisk (*) to make curl\n"
+"              continue even if the command fails as by default curl will  stop\n"
+"              at first failure.\n"
+"\n"
+, stdout);
+ fputs(
+"              SFTP  is a binary protocol. Unlike for FTP, curl interprets SFTP\n"
+"              quote commands itself before sending them to the  server.   File\n"
+"              names may be quoted shell-style to embed spaces or special char-\n"
+"              acters.  Following is the list of all supported SFTP quote  com-\n"
+"              mands:\n"
+"\n"
+"              chgrp group file\n"
+"                     The  chgrp command sets the group ID of the file named by\n"
+, stdout);
+ fputs(
+"                     the file operand to the group ID specified by  the  group\n"
+"                     operand. The group operand is a decimal integer group ID.\n"
+"\n"
+"              chmod mode file\n"
+"                     The  chmod  command  modifies  the  file mode bits of the\n"
+"                     specified file. The mode operand is an octal integer mode\n"
+"                     number.\n"
+"\n"
+"              chown user file\n"
+"                     The chown command sets the owner of the file named by the\n"
+, stdout);
+ fputs(
+"                     file operand to the user ID specified by the  user  oper-\n"
+"                     and. The user operand is a decimal integer user ID.\n"
+"\n"
+"              ln source_file target_file\n"
+"                     The ln and symlink commands create a symbolic link at the\n"
+"                     target_file location pointing to  the  source_file  loca-\n"
+"                     tion.\n"
+"\n"
+"              mkdir directory_name\n"
+"                     The  mkdir  command  creates  the  directory named by the\n"
+, stdout);
+ fputs(
+"                     directory_name operand.\n"
+"\n"
+"              pwd    The pwd command returns the absolute pathname of the cur-\n"
+"                     rent working directory.\n"
+"\n"
+"              rename source target\n"
+"                     The rename command renames the file or directory named by\n"
+"                     the source operand to the destination path named  by  the\n"
+"                     target operand.\n"
+"\n"
+"              rm file\n"
+, stdout);
+ fputs(
+"                     The rm command removes the file specified by the file op-\n"
+"                     erand.\n"
+"\n"
+"              rmdir directory\n"
+"                     The rmdir command removes the directory  entry  specified\n"
+"                     by the directory operand, provided it is empty.\n"
+"\n"
+"              symlink source_file target_file\n"
+"                     See ln.\n"
+"\n"
+"       --random-file <file>\n"
+"              Specify the path name to file containing what will be considered\n"
+, stdout);
+ fputs(
+"              as random data. The data may be used to seed the  random  engine\n"
+"              for SSL connections.  See also the --egd-file option.\n"
+"\n"
+"       -r, --range <range>\n"
+"              (HTTP  FTP SFTP FILE) Retrieve a byte range (i.e a partial docu-\n"
+"              ment) from a HTTP/1.1, FTP or  SFTP  server  or  a  local  FILE.\n"
+"              Ranges can be specified in a number of ways.\n"
+"\n"
+"              0-499     specifies the first 500 bytes\n"
+"\n"
+, stdout);
+ fputs(
+"              500-999   specifies the second 500 bytes\n"
+"\n"
+"              -500      specifies the last 500 bytes\n"
+"\n"
+"              9500-     specifies the bytes from offset 9500 and forward\n"
+"\n"
+"              0-0,-1    specifies the first and last byte only(*)(HTTP)\n"
+"\n"
+"              100-199,500-599\n"
+"                        specifies two separate 100-byte ranges(*) (HTTP)\n"
+"\n"
+"              (*)  = NOTE that this will cause the server to reply with a mul-\n"
+"              tipart response!\n"
+"\n"
+, stdout);
+ fputs(
+"              Only digit characters (0-9) are valid in the 'start' and  'stop'\n"
+"              fields  of the 'start-stop' range syntax. If a non-digit charac-\n"
+"              ter is given in the range, the server's response will be unspec-\n"
+"              ified, depending on the server's configuration.\n"
+"\n"
+"              You  should also be aware that many HTTP/1.1 servers do not have\n"
+"              this feature enabled, so that when you attempt to get  a  range,\n"
+, stdout);
+ fputs(
+"              you'll instead get the whole document.\n"
+"\n"
+"              FTP  and  SFTP  range  downloads only support the simple 'start-\n"
+"              stop' syntax (optionally with one of the numbers  omitted).  FTP\n"
+"              use depends on the extended FTP command SIZE.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --raw  (HTTP) When used, it disables all internal HTTP decoding of con-\n"
+, stdout);
+ fputs(
+"              tent or transfer encodings and  instead  makes  them  passed  on\n"
+"              unaltered, raw.\n"
+"\n"
+"              Added in 7.16.2.\n"
+"\n"
+"       -e, --referer <URL>\n"
+"              (HTTP) Sends the \"Referrer Page\" information to the HTTP server.\n"
+"              This can also be set with the -H, --header flag of course.  When\n"
+"              used  with  -L,  --location  you  can  append \";auto\" to the -e,\n"
+"              --referer URL to make curl automatically set  the  previous  URL\n"
+, stdout);
+ fputs(
+"              when  it  follows  a Location: header. The \";auto\" string can be\n"
+"              used alone, even if you don't set an initial -e, --referer.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              See also -A, --user-agent and -H, --header.\n"
+"\n"
+"       -J, --remote-header-name\n"
+"              (HTTP) This option tells the -O, --remote-name option to use the\n"
+"              server-specified   Content-Disposition   filename   instead   of\n"
+, stdout);
+ fputs(
+"              extracting a filename from the URL.\n"
+"\n"
+"              If the server specifies a file name and a file  with  that  name\n"
+"              already  exists  in the current working directory it will not be\n"
+"              overwritten and an error will occur. If the server doesn't spec-\n"
+"              ify a file name then this option has no effect.\n"
+"\n"
+"              There's  no  attempt to decode %-sequences (yet) in the provided\n"
+, stdout);
+ fputs(
+"              file name, so this option may provide you with rather unexpected\n"
+"              file names.\n"
+"\n"
+"              WARNING:  Exercise  judicious  use of this option, especially on\n"
+"              Windows. A rogue server could send you the  name  of  a  DLL  or\n"
+"              other  file  that could possibly be loaded automatically by Win-\n"
+"              dows or some third party software.\n"
+"\n"
+"       --remote-name-all\n"
+"              This option changes the default action for all given URLs to  be\n"
+, stdout);
+ fputs(
+"              dealt with as if -O, --remote-name were used for each one. So if\n"
+"              you want to disable that for a specific URL after --remote-name-\n"
+"              all has been used, you must use \"-o -\" or --no-remote-name.\n"
+"\n"
+"              Added in 7.19.0.\n"
+"\n"
+"       -O, --remote-name\n"
+"              Write  output to a local file named like the remote file we get.\n"
+"              (Only the file part of the remote file is used, the path is  cut\n"
+"              off.)\n"
+"\n"
+, stdout);
+ fputs(
+"              The  file will be saved in the current working directory. If you\n"
+"              want the file saved in a  different  directory,  make  sure  you\n"
+"              change  the  current working directory before invoking curl with\n"
+"              this option.\n"
+"\n"
+"              The remote file name to use for saving  is  extracted  from  the\n"
+"              given  URL,  nothing  else,  and if it already exists it will be\n"
+, stdout);
+ fputs(
+"              overwritten. If you want the server to be  able  to  choose  the\n"
+"              file name refer to -J, --remote-header-name which can be used in\n"
+"              addition to this option. If the server chooses a file  name  and\n"
+"              that name already exists it will not be overwritten.\n"
+"\n"
+"              There is no URL decoding done on the file name. If it has %20 or\n"
+"              other URL encoded parts of the name, they will end up  as-is  as\n"
+"              file name.\n"
+"\n"
+, stdout);
+ fputs(
+"              You  may use this option as many times as the number of URLs you\n"
+"              have.\n"
+"\n"
+"       -R, --remote-time\n"
+"              When used, this will make curl attempt to figure out  the  time-\n"
+"              stamp  of  the  remote  file,  and if that is available make the\n"
+"              local file get that same timestamp.\n"
+"\n"
+"       -X, --request <command>\n"
+"              (HTTP) Specifies a custom request method to use when communicat-\n"
+, stdout);
+ fputs(
+"              ing  with the HTTP server.  The specified request method will be\n"
+"              used instead of the method otherwise  used  (which  defaults  to\n"
+"              GET).  Read  the HTTP 1.1 specification for details and explana-\n"
+"              tions. Common additional HTTP requests include PUT  and  DELETE,\n"
+"              but related technologies like WebDAV offers PROPFIND, COPY, MOVE\n"
+"              and more.\n"
+"\n"
+"              Normally you don't need this option. All  sorts  of  GET,  HEAD,\n"
+, stdout);
+ fputs(
+"              POST and PUT requests are rather invoked by using dedicated com-\n"
+"              mand line options.\n"
+"\n"
+"              This option only changes  the  actual  word  used  in  the  HTTP\n"
+"              request,  it does not alter the way curl behaves. So for example\n"
+"              if you want to make a proper HEAD request, using  -X  HEAD  will\n"
+"              not suffice. You need to use the -I, --head option.\n"
+"\n"
+"              The  method  string  you set with -X, --request will be used for\n"
+, stdout);
+ fputs(
+"              all requests, which if you for example use  -L,  --location  may\n"
+"              cause  unintended  side-effects when curl doesn't change request\n"
+"              method according to the HTTP 30x response codes - and similar.\n"
+"\n"
+"              (FTP) Specifies a custom FTP command to use instead of LIST when\n"
+"              doing file lists with FTP.\n"
+"\n"
+"              (POP3) Specifies a custom POP3 command to use instead of LIST or\n"
+"              RETR. (Added in 7.26.0)\n"
+"\n"
+, stdout);
+ fputs(
+"              (IMAP) Specifies a custom IMAP command to use instead  of  LIST.\n"
+"              (Added in 7.30.0)\n"
+"\n"
+"              (SMTP) Specifies a custom SMTP command to use instead of HELP or\n"
+"              VRFY. (Added in 7.34.0)\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --resolve <host:port:address>\n"
+"              Provide a custom address for a  specific  host  and  port  pair.\n"
+, stdout);
+ fputs(
+"              Using  this,  you  can make the curl requests(s) use a specified\n"
+"              address and prevent the otherwise normally resolved  address  to\n"
+"              be  used.  Consider it a sort of /etc/hosts alternative provided\n"
+"              on the command line. The port number should be the  number  used\n"
+"              for  the  specific  protocol the host will be used for. It means\n"
+"              you need several entries if you want to provide address for  the\n"
+, stdout);
+ fputs(
+"              same host but different ports.\n"
+"\n"
+"              The provided address set by this option will be used even if -4,\n"
+"              --ipv4 or -6, --ipv6 is set to make curl use another IP version.\n"
+"              This option can be used many times to add  many  host  names  to\n"
+"              resolve.\n"
+"\n"
+"              Added in 7.21.3.\n"
+"\n"
+"       --retry-connrefused\n"
+"              In  addition to the other conditions, consider ECONNREFUSED as a\n"
+, stdout);
+ fputs(
+"              transient error too for --retry. This option  is  used  together\n"
+"              with --retry.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       --retry-delay <seconds>\n"
+"              Make  curl  sleep  this  amount of time before each retry when a\n"
+"              transfer has failed with  a  transient  error  (it  changes  the\n"
+"              default  backoff time algorithm between retries). This option is\n"
+"              only interesting if --retry is also used. Setting this delay  to\n"
+, stdout);
+ fputs(
+"              zero will make curl use the default backoff time.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.12.3.\n"
+"\n"
+"       --retry-max-time <seconds>\n"
+"              The  retry  timer  is  reset  before the first transfer attempt.\n"
+"              Retries will be done as usual (see --retry) as long as the timer\n"
+"              hasn't reached this given limit. Notice that if the timer hasn't\n"
+, stdout);
+ fputs(
+"              reached the limit, the request will be made and  while  perform-\n"
+"              ing,  it may take longer than this given time period. To limit a\n"
+"              single request's maximum time, use  -m,  --max-time.   Set  this\n"
+"              option to zero to not timeout retries.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.12.3.\n"
+"\n"
+"       --retry <num>\n"
+, stdout);
+ fputs(
+"              If  a  transient  error is returned when curl tries to perform a\n"
+"              transfer, it will retry this number of times before  giving  up.\n"
+"              Setting  the  number to 0 makes curl do no retries (which is the\n"
+"              default). Transient error means either: a timeout,  an  FTP  4xx\n"
+"              response code or an HTTP 5xx response code.\n"
+"\n"
+"              When  curl  is about to retry a transfer, it will first wait one\n"
+, stdout);
+ fputs(
+"              second and then for all forthcoming retries it will  double  the\n"
+"              waiting  time until it reaches 10 minutes which then will be the\n"
+"              delay between the rest of the retries.  By  using  --retry-delay\n"
+"              you   disable  this  exponential  backoff  algorithm.  See  also\n"
+"              --retry-max-time to limit the total time allowed for retries.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+, stdout);
+ fputs(
+"              Added in 7.12.3.\n"
+"\n"
+"       --sasl-ir\n"
+"              Enable initial response in SASL authentication.\n"
+"\n"
+"              Added in 7.31.0.\n"
+"\n"
+"       --service-name <name>\n"
+"              This option allows you to change the service name for SPNEGO.\n"
+"\n"
+"              Examples:   --negotiate   --service-name   sockd    would    use\n"
+"              sockd/server-name.\n"
+"\n"
+"              Added in 7.43.0.\n"
+"       -S, --show-error\n"
+"              When used with -s, --silent, it makes curl show an error message\n"
+, stdout);
+ fputs(
+"              if it fails.\n"
+"       -s, --silent\n"
+"              Silent or quiet mode. Don't show progress meter  or  error  mes-\n"
+"              sages.   Makes  Curl mute. It will still output the data you ask\n"
+"              for, potentially even to the terminal/stdout unless you redirect\n"
+"              it.\n"
+"\n"
+"              Use  -S,  --show-error  in  addition  to  this option to disable\n"
+"              progress meter but still show error messages.\n"
+"\n"
+"              See also -v, --verbose and --stderr.\n"
+"\n"
+, stdout);
+ fputs(
+"       --socks4 <host[:port]>\n"
+"              Use the specified SOCKS4 proxy. If the port number is not speci-\n"
+"              fied, it is assumed at port 1080.\n"
+"\n"
+"              This  option  overrides any previous use of -x, --proxy, as they\n"
+"              are mutually exclusive.\n"
+"\n"
+"              Since 7.21.7, this option is superfluous since you can specify a\n"
+"              socks4 proxy with -x, --proxy using a socks4:// protocol prefix.\n"
+, stdout);
+ fputs(
+"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
+"              the same time -x, --proxy is used with an HTTP/HTTPS  proxy.  In\n"
+"              such a case curl first connects to the SOCKS proxy and then con-\n"
+"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.15.2.\n"
+"\n"
+"       --socks4a <host[:port]>\n"
+, stdout);
+ fputs(
+"              Use the specified SOCKS4a proxy. If the port number is not spec-\n"
+"              ified, it is assumed at port 1080.\n"
+"\n"
+"              This  option  overrides any previous use of -x, --proxy, as they\n"
+"              are mutually exclusive.\n"
+"\n"
+"              Since 7.21.7, this option is superfluous since you can specify a\n"
+"              socks4a  proxy with -x, --proxy using a socks4a:// protocol pre-\n"
+"              fix.\n"
+"\n"
+, stdout);
+ fputs(
+"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
+"              the  same  time -x, --proxy is used with an HTTP/HTTPS proxy. In\n"
+"              such a case curl first connects to the SOCKS proxy and then con-\n"
+"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.18.0.\n"
+"\n"
+"       --socks5-gssapi-nec\n"
+, stdout);
+ fputs(
+"              As  part of the GSS-API negotiation a protection mode is negoti-\n"
+"              ated. RFC 1961 says in section 4.3/4.4 it should  be  protected,\n"
+"              but  the  NEC  reference  implementation  does  not.  The option\n"
+"              --socks5-gssapi-nec allows the unprotected exchange of the  pro-\n"
+"              tection mode negotiation.\n"
+"\n"
+"              Added in 7.19.4.\n"
+"\n"
+"       --socks5-gssapi-service <name>\n"
+, stdout);
+ fputs(
+"              The default service name for a socks server is rcmd/server-fqdn.\n"
+"              This option allows you to change it.\n"
+"\n"
+"              Examples:  --socks5  proxy-name  --socks5-gssapi-service   sockd\n"
+"              would  use sockd/proxy-name --socks5 proxy-name --socks5-gssapi-\n"
+"              service sockd/real-name  would  use  sockd/real-name  for  cases\n"
+"              where the proxy-name does not match the principal name.\n"
+"\n"
+"              Added in 7.19.4.\n"
+"\n"
+, stdout);
+ fputs(
+"       --socks5-hostname <host[:port]>\n"
+"              Use  the  specified  SOCKS5 proxy (and let the proxy resolve the\n"
+"              host name). If the port number is not specified, it  is  assumed\n"
+"              at port 1080.\n"
+"\n"
+"              This  option  overrides any previous use of -x, --proxy, as they\n"
+"              are mutually exclusive.\n"
+"\n"
+"              Since 7.21.7, this option is superfluous since you can specify a\n"
+, stdout);
+ fputs(
+"              socks5 hostname proxy with -x, --proxy using a socks5h:// proto-\n"
+"              col prefix.\n"
+"\n"
+"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
+"              the  same  time -x, --proxy is used with an HTTP/HTTPS proxy. In\n"
+"              such a case curl first connects to the SOCKS proxy and then con-\n"
+"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+, stdout);
+ fputs(
+"              Added in 7.18.0.\n"
+"\n"
+"       --socks5 <host[:port]>\n"
+"              Use  the  specified  SOCKS5  proxy  -  but resolve the host name\n"
+"              locally. If the port number is not specified, it is  assumed  at\n"
+"              port 1080.\n"
+"\n"
+"              This  option  overrides any previous use of -x, --proxy, as they\n"
+"              are mutually exclusive.\n"
+"\n"
+"              Since 7.21.7, this option is superfluous since you can specify a\n"
+, stdout);
+ fputs(
+"              socks5 proxy with -x, --proxy using a socks5:// protocol prefix.\n"
+"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
+"              the same time -x, --proxy is used with an HTTP/HTTPS  proxy.  In\n"
+"              such a case curl first connects to the SOCKS proxy and then con-\n"
+"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+, stdout);
+ fputs(
+"              This option (as well as --socks4) does not work with IPV6,  FTPS\n"
+"              or LDAP.\n"
+"\n"
+"              Added in 7.18.0.\n"
+"\n"
+"       -Y, --speed-limit <speed>\n"
+"              If a download is slower than this given speed (in bytes per sec-\n"
+"              ond) for speed-time seconds it gets aborted. speed-time  is  set\n"
+"              with -y, --speed-time and is 30 if not set.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -y, --speed-time <seconds>\n"
+, stdout);
+ fputs(
+"              If a download is slower than speed-limit bytes per second during\n"
+"              a speed-time period, the download gets aborted. If speed-time is\n"
+"              used,  the  default  speed-limit  will  be 1 unless set with -Y,\n"
+"              --speed-limit.\n"
+"\n"
+"              This option controls transfers and thus  will  not  affect  slow\n"
+"              connects  etc.  If this is a concern for you, try the --connect-\n"
+"              timeout option.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --ssl-allow-beast\n"
+"              This option tells curl to not work around a security flaw in the\n"
+"              SSL3  and TLS1.0 protocols known as BEAST.  If this option isn't\n"
+"              used, the SSL layer may use workarounds known to cause  interop-\n"
+"              erability problems with some older SSL implementations. WARNING:\n"
+"              this option loosens the SSL security, and by using this flag you\n"
+, stdout);
+ fputs(
+"              ask for exactly that.\n"
+"\n"
+"              Added in 7.25.0.\n"
+"\n"
+"       --ssl-no-revoke\n"
+"              (WinSSL)  This  option tells curl to disable certificate revoca-\n"
+"              tion checks.  WARNING: this option loosens the SSL security, and\n"
+"              by using this flag you ask for exactly that.\n"
+"\n"
+"              Added in 7.44.0.\n"
+"\n"
+"       --ssl-reqd\n"
+"              (FTP IMAP POP3 SMTP) Require SSL/TLS for the connection.  Termi-\n"
+, stdout);
+ fputs(
+"              nates the connection if the server doesn't support SSL/TLS.\n"
+"\n"
+"              This option was formerly known as --ftp-ssl-reqd.\n"
+"\n"
+"              Added in 7.20.0.\n"
+"\n"
+"       --ssl  (FTP IMAP POP3 SMTP) Try to  use  SSL/TLS  for  the  connection.\n"
+"              Reverts to a non-secure connection if the server doesn't support\n"
+"              SSL/TLS.  See also --ftp-ssl-control and --ssl-reqd for  differ-\n"
+"              ent levels of encryption required.\n"
+"\n"
+, stdout);
+ fputs(
+"              This  option  was formerly known as --ftp-ssl (Added in 7.11.0).\n"
+"              That option name can still be used but  will  be  removed  in  a\n"
+"              future version.\n"
+"\n"
+"              Added in 7.20.0.\n"
+"\n"
+"       -2, --sslv2\n"
+"              (SSL)  Forces  curl to use SSL version 2 when negotiating with a\n"
+"              remote SSL server. Sometimes curl is built  without  SSLv2  sup-\n"
+"              port. SSLv2 is widely considered insecure (see RFC 6176).\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --http1.1  and --http2. -2, --sslv2 requires that the\n"
+"              underlying libcurl was built to support TLS. This  option  over-\n"
+"              rides -3, --sslv3 and -1, --tlsv1 and --tlsv1.1 and --tlsv1.2.\n"
+"\n"
+"       -3, --sslv3\n"
+"              (SSL)  Forces  curl to use SSL version 3 when negotiating with a\n"
+"              remote SSL server. Sometimes curl is built  without  SSLv3  sup-\n"
+"              port. SSLv3 is widely considered insecure (see RFC 7568).\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --http1.1  and --http2. -3, --sslv3 requires that the\n"
+"              underlying libcurl was built to support TLS. This  option  over-\n"
+"              rides -2, --sslv2 and -1, --tlsv1 and --tlsv1.1 and --tlsv1.2.\n"
+"\n"
+"       --stderr\n"
+"              Redirect  all writes to stderr to the specified file instead. If\n"
+"              the file name is a plain '-', it is instead written to stdout.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also -v, --verbose and -s, --silent.\n"
+"\n"
+"       --suppress-connect-headers\n"
+"              When -p, --proxytunnel is used and a  CONNECT  request  is  made\n"
+"              don't  output  proxy  CONNECT  response  headers. This option is\n"
+"              meant to be used with -D, --dump-header or -i,  --include  which\n"
+"              are  used  to  show  protocol  headers  in the output. It has no\n"
+"              effect on debug options such as -v, --verbose or --trace, or any\n"
+, stdout);
+ fputs(
+"              statistics.\n"
+"\n"
+"              See also -D, --dump-header and -i, --include and -p, --proxytun-\n"
+"              nel.\n"
+"\n"
+"       --tcp-fastopen\n"
+"              Enable use of TCP Fast Open (RFC7413).\n"
+"\n"
+"              Added in 7.49.0.\n"
+"\n"
+"       --tcp-nodelay\n"
+"              Turn on the TCP_NODELAY option. See the curl_easy_setopt(3)  man\n"
+"              page for details about this option.\n"
+"\n"
+"              Since  7.50.2,  curl sets this option by default and you need to\n"
+, stdout);
+ fputs(
+"              explicitly switch it off if you don't want it on.\n"
+"\n"
+"              Added in 7.11.2.\n"
+"\n"
+"       -t, --telnet-option <opt=val>\n"
+"              Pass options to the telnet protocol. Supported options are:\n"
+"\n"
+"              TTYPE=<term> Sets the terminal type.\n"
+"\n"
+"              XDISPLOC=<X display> Sets the X display location.\n"
+"\n"
+"              NEW_ENV=<var,val> Sets an environment variable.\n"
+"\n"
+"       --tftp-blksize <value>\n"
+"              (TFTP) Set TFTP BLKSIZE option (must be >512). This is the block\n"
+, stdout);
+ fputs(
+"              size that curl will try to use when transferring data to or from\n"
+"              a TFTP server. By default 512 bytes will be used.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Added in 7.20.0.\n"
+"\n"
+"       --tftp-no-options\n"
+"              (TFTP) Tells curl not to send TFTP options requests.\n"
+"\n"
+"              This option improves interop with some legacy  servers  that  do\n"
+, stdout);
+ fputs(
+"              not  acknowledge  or  properly implement TFTP options. When this\n"
+"              option is used --tftp-blksize is ignored.\n"
+"\n"
+"              Added in 7.48.0.\n"
+"\n"
+"       -z, --time-cond <time>\n"
+"              (HTTP FTP) Request a file that has been modified later than  the\n"
+"              given  time  and date, or one that has been modified before that\n"
+"              time. The <date expression> can be all sorts of date strings  or\n"
+, stdout);
+ fputs(
+"              if it doesn't match any internal ones, it is taken as a filename\n"
+"              and tries to get  the  modification  date  (mtime)  from  <file>\n"
+"              instead.  See  the curl_getdate(3) man pages for date expression\n"
+"              details.\n"
+"\n"
+"              Start the date expression with a dash (-) to make it request for\n"
+"              a  document that is older than the given date/time, default is a\n"
+"              document that is newer than the specified date/time.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --tls-max <VERSION>\n"
+"              (SSL) VERSION defines maximum supported TLS version.  A  minimum\n"
+"              is defined by arguments tlsv1.0 or tlsv1.1 or tlsv1.2.\n"
+"\n"
+"              default\n"
+"                     Use up to recommended TLS version.\n"
+"\n"
+"              1.0    Use up to TLSv1.0.\n"
+"              1.1    Use up to TLSv1.1.\n"
+"              1.2    Use up to TLSv1.2.\n"
+"              1.3    Use up to TLSv1.3.\n"
+"\n"
+, stdout);
+ fputs(
+"       See also --tlsv1.0 and --tlsv1.1 and --tlsv1.2. --tls-max requires that\n"
+"       the underlying libcurl was built to support TLS. Added in 7.54.0.\n"
+"\n"
+"       --tlsauthtype <type>\n"
+"              Set TLS  authentication  type.  Currently,  the  only  supported\n"
+"              option  is  \"SRP\",  for  TLS-SRP  (RFC  5054).  If --tlsuser and\n"
+"              --tlspassword are specified but --tlsauthtype is not, then  this\n"
+"              option defaults to \"SRP\".\n"
+"\n"
+"              Added in 7.21.4.\n"
+"\n"
+, stdout);
+ fputs(
+"       --tlspassword\n"
+"              Set  password  for use with the TLS authentication method speci-\n"
+"              fied with --tlsauthtype. Requires that --tlsuser also be set.\n"
+"\n"
+"              Added in 7.21.4.\n"
+"       --tlsuser <name>\n"
+"              Set username for use with the TLS authentication  method  speci-\n"
+"              fied  with  --tlsauthtype.  Requires  that --tlspassword also is\n"
+"              set.\n"
+"\n"
+"              Added in 7.21.4.\n"
+"\n"
+"       --tlsv1.0\n"
+, stdout);
+ fputs(
+"              (TLS) Forces curl to use TLS version 1.0 when  connecting  to  a\n"
+"              remote TLS server.\n"
+"\n"
+"              Added in 7.34.0.\n"
+"\n"
+"       --tlsv1.1\n"
+"              (TLS)  Forces  curl  to use TLS version 1.1 when connecting to a\n"
+"              remote TLS server.\n"
+"\n"
+"              Added in 7.34.0.\n"
+"\n"
+"       --tlsv1.2\n"
+"              (TLS) Forces curl to use TLS version 1.2 when  connecting  to  a\n"
+"              remote TLS server.\n"
+"\n"
+"              Added in 7.34.0.\n"
+"\n"
+"       --tlsv1.3\n"
+, stdout);
+ fputs(
+"              (TLS)  Forces  curl  to use TLS version 1.3 when connecting to a\n"
+"              remote TLS server.\n"
+"\n"
+"              Note that TLS 1.3 is only supported by a subset of TLS backends.\n"
+"              At the time of writing this, those are BoringSSL and NSS only.\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
+"       -1, --tlsv1\n"
+"              (SSL)  Tells curl to use TLS version 1.x when negotiating with a\n"
+"              remote TLS server. That means TLS version 1.0, 1.1 or 1.2.\n"
+"\n"
+, stdout);
+ fputs(
+"              See also --http1.1 and --http2. -1, --tlsv1  requires  that  the\n"
+"              underlying  libcurl  was built to support TLS. This option over-\n"
+"              rides --tlsv1.1 and --tlsv1.2 and --tlsv1.3.\n"
+"\n"
+"       --tr-encoding\n"
+"              (HTTP) Request a compressed Transfer-Encoding response using one\n"
+"              of  the  algorithms curl supports, and uncompress the data while\n"
+"              receiving it.\n"
+"\n"
+"              Added in 7.21.6.\n"
+"\n"
+"       --trace-ascii <file>\n"
+, stdout);
+ fputs(
+"              Enables a full trace dump of all  incoming  and  outgoing  data,\n"
+"              including descriptive information, to the given output file. Use\n"
+"              \"-\" as filename to have the output sent to stdout.\n"
+"\n"
+"              This is very similar to --trace, but leaves out the hex part and\n"
+"              only  shows  the ASCII part of the dump. It makes smaller output\n"
+"              that might be easier to read for untrained humans.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              This option overrides --trace and -v, --verbose.\n"
+"\n"
+"       --trace-time\n"
+"              Prepends a time stamp to each trace or verbose  line  that  curl\n"
+"              displays.\n"
+"\n"
+"              Added in 7.14.0.\n"
+"\n"
+"       --trace <file>\n"
+"              Enables  a  full  trace  dump of all incoming and outgoing data,\n"
+"              including descriptive information, to the given output file. Use\n"
+, stdout);
+ fputs(
+"              \"-\"  as  filename  to have the output sent to stdout. Use \"%\" as\n"
+"              filename to have the output sent to stderr.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              This option overrides -v, --verbose and --trace-ascii.\n"
+"\n"
+"       --unix-socket <path>\n"
+"              (HTTP) Connect through this Unix domain socket, instead of using\n"
+"              the network.\n"
+"\n"
+"              Added in 7.40.0.\n"
+"\n"
+"       -T, --upload-file <file>\n"
+, stdout);
+ fputs(
+"              This  transfers  the  specified local file to the remote URL. If\n"
+"              there is no file part in the specified URL, curl will append the\n"
+"              local file name. NOTE that you must use a trailing / on the last\n"
+"              directory to really prove to Curl that there is no file name  or\n"
+"              curl will think that your last directory name is the remote file\n"
+"              name to use. That will most likely cause the upload operation to\n"
+, stdout);
+ fputs(
+"              fail. If this is used on an HTTP(S) server, the PUT command will\n"
+"              be used.\n"
+"\n"
+"              Use the file name \"-\" (a single dash) to use stdin instead of  a\n"
+"              given  file.   Alternately,  the file name \".\" (a single period)\n"
+"              may be specified instead of \"-\" to  use  stdin  in  non-blocking\n"
+"              mode  to  allow  reading  server  output  while  stdin  is being\n"
+"              uploaded.\n"
+"\n"
+, stdout);
+ fputs(
+"              You can specify one -T, --upload-file for each URL on  the  com-\n"
+"              mand  line.  Each -T, --upload-file + URL pair specifies what to\n"
+"              upload and to where. curl also supports \"globbing\"  of  the  -T,\n"
+"              --upload-file  argument,  meaning  that  you can upload multiple\n"
+"              files to a single URL by using the same URL globbing style  sup-\n"
+"              ported in the URL, like this:\n"
+"\n"
+, stdout);
+ fputs(
+"               curl --upload-file \"{file1,file2}\" http://www.example.com\n"
+"\n"
+"              or even\n"
+"\n"
+"               curl -T \"img[1-1000].png\" ftp://ftp.example.com/upload/\n"
+"\n"
+"              When  uploading  to an SMTP server: the uploaded data is assumed\n"
+"              to be RFC 5322 formatted. It has to feature the necessary set of\n"
+"              headers  and  mail  body formatted correctly by the user as curl\n"
+"              will not transcode nor encode it further in any way.\n"
+"\n"
+"       --url <url>\n"
+, stdout);
+ fputs(
+"              Specify a URL to fetch. This option is  mostly  handy  when  you\n"
+"              want to specify URL(s) in a config file.\n"
+"\n"
+"              If  the given URL is missing a scheme name (such as \"http://\" or\n"
+"              \"ftp://\" etc) then curl will make a guess based on the host.  If\n"
+"              the  outermost  sub-domain  name  matches DICT, FTP, IMAP, LDAP,\n"
+"              POP3 or SMTP then that protocol will  be  used,  otherwise  HTTP\n"
+, stdout);
+ fputs(
+"              will be used. Since 7.45.0 guessing can be disabled by setting a\n"
+"              default protocol, see --proto-default for details.\n"
+"\n"
+"              This option may be used any number of times.  To  control  where\n"
+"              this  URL  is written, use the -o, --output or the -O, --remote-\n"
+"              name options.\n"
+"\n"
+"       -B, --use-ascii\n"
+"              (FTP LDAP) Enable ASCII transfer. For  FTP,  this  can  also  be\n"
+, stdout);
+ fputs(
+"              enforced  by  using  a URL that ends with \";type=A\". This option\n"
+"              causes data sent to stdout to be in text mode for win32 systems.\n"
+"\n"
+"       -A, --user-agent <name>\n"
+"              (HTTP) Specify the User-Agent string to send to the HTTP server.\n"
+"              To  encode blanks in the string, surround the string with single\n"
+"              quote marks. This can also be set with the -H,  --header  option\n"
+"              of course.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -u, --user <user:password>\n"
+"              Specify the user name and password to use for server authentica-\n"
+"              tion. Overrides -n, --netrc and --netrc-optional.\n"
+"\n"
+"              If you simply specify the user name,  curl  will  prompt  for  a\n"
+"              password.\n"
+"\n"
+"              The  user  name  and  passwords are split up on the first colon,\n"
+, stdout);
+ fputs(
+"              which makes it impossible to use a colon in the user  name  with\n"
+"              this option. The password can, still.\n"
+"\n"
+"              When  using  Kerberos  V5 with a Windows based server you should\n"
+"              include the Windows domain name in the user name, in  order  for\n"
+"              the  server  to  successfully  obtain  a Kerberos Ticket. If you\n"
+"              don't then the initial authentication handshake may fail.\n"
+"\n"
+, stdout);
+ fputs(
+"              When using NTLM, the user name can be specified  simply  as  the\n"
+"              user  name,  without the domain, if there is a single domain and\n"
+"              forest in your setup for example.\n"
+"\n"
+"              To specify the domain name use either Down-Level Logon  Name  or\n"
+"              UPN (User Principal Name) formats. For example, EXAMPLE\\user and\n"
+"              user@example.com respectively.\n"
+"\n"
+"              If you use a Windows SSPI-enabled curl binary and  perform  Ker-\n"
+, stdout);
+ fputs(
+"              beros  V5, Negotiate, NTLM or Digest authentication then you can\n"
+"              tell curl to select the user name and password from  your  envi-\n"
+"              ronment by specifying a single colon with this option: \"-u :\".\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       -v, --verbose\n"
+"              Makes  curl  verbose  during the operation. Useful for debugging\n"
+"              and seeing what's going on \"under the  hood\".  A  line  starting\n"
+, stdout);
+ fputs(
+"              with  '>'  means  \"header  data\" sent by curl, '<' means \"header\n"
+"              data\" received by curl that is hidden in  normal  cases,  and  a\n"
+"              line starting with '*' means additional info provided by curl.\n"
+"\n"
+"              If you only want HTTP headers in the output, -i, --include might\n"
+"              be the option you're looking for.\n"
+"\n"
+"              If you think this option still doesn't give you enough  details,\n"
+, stdout);
+ fputs(
+"              consider using --trace or --trace-ascii instead.\n"
+"\n"
+"              Use -s, --silent to make curl really quiet.\n"
+"\n"
+"              See  also  -i,  --include.  This  option  overrides  --trace and\n"
+"              --trace-ascii.\n"
+"\n"
+"       -V, --version\n"
+"              Displays information about curl and the libcurl version it uses.\n"
+"              The first line includes the full version of  curl,  libcurl  and\n"
+"              other 3rd party libraries linked with the executable.\n"
+"\n"
+, stdout);
+ fputs(
+"              The  second  line (starts with \"Protocols:\") shows all protocols\n"
+"              that libcurl reports to support.\n"
+"\n"
+"              The third line (starts with \"Features:\") shows specific features\n"
+"              libcurl reports to offer. Available features include:\n"
+"\n"
+"              IPv6   You can use IPv6 with this.\n"
+"\n"
+"              krb4   Krb4 for FTP is supported.\n"
+"\n"
+"              SSL    SSL  versions of various protocols are supported, such as\n"
+, stdout);
+ fputs(
+"                     HTTPS, FTPS, POP3S and so on.\n"
+"\n"
+"              libz   Automatic decompression of compressed files over HTTP  is\n"
+"                     supported.\n"
+"\n"
+"              NTLM   NTLM authentication is supported.\n"
+"\n"
+"              Debug  This  curl  uses a libcurl built with Debug. This enables\n"
+"                     more error-tracking and memory debugging etc.  For  curl-\n"
+"                     developers only!\n"
+"\n"
+"              AsynchDNS\n"
+, stdout);
+ fputs(
+"                     This  curl  uses asynchronous name resolves. Asynchronous\n"
+"                     name resolves can be done using either the c-ares or  the\n"
+"                     threaded resolver backends.\n"
+"\n"
+"              SPNEGO SPNEGO authentication is supported.\n"
+"\n"
+"              Largefile\n"
+"                     This curl supports transfers of large files, files larger\n"
+"                     than 2GB.\n"
+"\n"
+"              IDN    This curl supports IDN - international domain names.\n"
+"\n"
+"              GSS-API\n"
+, stdout);
+ fputs(
+"                     GSS-API is supported.\n"
+"\n"
+"              SSPI   SSPI is supported.\n"
+"\n"
+"              TLS-SRP\n"
+"                     SRP (Secure Remote Password) authentication is  supported\n"
+"                     for TLS.\n"
+"\n"
+"              HTTP2  HTTP/2 support has been built-in.\n"
+"\n"
+"              UnixSockets\n"
+"                     Unix sockets support is provided.\n"
+"\n"
+"              HTTPS-proxy\n"
+"                     This curl is built to support HTTPS proxy.\n"
+"\n"
+"              Metalink\n"
+, stdout);
+ fputs(
+"                     This  curl  supports  Metalink (both version 3 and 4 (RFC\n"
+"                     5854)), which describes mirrors and  hashes.   curl  will\n"
+"                     use mirrors for failover if there are errors (such as the\n"
+"                     file or server not being available).\n"
+"\n"
+"              PSL    PSL is short for Public Suffix List and means  that  this\n"
+"                     curl  has  been  built  with knowledge about \"public suf-\n"
+"                     fixes\".\n"
+"\n"
+, stdout);
+ fputs(
+"       -w, --write-out <format>\n"
+"              Make curl display information on stdout after a completed trans-\n"
+"              fer.  The  format  is a string that may contain plain text mixed\n"
+"              with any number of variables. The format can be specified  as  a\n"
+"              literal  \"string\",  or  you can have curl read the format from a\n"
+"              file with \"@filename\" and to tell curl to read the  format  from\n"
+"              stdin you write \"@-\".\n"
+"\n"
+, stdout);
+ fputs(
+"              The  variables  present in the output format will be substituted\n"
+"              by the value or text that curl thinks fit, as  described  below.\n"
+"              All  variables are specified as %{variable_name} and to output a\n"
+"              normal % you just write them as %%. You can output a newline  by\n"
+"              using \\n, a carriage return with \\r and a tab space with \\t.\n"
+"\n"
+"              NOTE: The %-symbol is a special symbol in the win32-environment,\n"
+, stdout);
+ fputs(
+"              where all occurrences of %  must  be  doubled  when  using  this\n"
+"              option.\n"
+"\n"
+"              The variables available are:\n"
+"\n"
+"              content_type   The  Content-Type  of  the requested document, if\n"
+"                             there was any.\n"
+"\n"
+"              filename_effective\n"
+"                             The ultimate filename that curl  writes  out  to.\n"
+"                             This  is only meaningful if curl is told to write\n"
+, stdout);
+ fputs(
+"                             to a file  with  the  -O,  --remote-name  or  -o,\n"
+"                             --output  option. It's most useful in combination\n"
+"                             with the -J, --remote-header-name option.  (Added\n"
+"                             in 7.26.0)\n"
+"\n"
+"              ftp_entry_path The initial path curl ended up in when logging on\n"
+"                             to the remote FTP server. (Added in 7.15.4)\n"
+"\n"
+, stdout);
+ fputs(
+"              http_code      The numerical response code that was found in the\n"
+"                             last  retrieved  HTTP(S)  or  FTP(s) transfer. In\n"
+"                             7.18.2 the alias response_code was added to  show\n"
+"                             the same info.\n"
+"\n"
+"              http_connect   The  numerical  code  that  was found in the last\n"
+"                             response  (from  a  proxy)  to  a  curl   CONNECT\n"
+"                             request. (Added in 7.12.4)\n"
+"\n"
+, stdout);
+ fputs(
+"              http_version   The  http  version  that  was  effectively  used.\n"
+"                             (Added in 7.50.0)\n"
+"\n"
+"              local_ip       The IP address of  the  local  end  of  the  most\n"
+"                             recently  done connection - can be either IPv4 or\n"
+"                             IPv6 (Added in 7.29.0)\n"
+"\n"
+"              local_port     The local port number of the most  recently  done\n"
+"                             connection (Added in 7.29.0)\n"
+"\n"
+, stdout);
+ fputs(
+"              num_connects   Number  of new connects made in the recent trans-\n"
+"                             fer. (Added in 7.12.3)\n"
+"\n"
+"              num_redirects  Number of redirects that  were  followed  in  the\n"
+"                             request. (Added in 7.12.3)\n"
+"\n"
+"              proxy_ssl_verify_result\n"
+"                             The result of the HTTPS proxy's SSL peer certifi-\n"
+"                             cate verification that was requested. 0 means the\n"
+, stdout);
+ fputs(
+"                             verification was successful. (Added in 7.52.0)\n"
+"\n"
+"              redirect_url   When an HTTP request was made without -L, --loca-\n"
+"                             tion to follow redirects (or when --max-redir  is\n"
+"                             met),  this  variable  will show the actual URL a\n"
+"                             redirect would have gone to. (Added in 7.18.2)\n"
+"\n"
+"              remote_ip      The remote IP address of the most  recently  done\n"
+, stdout);
+ fputs(
+"                             connection - can be either IPv4 or IPv6 (Added in\n"
+"                             7.29.0)\n"
+"\n"
+"              remote_port    The remote port number of the most recently  done\n"
+"                             connection (Added in 7.29.0)\n"
+"\n"
+"              scheme         The  URL  scheme (sometimes called protocol) that\n"
+"                             was effectively used (Added in 7.52.0)\n"
+"\n"
+"              size_download  The total amount of bytes that were downloaded.\n"
+"\n"
+, stdout);
+ fputs(
+"              size_header    The total amount of bytes of the downloaded head-\n"
+"                             ers.\n"
+"\n"
+"              size_request   The  total  amount of bytes that were sent in the\n"
+"                             HTTP request.\n"
+"\n"
+"              size_upload    The total amount of bytes that were uploaded.\n"
+"\n"
+"              speed_download The average download speed that curl measured for\n"
+"                             the complete download. Bytes per second.\n"
+"\n"
+, stdout);
+ fputs(
+"              speed_upload   The  average  upload speed that curl measured for\n"
+"                             the complete upload. Bytes per second.\n"
+"\n"
+"              ssl_verify_result\n"
+"                             The result of the SSL peer certificate  verifica-\n"
+"                             tion that was requested. 0 means the verification\n"
+"                             was successful. (Added in 7.19.0)\n"
+"\n"
+"              time_appconnect\n"
+, stdout);
+ fputs(
+"                             The time, in seconds,  it  took  from  the  start\n"
+"                             until  the  SSL/SSH/etc  connect/handshake to the\n"
+"                             remote host was completed. (Added in 7.19.0)\n"
+"\n"
+"              time_connect   The time, in seconds,  it  took  from  the  start\n"
+"                             until  the  TCP  connect  to  the remote host (or\n"
+"                             proxy) was completed.\n"
+"\n"
+"              time_namelookup\n"
+, stdout);
+ fputs(
+"                             The time, in seconds,  it  took  from  the  start\n"
+"                             until the name resolving was completed.\n"
+"\n"
+"              time_pretransfer\n"
+"                             The  time,  in  seconds,  it  took from the start\n"
+"                             until the file transfer was just about to  begin.\n"
+"                             This includes all pre-transfer commands and nego-\n"
+"                             tiations that are specific to the particular pro-\n"
+, stdout);
+ fputs(
+"                             tocol(s) involved.\n"
+"\n"
+"              time_redirect  The time, in seconds, it took for all redirection\n"
+"                             steps including name lookup, connect, pretransfer\n"
+"                             and  transfer  before  the  final transaction was\n"
+"                             started. time_redirect shows the complete  execu-\n"
+"                             tion  time  for  multiple redirections. (Added in\n"
+"                             7.12.3)\n"
+"\n"
+, stdout);
+ fputs(
+"              time_starttransfer\n"
+"                             The time, in seconds,  it  took  from  the  start\n"
+"                             until  the first byte was just about to be trans-\n"
+"                             ferred. This includes time_pretransfer  and  also\n"
+"                             the  time  the  server  needed  to  calculate the\n"
+"                             result.\n"
+"\n"
+"              time_total     The total time, in seconds, that the full  opera-\n"
+, stdout);
+ fputs(
+"                             tion lasted.\n"
+"\n"
+"              url_effective  The URL that was fetched last. This is most mean-\n"
+"                             ingful if you've told curl  to  follow  location:\n"
+"                             headers.\n"
+"\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"       --xattr\n"
+"              When  saving  output  to a file, this option tells curl to store\n"
+"              certain file metadata in extended  file  attributes.  Currently,\n"
+, stdout);
+ fputs(
+"              the URL is stored in the xdg.origin.url attribute and, for HTTP,\n"
+"              the content type is stored in the mime_type  attribute.  If  the\n"
+"              file  system  does not support extended attributes, a warning is\n"
+"              issued.\n"
+"\n"
+"FILES\n"
+"       ~/.curlrc\n"
+"              Default config file, see -K, --config for details.\n"
+"\n"
+"ENVIRONMENT\n"
+"       The environment variables can be specified in lower case or upper case.\n"
+, stdout);
+ fputs(
+"       The lower case version has precedence. http_proxy is an exception as it\n"
+"       is only available in lower case.\n"
+"\n"
+"       Using an environment variable to set the proxy has the same  effect  as\n"
+"       using the -x, --proxy option.\n"
+"\n"
+"       http_proxy [protocol://]<host>[:port]\n"
+"              Sets the proxy server to use for HTTP.\n"
+"       HTTPS_PROXY [protocol://]<host>[:port]\n"
+"              Sets the proxy server to use for HTTPS.\n"
+"\n"
+"       [url-protocol]_PROXY [protocol://]<host>[:port]\n"
+, stdout);
+ fputs(
+"              Sets  the proxy server to use for [url-protocol], where the pro-\n"
+"              tocol is a protocol that curl supports and  as  specified  in  a\n"
+"              URL. FTP, FTPS, POP3, IMAP, SMTP, LDAP etc.\n"
+"\n"
+"       ALL_PROXY [protocol://]<host>[:port]\n"
+"              Sets  the  proxy  server to use if no protocol-specific proxy is\n"
+"              set.\n"
+"\n"
+"       NO_PROXY <comma-separated list of hosts>\n"
+"              list of host names that shouldn't go through any proxy.  If  set\n"
+, stdout);
+ fputs(
+"              to a asterisk '*' only, it matches all hosts.\n"
+"\n"
+"              Since  7.53.0,  this environment variable disable the proxy even\n"
+"              if specify -x, --proxy  option.  That  is  NO_PROXY=direct.exam-\n"
+"              ple.com  curl  -x  http://proxy.example.com  http://direct.exam-\n"
+"              ple.com    accesses    the    target    URL    directly,     and\n"
+"              NO_PROXY=direct.example.com   curl  -x  http://proxy.example.com\n"
+, stdout);
+ fputs(
+"              http://somewhere.example.com accesses  the  target  URL  through\n"
+"              proxy.\n"
+"\n"
+"PROXY PROTOCOL PREFIXES\n"
+"       Since  curl  version  7.21.7,  the proxy string may be specified with a\n"
+"       protocol:// prefix to specify alternative proxy protocols.\n"
+"\n"
+"       If no protocol is specified in  the  proxy  string  or  if  the  string\n"
+"       doesn't  match  a  supported  one, the proxy will be treated as an HTTP\n"
+"       proxy.\n"
+"\n"
+, stdout);
+ fputs(
+"       The supported proxy protocol prefixes are as follows:\n"
+"\n"
+"       socks4://\n"
+"              Makes it the equivalent of --socks4\n"
+"\n"
+"       socks4a://\n"
+"              Makes it the equivalent of --socks4a\n"
+"\n"
+"       socks5://\n"
+"              Makes it the equivalent of --socks5\n"
+"\n"
+"       socks5h://\n"
+"              Makes it the equivalent of --socks5-hostname\n"
+"\n"
+"EXIT CODES\n"
+"       There are a bunch of different  error  codes  and  their  corresponding\n"
+, stdout);
+ fputs(
+"       error  messages  that  may appear during bad conditions. At the time of\n"
+"       this writing, the exit codes are:\n"
+"\n"
+"       1      Unsupported protocol. This build of curl has no support for this\n"
+"              protocol.\n"
+"\n"
+"       2      Failed to initialize.\n"
+"\n"
+"       3      URL malformed. The syntax was not correct.\n"
+"\n"
+"       4      A  feature  or  option  that  was  needed to perform the desired\n"
+"              request was not enabled or was  explicitly  disabled  at  build-\n"
+, stdout);
+ fputs(
+"              time.  To  make  curl able to do this, you probably need another\n"
+"              build of libcurl!\n"
+"\n"
+"       5      Couldn't resolve proxy.  The  given  proxy  host  could  not  be\n"
+"              resolved.\n"
+"\n"
+"       6      Couldn't resolve host. The given remote host was not resolved.\n"
+"\n"
+"       7      Failed to connect to host.\n"
+"\n"
+"       8      Weird server reply. The server sent data curl couldn't parse.\n"
+"\n"
+"       9      FTP  access  denied. The server denied login or denied access to\n"
+, stdout);
+ fputs(
+"              the particular resource or directory you wanted to  reach.  Most\n"
+"              often  you  tried to change to a directory that doesn't exist on\n"
+"              the server.\n"
+"\n"
+"       10     FTP accept failed. While waiting for the server to connect  back\n"
+"              when  an active FTP session is used, an error code was sent over\n"
+"              the control connection or similar.\n"
+"\n"
+"       11     FTP weird PASS reply. Curl couldn't parse the reply sent to  the\n"
+"              PASS request.\n"
+, stdout);
+ fputs(
+"\n"
+"       12     During  an  active  FTP  session while waiting for the server to\n"
+"              connect back to curl, the timeout expired.\n"
+"\n"
+"       13     FTP weird PASV reply, Curl couldn't parse the reply sent to  the\n"
+"              PASV request.\n"
+"\n"
+"       14     FTP  weird  227  format.  Curl  couldn't  parse the 227-line the\n"
+"              server sent.\n"
+"\n"
+"       15     FTP can't get host. Couldn't resolve the host IP we got  in  the\n"
+"              227-line.\n"
+"\n"
+, stdout);
+ fputs(
+"       16     HTTP/2 error. A problem was detected in the HTTP2 framing layer.\n"
+"              This is somewhat generic and can be one out of several problems,\n"
+"              see the error message for details.\n"
+"\n"
+"       17     FTP  couldn't  set  binary.  Couldn't  change transfer method to\n"
+"              binary.\n"
+"\n"
+"       18     Partial file. Only a part of the file was transferred.\n"
+"\n"
+"       19     FTP couldn't download/access the given file, the RETR (or  simi-\n"
+"              lar) command failed.\n"
+"\n"
+, stdout);
+ fputs(
+"       21     FTP quote error. A quote command returned error from the server.\n"
+"       22     HTTP  page  not  retrieved.  The  requested url was not found or\n"
+"              returned another error with the HTTP error  code  being  400  or\n"
+"              above. This return code only appears if -f, --fail is used.\n"
+"\n"
+"       23     Write  error.  Curl couldn't write data to a local filesystem or\n"
+"              similar.\n"
+"\n"
+"       25     FTP couldn't STOR file. The server denied  the  STOR  operation,\n"
+, stdout);
+ fputs(
+"              used for FTP uploading.\n"
+"\n"
+"       26     Read error. Various reading problems.\n"
+"\n"
+"       27     Out of memory. A memory allocation request failed.\n"
+"\n"
+"       28     Operation  timeout.  The  specified  time-out period was reached\n"
+"              according to the conditions.\n"
+"\n"
+"       30     FTP PORT failed. The PORT command failed. Not  all  FTP  servers\n"
+"              support  the  PORT  command,  try  doing  a  transfer using PASV\n"
+"              instead!\n"
+"\n"
+, stdout);
+ fputs(
+"       31     FTP couldn't use REST. The REST command failed. This command  is\n"
+"              used for resumed FTP transfers.\n"
+"\n"
+"       33     HTTP range error. The range \"command\" didn't work.\n"
+"\n"
+"       34     HTTP post error. Internal post-request generation error.\n"
+"\n"
+"       35     SSL connect error. The SSL handshaking failed.\n"
+"\n"
+"       36     Bad  download resume. Couldn't continue an earlier aborted down-\n"
+"              load.\n"
+"\n"
+, stdout);
+ fputs(
+"       37     FILE couldn't read file. Failed to open the file. Permissions?\n"
+"\n"
+"       38     LDAP cannot bind. LDAP bind operation failed.\n"
+"\n"
+"       39     LDAP search failed.\n"
+"\n"
+"       41     Function not found. A required LDAP function was not found.\n"
+"\n"
+"       42     Aborted by callback. An application told curl to abort the oper-\n"
+"              ation.\n"
+"\n"
+"       43     Internal error. A function was called with a bad parameter.\n"
+"\n"
+, stdout);
+ fputs(
+"       45     Interface  error.  A  specified  outgoing interface could not be\n"
+"              used.\n"
+"\n"
+"       47     Too many redirects. When following redirects, curl hit the maxi-\n"
+"              mum amount.\n"
+"\n"
+"       48     Unknown  option  specified  to  libcurl. This indicates that you\n"
+"              passed a weird option to curl that was passed on to libcurl  and\n"
+"              rejected. Read up in the manual!\n"
+"\n"
+"       49     Malformed telnet option.\n"
+"\n"
+, stdout);
+ fputs(
+"       51     The peer's SSL certificate or SSH MD5 fingerprint was not OK.\n"
+"\n"
+"       52     The  server  didn't  reply anything, which here is considered an\n"
+"              error.\n"
+"\n"
+"       53     SSL crypto engine not found.\n"
+"\n"
+"       54     Cannot set SSL crypto engine as default.\n"
+"\n"
+"       55     Failed sending network data.\n"
+"\n"
+"       56     Failure in receiving network data.\n"
+"\n"
+"       58     Problem with the local certificate.\n"
+"\n"
+"       59     Couldn't use specified SSL cipher.\n"
+"\n"
+, stdout);
+ fputs(
+"       60     Peer certificate cannot be authenticated with known CA  certifi-\n"
+"              cates.\n"
+"\n"
+"       61     Unrecognized transfer encoding.\n"
+"\n"
+"       62     Invalid LDAP URL.\n"
+"\n"
+"       63     Maximum file size exceeded.\n"
+"\n"
+"       64     Requested FTP SSL level failed.\n"
+"\n"
+"       65     Sending the data requires a rewind that failed.\n"
+"\n"
+"       66     Failed to initialise SSL Engine.\n"
+"\n"
+"       67     The  user  name,  password, or similar was not accepted and curl\n"
+"              failed to log in.\n"
+"\n"
+, stdout);
+ fputs(
+"       68     File not found on TFTP server.\n"
+"\n"
+"       69     Permission problem on TFTP server.\n"
+"\n"
+"       70     Out of disk space on TFTP server.\n"
+"\n"
+"       71     Illegal TFTP operation.\n"
+"\n"
+"       72     Unknown TFTP transfer ID.\n"
+"\n"
+"       73     File already exists (TFTP).\n"
+"\n"
+"       74     No such user (TFTP).\n"
+"\n"
+"       75     Character conversion failed.\n"
+"\n"
+"       76     Character conversion functions required.\n"
+"\n"
+"       77     Problem with reading the SSL CA cert (path? access rights?).\n"
+"\n"
+, stdout);
+ fputs(
+"       78     The resource referenced in the URL does not exist.\n"
+"\n"
+"       79     An unspecified error occurred during the SSH session.\n"
+"\n"
+"       80     Failed to shut down the SSL connection.\n"
+"\n"
+"       82     Could not load CRL file,  missing  or  wrong  format  (added  in\n"
+"              7.19.0).\n"
+"\n"
+"       83     Issuer check failed (added in 7.19.0).\n"
+"\n"
+"       84     The FTP PRET command failed\n"
+"\n"
+"       85     RTSP: mismatch of CSeq numbers\n"
+"\n"
+"       86     RTSP: mismatch of Session Identifiers\n"
+"\n"
+, stdout);
+ fputs(
+"       87     unable to parse FTP file list\n"
+"\n"
+"       88     FTP chunk callback reported error\n"
+"\n"
+"       89     No connection available, the session will be queued\n"
+"\n"
+"       90     SSL public key does not matched pinned public key\n"
+"\n"
+"       XX     More error codes will appear here in future releases. The exist-\n"
+"              ing ones are meant to never change.\n"
+"\n"
+"AUTHORS / CONTRIBUTORS\n"
+"       Daniel Stenberg is the main author, but the whole list of  contributors\n"
+, stdout);
+ fputs(
+"       is found in the separate THANKS file.\n"
+"\n"
+"WWW\n"
+"       https://curl.haxx.se\n"
+"\n"
+"SEE ALSO\n"
+"       ftp(1), wget(1)\n"
+"\n"
+"LATEST VERSION\n"
+"\n"
+"  You always find news about what's going on as well as the latest versions\n"
+"  from the curl web pages, located at:\n"
+"\n"
+"        https://curl.haxx.se\n"
+"\n"
+"SIMPLE USAGE\n"
+"\n"
+"  Get the main page from Netscape's web-server:\n"
+"\n"
+"        curl http://www.netscape.com/\n"
+"\n"
+"  Get the README file the user's home directory at funet's ftp-server:\n"
+"\n"
+"        curl ftp://ftp.funet.fi/README\n"
+"\n"
+, stdout);
+ fputs(
+"  Get a web page from a server using port 8000:\n"
+"\n"
+"        curl http://www.weirdserver.com:8000/\n"
+"\n"
+"  Get a directory listing of an FTP site:\n"
+"\n"
+"        curl ftp://cool.haxx.se/\n"
+"\n"
+"  Get the definition of curl from a dictionary:\n"
+"\n"
+"        curl dict://dict.org/m:curl\n"
+"\n"
+"  Fetch two documents at once:\n"
+"\n"
+"        curl ftp://cool.haxx.se/ http://www.weirdserver.com:8000/\n"
+"\n"
+"  Get a file off an FTPS server:\n"
+"\n"
+"        curl ftps://files.are.secure.com/secrets.txt\n"
+"\n"
+, stdout);
+ fputs(
+"  or use the more appropriate FTPS way to get the same file:\n"
+"\n"
+"        curl --ftp-ssl ftp://files.are.secure.com/secrets.txt\n"
+"\n"
+"  Get a file from an SSH server using SFTP:\n"
+"\n"
+"        curl -u username sftp://example.com/etc/issue\n"
+"\n"
+"  Get a file from an SSH server using SCP using a private key\n"
+"  (not password-protected) to authenticate:\n"
+"\n"
+"        curl -u username: --key ~/.ssh/id_rsa \\\n"
+"             scp://example.com/~/file.txt\n"
+"\n"
+"  Get a file from an SSH server using SCP using a private key\n"
+, stdout);
+ fputs(
+"  (password-protected) to authenticate:\n"
+"\n"
+"        curl -u username: --key ~/.ssh/id_rsa --pass private_key_password \\\n"
+"             scp://example.com/~/file.txt\n"
+"\n"
+"  Get the main page from an IPv6 web server:\n"
+"\n"
+"        curl \"http://[2001:1890:1112:1::20]/\"\n"
+"\n"
+"  Get a file from an SMB server:\n"
+"\n"
+"        curl -u \"domain\\username:passwd\" smb://server.example.com/share/file.txt\n"
+"\n"
+"DOWNLOAD TO A FILE\n"
+"\n"
+"  Get a web page and store in a local file with a specific name:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl -o thatpage.html http://www.netscape.com/\n"
+"\n"
+"  Get a web page and store in a local file, make the local file get the name\n"
+"  of the remote document (if no file name part is specified in the URL, this\n"
+"  will fail):\n"
+"\n"
+"        curl -O http://www.netscape.com/index.html\n"
+"\n"
+"  Fetch two files and store them with their remote names:\n"
+"\n"
+"        curl -O www.haxx.se/index.html -O curl.haxx.se/download.html\n"
+"\n"
+"USING PASSWORDS\n"
+"\n"
+" FTP\n"
+"\n"
+"   To ftp files using name+passwd, include them in the URL like:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl ftp://name:passwd@machine.domain:port/full/path/to/file\n"
+"\n"
+"   or specify them with the -u flag like\n"
+"\n"
+"        curl -u name:passwd ftp://machine.domain:port/full/path/to/file\n"
+"\n"
+" FTPS\n"
+"\n"
+"   It is just like for FTP, but you may also want to specify and use\n"
+"   SSL-specific options for certificates etc.\n"
+"\n"
+"   Note that using FTPS:// as prefix is the \"implicit\" way as described in the\n"
+"   standards while the recommended \"explicit\" way is done by using FTP:// and\n"
+"   the --ftp-ssl option.\n"
+"\n"
+, stdout);
+ fputs(
+" SFTP / SCP\n"
+"\n"
+"   This is similar to FTP, but you can use the --key option to specify a\n"
+"   private key to use instead of a password. Note that the private key may\n"
+"   itself be protected by a password that is unrelated to the login password\n"
+"   of the remote system; this password is specified using the --pass option.\n"
+"   Typically, curl will automatically extract the public key from the private\n"
+"   key file, but in cases where curl does not have the proper library support,\n"
+, stdout);
+ fputs(
+"   a matching public key file must be specified using the --pubkey option.\n"
+"\n"
+" HTTP\n"
+"\n"
+"   Curl also supports user and password in HTTP URLs, thus you can pick a file\n"
+"   like:\n"
+"\n"
+"        curl http://name:passwd@machine.domain/full/path/to/file\n"
+"\n"
+"   or specify user and password separately like in\n"
+"\n"
+"        curl -u name:passwd http://machine.domain/full/path/to/file\n"
+"\n"
+"   HTTP offers many different methods of authentication and curl supports\n"
+, stdout);
+ fputs(
+"   several: Basic, Digest, NTLM and Negotiate (SPNEGO). Without telling which\n"
+"   method to use, curl defaults to Basic. You can also ask curl to pick the\n"
+"   most secure ones out of the ones that the server accepts for the given URL,\n"
+"   by using --anyauth.\n"
+"\n"
+"   NOTE! According to the URL specification, HTTP URLs can not contain a user\n"
+"   and password, so that style will not work when using curl via a proxy, even\n"
+"   though curl allows it at other times. When using a proxy, you _must_ use\n"
+, stdout);
+ fputs(
+"   the -u style for user and password.\n"
+"\n"
+" HTTPS\n"
+"\n"
+"   Probably most commonly used with private certificates, as explained below.\n"
+"\n"
+"PROXY\n"
+"\n"
+" curl supports both HTTP and SOCKS proxy servers, with optional authentication.\n"
+" It does not have special support for FTP proxy servers since there are no\n"
+" standards for those, but it can still be made to work with many of them. You\n"
+" can also use both HTTP and SOCKS proxies to transfer files to and from FTP\n"
+" servers.\n"
+"\n"
+, stdout);
+ fputs(
+" Get an ftp file using an HTTP proxy named my-proxy that uses port 888:\n"
+"\n"
+"        curl -x my-proxy:888 ftp://ftp.leachsite.com/README\n"
+"\n"
+" Get a file from an HTTP server that requires user and password, using the\n"
+" same proxy as above:\n"
+"\n"
+"        curl -u user:passwd -x my-proxy:888 http://www.get.this/\n"
+"\n"
+" Some proxies require special authentication. Specify by using -U as above:\n"
+"\n"
+"        curl -U user:passwd -x my-proxy:888 http://www.get.this/\n"
+"\n"
+, stdout);
+ fputs(
+" A comma-separated list of hosts and domains which do not use the proxy can\n"
+" be specified as:\n"
+"\n"
+"        curl --noproxy localhost,get.this -x my-proxy:888 http://www.get.this/\n"
+"\n"
+" If the proxy is specified with --proxy1.0 instead of --proxy or -x, then\n"
+" curl will use HTTP/1.0 instead of HTTP/1.1 for any CONNECT attempts.\n"
+"\n"
+" curl also supports SOCKS4 and SOCKS5 proxies with --socks4 and --socks5.\n"
+"\n"
+" See also the environment variables Curl supports that offer further proxy\n"
+" control.\n"
+"\n"
+, stdout);
+ fputs(
+" Most FTP proxy servers are set up to appear as a normal FTP server from the\n"
+" client's perspective, with special commands to select the remote FTP server.\n"
+" curl supports the -u, -Q and --ftp-account options that can be used to\n"
+" set up transfers through many FTP proxies. For example, a file can be\n"
+" uploaded to a remote FTP server using a Blue Coat FTP proxy with the\n"
+" options:\n"
+"\n"
+"   curl -u \"Remote-FTP-Username@remote.ftp.server Proxy-Username:Remote-Pass\" \\\n"
+, stdout);
+ fputs(
+"    --ftp-account Proxy-Password --upload-file local-file \\\n"
+"    ftp://my-ftp.proxy.server:21/remote/upload/path/\n"
+"\n"
+" See the manual for your FTP proxy to determine the form it expects to set up\n"
+" transfers, and curl's -v option to see exactly what curl is sending.\n"
+"\n"
+"RANGES\n"
+"\n"
+"  HTTP 1.1 introduced byte-ranges. Using this, a client can request\n"
+"  to get only one or more subparts of a specified document. Curl supports\n"
+"  this with the -r flag.\n"
+"\n"
+"  Get the first 100 bytes of a document:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl -r 0-99 http://www.get.this/\n"
+"\n"
+"  Get the last 500 bytes of a document:\n"
+"\n"
+"        curl -r -500 http://www.get.this/\n"
+"\n"
+"  Curl also supports simple ranges for FTP files as well. Then you can only\n"
+"  specify start and stop position.\n"
+"\n"
+"  Get the first 100 bytes of a document using FTP:\n"
+"\n"
+"        curl -r 0-99 ftp://www.get.this/README\n"
+"\n"
+"UPLOADING\n"
+"\n"
+" FTP / FTPS / SFTP / SCP\n"
+"\n"
+"  Upload all data on stdin to a specified server:\n"
+"\n"
+"        curl -T - ftp://ftp.upload.com/myfile\n"
+"\n"
+, stdout);
+ fputs(
+"  Upload data from a specified file, login with user and password:\n"
+"\n"
+"        curl -T uploadfile -u user:passwd ftp://ftp.upload.com/myfile\n"
+"\n"
+"  Upload a local file to the remote site, and use the local file name at the remote\n"
+"  site too:\n"
+"\n"
+"        curl -T uploadfile -u user:passwd ftp://ftp.upload.com/\n"
+"\n"
+"  Upload a local file to get appended to the remote file:\n"
+"\n"
+"        curl -T localfile -a ftp://ftp.upload.com/remotefile\n"
+"\n"
+"  Curl also supports ftp upload through a proxy, but only if the proxy is\n"
+, stdout);
+ fputs(
+"  configured to allow that kind of tunneling. If it does, you can run curl in\n"
+"  a fashion similar to:\n"
+"\n"
+"        curl --proxytunnel -x proxy:port -T localfile ftp.upload.com\n"
+"\n"
+"SMB / SMBS\n"
+"\n"
+"        curl -T file.txt -u \"domain\\username:passwd\" \n"
+"         smb://server.example.com/share/\n"
+"\n"
+" HTTP\n"
+"\n"
+"  Upload all data on stdin to a specified HTTP site:\n"
+"\n"
+"        curl -T - http://www.upload.com/myfile\n"
+"\n"
+"  Note that the HTTP server must have been configured to accept PUT before\n"
+"  this can be done successfully.\n"
+"\n"
+, stdout);
+ fputs(
+"  For other ways to do HTTP data upload, see the POST section below.\n"
+"\n"
+"VERBOSE / DEBUG\n"
+"\n"
+"  If curl fails where it isn't supposed to, if the servers don't let you in,\n"
+"  if you can't understand the responses: use the -v flag to get verbose\n"
+"  fetching. Curl will output lots of info and what it sends and receives in\n"
+"  order to let the user see all client-server interaction (but it won't show\n"
+"  you the actual data).\n"
+"\n"
+"        curl -v ftp://ftp.upload.com/\n"
+"\n"
+, stdout);
+ fputs(
+"  To get even more details and information on what curl does, try using the\n"
+"  --trace or --trace-ascii options with a given file name to log to, like\n"
+"  this:\n"
+"\n"
+"        curl --trace trace.txt www.haxx.se\n"
+"\n"
+"\n"
+"DETAILED INFORMATION\n"
+"\n"
+"  Different protocols provide different ways of getting detailed information\n"
+"  about specific files/documents. To get curl to show detailed information\n"
+"  about a single file, you should use -I/--head option. It displays all\n"
+, stdout);
+ fputs(
+"  available info on a single file for HTTP and FTP. The HTTP information is a\n"
+"  lot more extensive.\n"
+"\n"
+"  For HTTP, you can get the header information (the same as -I would show)\n"
+"  shown before the data by using -i/--include. Curl understands the\n"
+"  -D/--dump-header option when getting files from both FTP and HTTP, and it\n"
+"  will then store the headers in the specified file.\n"
+"\n"
+"  Store the HTTP headers in a separate file (headers.txt in the example):\n"
+"\n"
+, stdout);
+ fputs(
+"        curl --dump-header headers.txt curl.haxx.se\n"
+"\n"
+"  Note that headers stored in a separate file can be very useful at a later\n"
+"  time if you want curl to use cookies sent by the server. More about that in\n"
+"  the cookies section.\n"
+"\n"
+"POST (HTTP)\n"
+"\n"
+"  It's easy to post data using curl. This is done using the -d <data>\n"
+"  option.  The post data must be urlencoded.\n"
+"\n"
+"  Post a simple \"name\" and \"phone\" guestbook.\n"
+"\n"
+"        curl -d \"name=Rafael%20Sagula&phone=3320780\" \\\n"
+, stdout);
+ fputs(
+"                http://www.where.com/guest.cgi\n"
+"\n"
+"  How to post a form with curl, lesson #1:\n"
+"\n"
+"  Dig out all the <input> tags in the form that you want to fill in. (There's\n"
+"  a perl program called formfind.pl on the curl site that helps with this).\n"
+"\n"
+"  If there's a \"normal\" post, you use -d to post. -d takes a full \"post\n"
+"  string\", which is in the format\n"
+"\n"
+"        <variable1>=<data1>&<variable2>=<data2>&...\n"
+"\n"
+"  The 'variable' names are the names set with \"name=\" in the <input> tags, and\n"
+, stdout);
+ fputs(
+"  the data is the contents you want to fill in for the inputs. The data *must*\n"
+"  be properly URL encoded. That means you replace space with + and that you\n"
+"  replace weird letters with %XX where XX is the hexadecimal representation of\n"
+"  the letter's ASCII code.\n"
+"\n"
+"  Example:\n"
+"\n"
+"  (page located at http://www.formpost.com/getthis/\n"
+"\n"
+"        <form action=\"post.cgi\" method=\"post\">\n"
+"        <input name=user size=10>\n"
+"        <input name=pass type=password size=10>\n"
+, stdout);
+ fputs(
+"        <input name=id type=hidden value=\"blablabla\">\n"
+"        <input name=ding value=\"submit\">\n"
+"        </form>\n"
+"\n"
+"  We want to enter user 'foobar' with password '12345'.\n"
+"\n"
+"  To post to this, you enter a curl command line like:\n"
+"\n"
+"        curl -d \"user=foobar&pass=12345&id=blablabla&ding=submit\"  (continues)\n"
+"          http://www.formpost.com/getthis/post.cgi\n"
+"\n"
+"\n"
+"  While -d uses the application/x-www-form-urlencoded mime-type, generally\n"
+, stdout);
+ fputs(
+"  understood by CGI's and similar, curl also supports the more capable\n"
+"  multipart/form-data type. This latter type supports things like file upload.\n"
+"\n"
+"  -F accepts parameters like -F \"name=contents\". If you want the contents to\n"
+"  be read from a file, use <@filename> as contents. When specifying a file,\n"
+"  you can also specify the file content type by appending ';type=<mime type>'\n"
+"  to the file name. You can also post the contents of several files in one\n"
+, stdout);
+ fputs(
+"  field.  For example, the field name 'coolfiles' is used to send three files,\n"
+"  with different content types using the following syntax:\n"
+"\n"
+"        curl -F \"coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html\" \\\n"
+"        http://www.post.com/postit.cgi\n"
+"\n"
+"  If the content-type is not specified, curl will try to guess from the file\n"
+"  extension (it only knows a few), or use the previously specified type (from\n"
+"  an earlier file if several files are specified in a list) or else it will\n"
+, stdout);
+ fputs(
+"  use the default type 'application/octet-stream'.\n"
+"\n"
+"  Emulate a fill-in form with -F. Let's say you fill in three fields in a\n"
+"  form. One field is a file name which to post, one field is your name and one\n"
+"  field is a file description. We want to post the file we have written named\n"
+"  \"cooltext.txt\". To let curl do the posting of this data instead of your\n"
+"  favourite browser, you have to read the HTML source of the form page and\n"
+, stdout);
+ fputs(
+"  find the names of the input fields. In our example, the input field names\n"
+"  are 'file', 'yourname' and 'filedescription'.\n"
+"\n"
+"        curl -F \"file=@cooltext.txt\" -F \"yourname=Daniel\" \\\n"
+"             -F \"filedescription=Cool text file with cool text inside\" \\\n"
+"             http://www.post.com/postit.cgi\n"
+"\n"
+"  To send two files in one post you can do it in two ways:\n"
+"\n"
+"  1. Send multiple files in a single \"field\" with a single field name:\n"
+"\n"
+"        curl -F \"pictures=@dog.gif,cat.gif\"\n"
+"\n"
+, stdout);
+ fputs(
+"  2. Send two fields with two field names:\n"
+"\n"
+"        curl -F \"docpicture=@dog.gif\" -F \"catpicture=@cat.gif\"\n"
+"\n"
+"  To send a field value literally without interpreting a leading '@'\n"
+"  or '<', or an embedded ';type=', use --form-string instead of\n"
+"  -F. This is recommended when the value is obtained from a user or\n"
+"  some other unpredictable source. Under these circumstances, using\n"
+"  -F instead of --form-string would allow a user to trick curl into\n"
+"  uploading a file.\n"
+"\n"
+"REFERRER\n"
+"\n"
+, stdout);
+ fputs(
+"  An HTTP request has the option to include information about which address\n"
+"  referred it to the actual page.  Curl allows you to specify the\n"
+"  referrer to be used on the command line. It is especially useful to\n"
+"  fool or trick stupid servers or CGI scripts that rely on that information\n"
+"  being available or contain certain data.\n"
+"\n"
+"        curl -e www.coolsite.com http://www.showme.com/\n"
+"\n"
+"  NOTE: The Referer: [sic] field is defined in the HTTP spec to be a full URL.\n"
+"\n"
+"USER AGENT\n"
+"\n"
+, stdout);
+ fputs(
+"  An HTTP request has the option to include information about the browser\n"
+"  that generated the request. Curl allows it to be specified on the command\n"
+"  line. It is especially useful to fool or trick stupid servers or CGI\n"
+"  scripts that only accept certain browsers.\n"
+"\n"
+"  Example:\n"
+"\n"
+"  curl -A 'Mozilla/3.0 (Win95; I)' http://www.nationsbank.com/\n"
+"\n"
+"  Other common strings:\n"
+"    'Mozilla/3.0 (Win95; I)'     Netscape Version 3 for Windows 95\n"
+, stdout);
+ fputs(
+"    'Mozilla/3.04 (Win95; U)'    Netscape Version 3 for Windows 95\n"
+"    'Mozilla/2.02 (OS/2; U)'     Netscape Version 2 for OS/2\n"
+"    'Mozilla/4.04 [en] (X11; U; AIX 4.2; Nav)'           NS for AIX\n"
+"    'Mozilla/4.05 [en] (X11; U; Linux 2.0.32 i586)'      NS for Linux\n"
+"\n"
+"  Note that Internet Explorer tries hard to be compatible in every way:\n"
+"    'Mozilla/4.0 (compatible; MSIE 4.01; Windows 95)'    MSIE for W95\n"
+"\n"
+"  Mozilla is not the only possible User-Agent name:\n"
+, stdout);
+ fputs(
+"    'Konqueror/1.0'             KDE File Manager desktop client\n"
+"    'Lynx/2.7.1 libwww-FM/2.14' Lynx command line browser\n"
+"\n"
+"COOKIES\n"
+"\n"
+"  Cookies are generally used by web servers to keep state information at the\n"
+"  client's side. The server sets cookies by sending a response line in the\n"
+"  headers that looks like 'Set-Cookie: <data>' where the data part then\n"
+"  typically contains a set of NAME=VALUE pairs (separated by semicolons ';'\n"
+, stdout);
+ fputs(
+"  like \"NAME1=VALUE1; NAME2=VALUE2;\"). The server can also specify for what\n"
+"  path the \"cookie\" should be used for (by specifying \"path=value\"), when the\n"
+"  cookie should expire (\"expire=DATE\"), for what domain to use it\n"
+"  (\"domain=NAME\") and if it should be used on secure connections only\n"
+"  (\"secure\").\n"
+"\n"
+"  If you've received a page from a server that contains a header like:\n"
+"        Set-Cookie: sessionid=boo123; path=\"/foo\";\n"
+"\n"
+, stdout);
+ fputs(
+"  it means the server wants that first pair passed on when we get anything in\n"
+"  a path beginning with \"/foo\".\n"
+"\n"
+"  Example, get a page that wants my name passed in a cookie:\n"
+"\n"
+"        curl -b \"name=Daniel\" www.sillypage.com\n"
+"\n"
+"  Curl also has the ability to use previously received cookies in following\n"
+"  sessions. If you get cookies from a server and store them in a file in a\n"
+"  manner similar to:\n"
+"\n"
+"        curl --dump-header headers www.example.com\n"
+"\n"
+, stdout);
+ fputs(
+"  ... you can then in a second connect to that (or another) site, use the\n"
+"  cookies from the 'headers' file like:\n"
+"\n"
+"        curl -b headers www.example.com\n"
+"\n"
+"  While saving headers to a file is a working way to store cookies, it is\n"
+"  however error-prone and not the preferred way to do this. Instead, make curl\n"
+"  save the incoming cookies using the well-known netscape cookie format like\n"
+"  this:\n"
+"\n"
+"        curl -c cookies.txt www.example.com\n"
+"\n"
+, stdout);
+ fputs(
+"  Note that by specifying -b you enable the \"cookie awareness\" and with -L\n"
+"  you can make curl follow a location: (which often is used in combination\n"
+"  with cookies). So that if a site sends cookies and a location, you can\n"
+"  use a non-existing file to trigger the cookie awareness like:\n"
+"\n"
+"        curl -L -b empty.txt www.example.com\n"
+"\n"
+"  The file to read cookies from must be formatted using plain HTTP headers OR\n"
+"  as netscape's cookie file. Curl will determine what kind it is based on the\n"
+, stdout);
+ fputs(
+"  file contents.  In the above command, curl will parse the header and store\n"
+"  the cookies received from www.example.com.  curl will send to the server the\n"
+"  stored cookies which match the request as it follows the location.  The\n"
+"  file \"empty.txt\" may be a nonexistent file.\n"
+"\n"
+"  To read and write cookies from a netscape cookie file, you can set both -b\n"
+"  and -c to use the same file:\n"
+"\n"
+"        curl -b cookies.txt -c cookies.txt www.example.com\n"
+"\n"
+"PROGRESS METER\n"
+"\n"
+, stdout);
+ fputs(
+"  The progress meter exists to show a user that something actually is\n"
+"  happening. The different fields in the output have the following meaning:\n"
+"\n"
+"  % Total    % Received % Xferd  Average Speed          Time             Curr.\n"
+"                                 Dload  Upload Total    Current  Left    Speed\n"
+"  0  151M    0 38608    0     0   9406      0  4:41:43  0:00:04  4:41:39  9287\n"
+"\n"
+"  From left-to-right:\n"
+"   %             - percentage completed of the whole transfer\n"
+, stdout);
+ fputs(
+"   Total         - total size of the whole expected transfer\n"
+"   %             - percentage completed of the download\n"
+"   Received      - currently downloaded amount of bytes\n"
+"   %             - percentage completed of the upload\n"
+"   Xferd         - currently uploaded amount of bytes\n"
+"   Average Speed\n"
+"   Dload         - the average transfer speed of the download\n"
+"   Average Speed\n"
+"   Upload        - the average transfer speed of the upload\n"
+"   Time Total    - expected time to complete the operation\n"
+, stdout);
+ fputs(
+"   Time Current  - time passed since the invoke\n"
+"   Time Left     - expected time left to completion\n"
+"   Curr.Speed    - the average transfer speed the last 5 seconds (the first\n"
+"                   5 seconds of a transfer is based on less time of course.)\n"
+"\n"
+"  The -# option will display a totally different progress bar that doesn't\n"
+"  need much explanation!\n"
+"\n"
+"SPEED LIMIT\n"
+"\n"
+"  Curl allows the user to set the transfer speed conditions that must be met\n"
+, stdout);
+ fputs(
+"  to let the transfer keep going. By using the switch -y and -Y you\n"
+"  can make curl abort transfers if the transfer speed is below the specified\n"
+"  lowest limit for a specified time.\n"
+"\n"
+"  To have curl abort the download if the speed is slower than 3000 bytes per\n"
+"  second for 1 minute, run:\n"
+"\n"
+"        curl -Y 3000 -y 60 www.far-away-site.com\n"
+"\n"
+"  This can very well be used in combination with the overall time limit, so\n"
+"  that the above operation must be completed in whole within 30 minutes:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl -m 1800 -Y 3000 -y 60 www.far-away-site.com\n"
+"\n"
+"  Forcing curl not to transfer data faster than a given rate is also possible,\n"
+"  which might be useful if you're using a limited bandwidth connection and you\n"
+"  don't want your transfer to use all of it (sometimes referred to as\n"
+"  \"bandwidth throttle\").\n"
+"\n"
+"  Make curl transfer data no faster than 10 kilobytes per second:\n"
+"\n"
+"        curl --limit-rate 10K www.far-away-site.com\n"
+"\n"
+"    or\n"
+"\n"
+"        curl --limit-rate 10240 www.far-away-site.com\n"
+"\n"
+, stdout);
+ fputs(
+"  Or prevent curl from uploading data faster than 1 megabyte per second:\n"
+"\n"
+"        curl -T upload --limit-rate 1M ftp://uploadshereplease.com\n"
+"\n"
+"  When using the --limit-rate option, the transfer rate is regulated on a\n"
+"  per-second basis, which will cause the total transfer speed to become lower\n"
+"  than the given number. Sometimes of course substantially lower, if your\n"
+"  transfer stalls during periods.\n"
+"\n"
+"CONFIG FILE\n"
+"\n"
+"  Curl automatically tries to read the .curlrc file (or _curlrc file on win32\n"
+, stdout);
+ fputs(
+"  systems) from the user's home dir on startup.\n"
+"\n"
+"  The config file could be made up with normal command line switches, but you\n"
+"  can also specify the long options without the dashes to make it more\n"
+"  readable. You can separate the options and the parameter with spaces, or\n"
+"  with = or :. Comments can be used within the file. If the first letter on a\n"
+"  line is a '#'-symbol the rest of the line is treated as a comment.\n"
+"\n"
+"  If you want the parameter to contain spaces, you must enclose the entire\n"
+, stdout);
+ fputs(
+"  parameter within double quotes (\"). Within those quotes, you specify a\n"
+"  quote as \\\".\n"
+"\n"
+"  NOTE: You must specify options and their arguments on the same line.\n"
+"\n"
+"  Example, set default time out and proxy in a config file:\n"
+"\n"
+"        # We want a 30 minute timeout:\n"
+"        -m 1800\n"
+"        # ... and we use a proxy for all accesses:\n"
+"        proxy = proxy.our.domain.com:8080\n"
+"\n"
+"  White spaces ARE significant at the end of lines, but all white spaces\n"
+, stdout);
+ fputs(
+"  leading up to the first characters of each line are ignored.\n"
+"\n"
+"  Prevent curl from reading the default file by using -q as the first command\n"
+"  line parameter, like:\n"
+"\n"
+"        curl -q www.thatsite.com\n"
+"\n"
+"  Force curl to get and display a local help page in case it is invoked\n"
+"  without URL by making a config file similar to:\n"
+"\n"
+"        # default url to get\n"
+"        url = \"http://help.with.curl.com/curlhelp.html\"\n"
+"\n"
+"  You can specify another config file to be read by using the -K/--config\n"
+, stdout);
+ fputs(
+"  flag. If you set config file name to \"-\" it'll read the config from stdin,\n"
+"  which can be handy if you want to hide options from being visible in process\n"
+"  tables etc:\n"
+"\n"
+"        echo \"user = user:passwd\" | curl -K - http://that.secret.site.com\n"
+"\n"
+"EXTRA HEADERS\n"
+"\n"
+"  When using curl in your own very special programs, you may end up needing\n"
+"  to pass on your own custom headers when getting a web page. You can do\n"
+"  this by using the -H flag.\n"
+"\n"
+, stdout);
+ fputs(
+"  Example, send the header \"X-you-and-me: yes\" to the server when getting a\n"
+"  page:\n"
+"\n"
+"        curl -H \"X-you-and-me: yes\" www.love.com\n"
+"\n"
+"  This can also be useful in case you want curl to send a different text in a\n"
+"  header than it normally does. The -H header you specify then replaces the\n"
+"  header curl would normally send. If you replace an internal header with an\n"
+"  empty one, you prevent that header from being sent. To prevent the Host:\n"
+"  header from being used:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl -H \"Host:\" www.server.com\n"
+"\n"
+"FTP and PATH NAMES\n"
+"\n"
+"  Do note that when getting files with the ftp:// URL, the given path is\n"
+"  relative the directory you enter. To get the file 'README' from your home\n"
+"  directory at your ftp site, do:\n"
+"\n"
+"        curl ftp://user:passwd@my.site.com/README\n"
+"\n"
+"  But if you want the README file from the root directory of that very same\n"
+"  site, you need to specify the absolute file name:\n"
+"\n"
+"        curl ftp://user:passwd@my.site.com//README\n"
+"\n"
+, stdout);
+ fputs(
+"  (I.e with an extra slash in front of the file name.)\n"
+"\n"
+"SFTP and SCP and PATH NAMES\n"
+"\n"
+"  With sftp: and scp: URLs, the path name given is the absolute name on the\n"
+"  server. To access a file relative to the remote user's home directory,\n"
+"  prefix the file with /~/ , such as:\n"
+"\n"
+"        curl -u $USER sftp://home.example.com/~/.bashrc\n"
+"\n"
+"FTP and firewalls\n"
+"\n"
+"  The FTP protocol requires one of the involved parties to open a second\n"
+, stdout);
+ fputs(
+"  connection as soon as data is about to get transferred. There are two ways to\n"
+"  do this.\n"
+"\n"
+"  The default way for curl is to issue the PASV command which causes the\n"
+"  server to open another port and await another connection performed by the\n"
+"  client. This is good if the client is behind a firewall that doesn't allow\n"
+"  incoming connections.\n"
+"\n"
+"        curl ftp.download.com\n"
+"\n"
+"  If the server, for example, is behind a firewall that doesn't allow connections\n"
+, stdout);
+ fputs(
+"  on ports other than 21 (or if it just doesn't support the PASV command), the\n"
+"  other way to do it is to use the PORT command and instruct the server to\n"
+"  connect to the client on the given IP number and port (as parameters to the\n"
+"  PORT command).\n"
+"\n"
+"  The -P flag to curl supports a few different options. Your machine may have\n"
+"  several IP-addresses and/or network interfaces and curl allows you to select\n"
+"  which of them to use. Default address can also be used:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl -P - ftp.download.com\n"
+"\n"
+"  Download with PORT but use the IP address of our 'le0' interface (this does\n"
+"  not work on windows):\n"
+"\n"
+"        curl -P le0 ftp.download.com\n"
+"\n"
+"  Download with PORT but use 192.168.0.10 as our IP address to use:\n"
+"\n"
+"        curl -P 192.168.0.10 ftp.download.com\n"
+"\n"
+"NETWORK INTERFACE\n"
+"\n"
+"  Get a web page from a server using a specified port for the interface:\n"
+"\n"
+"        curl --interface eth0:1 http://www.netscape.com/\n"
+"\n"
+"  or\n"
+"\n"
+, stdout);
+ fputs(
+"        curl --interface 192.168.1.10 http://www.netscape.com/\n"
+"\n"
+"HTTPS\n"
+"\n"
+"  Secure HTTP requires SSL libraries to be installed and used when curl is\n"
+"  built. If that is done, curl is capable of retrieving and posting documents\n"
+"  using the HTTPS protocol.\n"
+"\n"
+"  Example:\n"
+"\n"
+"        curl https://www.secure-site.com\n"
+"\n"
+"  Curl is also capable of using your personal certificates to get/post files\n"
+"  from sites that require valid certificates. The only drawback is that the\n"
+, stdout);
+ fputs(
+"  certificate needs to be in PEM-format. PEM is a standard and open format to\n"
+"  store certificates with, but it is not used by the most commonly used\n"
+"  browsers (Netscape and MSIE both use the so called PKCS#12 format). If you\n"
+"  want curl to use the certificates you use with your (favourite) browser, you\n"
+"  may need to download/compile a converter that can convert your browser's\n"
+"  formatted certificates to PEM formatted ones. This kind of converter is\n"
+, stdout);
+ fputs(
+"  included in recent versions of OpenSSL, and for older versions Dr Stephen\n"
+"  N. Henson has written a patch for SSLeay that adds this functionality. You\n"
+"  can get his patch (that requires an SSLeay installation) from his site at:\n"
+"  http://www.drh-consultancy.demon.co.uk/\n"
+"\n"
+"  Example on how to automatically retrieve a document using a certificate with\n"
+"  a personal password:\n"
+"\n"
+"        curl -E /path/to/cert.pem:password https://secure.site.com/\n"
+"\n"
+, stdout);
+ fputs(
+"  If you neglect to specify the password on the command line, you will be\n"
+"  prompted for the correct password before any data can be received.\n"
+"\n"
+"  Many older SSL-servers have problems with SSLv3 or TLS, which newer versions\n"
+"  of OpenSSL etc use, therefore it is sometimes useful to specify what\n"
+"  SSL-version curl should use. Use -3, -2 or -1 to specify that exact SSL\n"
+"  version to use (for SSLv3, SSLv2 or TLSv1 respectively):\n"
+"\n"
+"        curl -2 https://secure.site.com/\n"
+"\n"
+, stdout);
+ fputs(
+"  Otherwise, curl will first attempt to use v3 and then v2.\n"
+"\n"
+"  To use OpenSSL to convert your favourite browser's certificate into a PEM\n"
+"  formatted one that curl can use, do something like this:\n"
+"\n"
+"    In Netscape, you start with hitting the 'Security' menu button.\n"
+"\n"
+"    Select 'certificates->yours' and then pick a certificate in the list\n"
+"\n"
+"    Press the 'Export' button\n"
+"\n"
+"    enter your PIN code for the certs\n"
+"\n"
+"    select a proper place to save it\n"
+"\n"
+, stdout);
+ fputs(
+"    Run the 'openssl' application to convert the certificate. If you cd to the\n"
+"    openssl installation, you can do it like:\n"
+"\n"
+"     # ./apps/openssl pkcs12 -in [file you saved] -clcerts -out [PEMfile]\n"
+"\n"
+"    In Firefox, select Options, then Advanced, then the Encryption tab,\n"
+"    View Certificates. This opens the Certificate Manager, where you can\n"
+"    Export. Be sure to select PEM for the Save as type.\n"
+"\n"
+"    In Internet Explorer, select Internet Options, then the Content tab, then\n"
+, stdout);
+ fputs(
+"    Certificates. Then you can Export, and depending on the format you may\n"
+"    need to convert to PEM.\n"
+"\n"
+"    In Chrome, select Settings, then Show Advanced Settings. Under HTTPS/SSL\n"
+"    select Manage Certificates.\n"
+"\n"
+"RESUMING FILE TRANSFERS\n"
+"\n"
+" To continue a file transfer where it was previously aborted, curl supports\n"
+" resume on HTTP(S) downloads as well as FTP uploads and downloads.\n"
+"\n"
+" Continue downloading a document:\n"
+"\n"
+"        curl -C - -o file ftp://ftp.server.com/path/file\n"
+"\n"
+, stdout);
+ fputs(
+" Continue uploading a document(*1):\n"
+"\n"
+"        curl -C - -T file ftp://ftp.server.com/path/file\n"
+"\n"
+" Continue downloading a document from a web server(*2):\n"
+"\n"
+"        curl -C - -o file http://www.server.com/\n"
+"\n"
+" (*1) = This requires that the FTP server supports the non-standard command\n"
+"        SIZE. If it doesn't, curl will say so.\n"
+"\n"
+" (*2) = This requires that the web server supports at least HTTP/1.1. If it\n"
+"        doesn't, curl will say so.\n"
+"\n"
+"TIME CONDITIONS\n"
+"\n"
+, stdout);
+ fputs(
+" HTTP allows a client to specify a time condition for the document it\n"
+" requests. It is If-Modified-Since or If-Unmodified-Since. Curl allows you to\n"
+" specify them with the -z/--time-cond flag.\n"
+"\n"
+" For example, you can easily make a download that only gets performed if the\n"
+" remote file is newer than a local copy. It would be made like:\n"
+"\n"
+"        curl -z local.html http://remote.server.com/remote.html\n"
+"\n"
+" Or you can download a file only if the local file is newer than the remote\n"
+, stdout);
+ fputs(
+" one. Do this by prepending the date string with a '-', as in:\n"
+"\n"
+"        curl -z -local.html http://remote.server.com/remote.html\n"
+"\n"
+" You can specify a \"free text\" date as condition. Tell curl to only download\n"
+" the file if it was updated since January 12, 2012:\n"
+"\n"
+"        curl -z \"Jan 12 2012\" http://remote.server.com/remote.html\n"
+"\n"
+" Curl will then accept a wide range of date formats. You always make the date\n"
+" check the other way around by prepending it with a dash '-'.\n"
+"\n"
+"DICT\n"
+"\n"
+"  For fun try\n"
+"\n"
+, stdout);
+ fputs(
+"        curl dict://dict.org/m:curl\n"
+"        curl dict://dict.org/d:heisenbug:jargon\n"
+"        curl dict://dict.org/d:daniel:web1913\n"
+"\n"
+"  Aliases for 'm' are 'match' and 'find', and aliases for 'd' are 'define'\n"
+"  and 'lookup'. For example,\n"
+"\n"
+"        curl dict://dict.org/find:curl\n"
+"\n"
+"  Commands that break the URL description of the RFC (but not the DICT\n"
+"  protocol) are\n"
+"\n"
+"        curl dict://dict.org/show:db\n"
+"        curl dict://dict.org/show:strat\n"
+"\n"
+, stdout);
+ fputs(
+"  Authentication is still missing (but this is not required by the RFC)\n"
+"\n"
+"LDAP\n"
+"\n"
+"  If you have installed the OpenLDAP library, curl can take advantage of it\n"
+"  and offer ldap:// support.\n"
+"  On Windows, curl will use WinLDAP from Platform SDK by default.\n"
+"\n"
+"  Default protocol version used by curl is LDAPv3. LDAPv2 will be used as\n"
+"  fallback mechanism in case if LDAPv3 will fail to connect.\n"
+"\n"
+"  LDAP is a complex thing and writing an LDAP query is not an easy task. I do\n"
+, stdout);
+ fputs(
+"  advise you to dig up the syntax description for that elsewhere. One such\n"
+"  place might be:\n"
+"\n"
+"  RFC 2255, \"The LDAP URL Format\" https://curl.haxx.se/rfc/rfc2255.txt\n"
+"\n"
+"  To show you an example, this is how I can get all people from my local LDAP\n"
+"  server that has a certain sub-domain in their email address:\n"
+"\n"
+"        curl -B \"ldap://ldap.frontec.se/o=frontec??sub?mail=*sth.frontec.se\"\n"
+"\n"
+"  If I want the same info in HTML format, I can get it by not using the -B\n"
+"  (enforce ASCII) flag.\n"
+"\n"
+, stdout);
+ fputs(
+"  You also can use authentication when accessing LDAP catalog:\n"
+"\n"
+"      curl -u user:passwd \"ldap://ldap.frontec.se/o=frontec??sub?mail=*\"\n"
+"      curl \"ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*\"\n"
+"\n"
+"  By default, if user and password provided, OpenLDAP/WinLDAP will use basic\n"
+"  authentication. On Windows you can control this behavior by providing \n"
+"  one of --basic, --ntlm or --digest option in curl command line\n"
+"\n"
+, stdout);
+ fputs(
+"      curl --ntlm \"ldap://user:passwd@ldap.frontec.se/o=frontec??sub?mail=*\"\n"
+"\n"
+"  On Windows, if no user/password specified, auto-negotiation mechanism will\n"
+"  be used with current logon credentials (SSPI/SPNEGO).\n"
+"\n"
+"ENVIRONMENT VARIABLES\n"
+"\n"
+"  Curl reads and understands the following environment variables:\n"
+"\n"
+"        http_proxy, HTTPS_PROXY, FTP_PROXY\n"
+"\n"
+"  They should be set for protocol-specific proxies. General proxy should be\n"
+"  set with\n"
+"\n"
+"        ALL_PROXY\n"
+"\n"
+, stdout);
+ fputs(
+"  A comma-separated list of host names that shouldn't go through any proxy is\n"
+"  set in (only an asterisk, '*' matches all hosts)\n"
+"\n"
+"        NO_PROXY\n"
+"\n"
+"  If the host name matches one of these strings, or the host is within the\n"
+"  domain of one of these strings, transactions with that node will not be\n"
+"  proxied. When a domain is used, it needs to start with a period. A user can\n"
+"  specify that both www.example.com and foo.example.com should not uses a\n"
+, stdout);
+ fputs(
+"  proxy by setting NO_PROXY to \".example.com\". By including the full name you\n"
+"  can exclude specific host names, so to make www.example.com not use a proxy\n"
+"  but still have foo.example.com do it, set NO_PROXY to \"www.example.com\"\n"
+"\n"
+"  The usage of the -x/--proxy flag overrides the environment variables.\n"
+"\n"
+"NETRC\n"
+"\n"
+"  Unix introduced the .netrc concept a long time ago. It is a way for a user\n"
+"  to specify name and password for commonly visited FTP sites in a file so\n"
+, stdout);
+ fputs(
+"  that you don't have to type them in each time you visit those sites. You\n"
+"  realize this is a big security risk if someone else gets hold of your\n"
+"  passwords, so therefore most unix programs won't read this file unless it is\n"
+"  only readable by yourself (curl doesn't care though).\n"
+"\n"
+"  Curl supports .netrc files if told to (using the -n/--netrc and\n"
+"  --netrc-optional options). This is not restricted to just FTP,\n"
+"  so curl can use it for all protocols where authentication is used.\n"
+"\n"
+, stdout);
+ fputs(
+"  A very simple .netrc file could look something like:\n"
+"\n"
+"        machine curl.haxx.se login iamdaniel password mysecret\n"
+"\n"
+"CUSTOM OUTPUT\n"
+"\n"
+"  To better allow script programmers to get to know about the progress of\n"
+"  curl, the -w/--write-out option was introduced. Using this, you can specify\n"
+"  what information from the previous transfer you want to extract.\n"
+"\n"
+"  To display the amount of bytes downloaded together with some text and an\n"
+"  ending newline:\n"
+"\n"
+, stdout);
+ fputs(
+"        curl -w 'We downloaded %{size_download} bytes\\n' www.download.com\n"
+"\n"
+"KERBEROS FTP TRANSFER\n"
+"\n"
+"  Curl supports kerberos4 and kerberos5/GSSAPI for FTP transfers. You need\n"
+"  the kerberos package installed and used at curl build time for it to be\n"
+"  available.\n"
+"\n"
+"  First, get the krb-ticket the normal way, like with the kinit/kauth tool.\n"
+"  Then use curl in way similar to:\n"
+"\n"
+"        curl --krb private ftp://krb4site.com -u username:fakepwd\n"
+"\n"
+, stdout);
+ fputs(
+"  There's no use for a password on the -u switch, but a blank one will make\n"
+"  curl ask for one and you already entered the real password to kinit/kauth.\n"
+"\n"
+"TELNET\n"
+"\n"
+"  The curl telnet support is basic and very easy to use. Curl passes all data\n"
+"  passed to it on stdin to the remote server. Connect to a remote telnet\n"
+"  server using a command line similar to:\n"
+"\n"
+"        curl telnet://remote.server.com\n"
+"\n"
+"  And enter the data to pass to the server on stdin. The result will be sent\n"
+, stdout);
+ fputs(
+"  to stdout or to the file you specify with -o.\n"
+"\n"
+"  You might want the -N/--no-buffer option to switch off the buffered output\n"
+"  for slow connections or similar.\n"
+"\n"
+"  Pass options to the telnet protocol negotiation, by using the -t option. To\n"
+"  tell the server we use a vt100 terminal, try something like:\n"
+"\n"
+"        curl -tTTYPE=vt100 telnet://remote.server.com\n"
+"\n"
+"  Other interesting options for it -t include:\n"
+"\n"
+"   - XDISPLOC=<X display> Sets the X display location.\n"
+"\n"
+, stdout);
+ fputs(
+"   - NEW_ENV=<var,val> Sets an environment variable.\n"
+"\n"
+"  NOTE: The telnet protocol does not specify any way to login with a specified\n"
+"  user and password so curl can't do that automatically. To do that, you need\n"
+"  to track when the login prompt is received and send the username and\n"
+"  password accordingly.\n"
+"\n"
+"PERSISTENT CONNECTIONS\n"
+"\n"
+"  Specifying multiple files on a single command line will make curl transfer\n"
+"  all of them, one after the other in the specified order.\n"
+"\n"
+, stdout);
+ fputs(
+"  libcurl will attempt to use persistent connections for the transfers so that\n"
+"  the second transfer to the same host can use the same connection that was\n"
+"  already initiated and was left open in the previous transfer. This greatly\n"
+"  decreases connection time for all but the first transfer and it makes a far\n"
+"  better use of the network.\n"
+"\n"
+"  Note that curl cannot use persistent connections for transfers that are used\n"
+"  in subsequence curl invokes. Try to stuff as many URLs as possible on the\n"
+, stdout);
+ fputs(
+"  same command line if they are using the same host, as that'll make the\n"
+"  transfers faster. If you use an HTTP proxy for file transfers, practically\n"
+"  all transfers will be persistent.\n"
+"\n"
+"MULTIPLE TRANSFERS WITH A SINGLE COMMAND LINE\n"
+"\n"
+"  As is mentioned above, you can download multiple files with one command line\n"
+"  by simply adding more URLs. If you want those to get saved to a local file\n"
+"  instead of just printed to stdout, you need to add one save option for each\n"
+, stdout);
+ fputs(
+"  URL you specify. Note that this also goes for the -O option (but not\n"
+"  --remote-name-all).\n"
+"\n"
+"  For example: get two files and use -O for the first and a custom file\n"
+"  name for the second:\n"
+"\n"
+"    curl -O http://url.com/file.txt ftp://ftp.com/moo.exe -o moo.jpg\n"
+"\n"
+"  You can also upload multiple files in a similar fashion:\n"
+"\n"
+"    curl -T local1 ftp://ftp.com/moo.exe -T local2 ftp://ftp.com/moo2.txt\n"
+"\n"
+"IPv6\n"
+"\n"
+"  curl will connect to a server with IPv6 when a host lookup returns an IPv6\n"
+, stdout);
+ fputs(
+"  address and fall back to IPv4 if the connection fails. The --ipv4 and --ipv6\n"
+"  options can specify which address to use when both are available. IPv6\n"
+"  addresses can also be specified directly in URLs using the syntax:\n"
+"\n"
+"    http://[2001:1890:1112:1::20]/overview.html\n"
+"\n"
+"  When this style is used, the -g option must be given to stop curl from\n"
+"  interpreting the square brackets as special globbing characters.  Link local\n"
+, stdout);
+ fputs(
+"  and site local addresses including a scope identifier, such as fe80::1234%1,\n"
+"  may also be used, but the scope portion must be numeric or match an existing\n"
+"  network interface on Linux and the percent character must be URL escaped. The\n"
+"  previous example in an SFTP URL might look like:\n"
+"\n"
+"    sftp://[fe80::1234%251]/\n"
+"\n"
+"  IPv6 addresses provided other than in URLs (e.g. to the --proxy, --interface\n"
+"  or --ftp-port options) should not be URL encoded.\n"
+"\n"
+"METALINK\n"
+"\n"
+, stdout);
+ fputs(
+"  Curl supports Metalink (both version 3 and 4 (RFC 5854) are supported), a way\n"
+"  to list multiple URIs and hashes for a file. Curl will make use of the mirrors\n"
+"  listed within for failover if there are errors (such as the file or server not\n"
+"  being available). It will also verify the hash of the file after the download\n"
+"  completes. The Metalink file itself is downloaded and processed in memory and\n"
+"  not stored in the local file system.\n"
+"\n"
+"  Example to use a remote Metalink file:\n"
+"\n"
+, stdout);
+ fputs(
+"    curl --metalink http://www.example.com/example.metalink\n"
+"\n"
+"  To use a Metalink file in the local file system, use FILE protocol (file://):\n"
+"\n"
+"    curl --metalink file://example.metalink\n"
+"\n"
+"  Please note that if FILE protocol is disabled, there is no way to use a local\n"
+"  Metalink file at the time of this writing. Also note that if --metalink and\n"
+"  --include are used together, --include will be ignored. This is because including\n"
+, stdout);
+ fputs(
+"  headers in the response will break Metalink parser and if the headers are included\n"
+"  in the file described in Metalink file, hash check will fail.\n"
+"\n"
+"MAILING LISTS\n"
+"\n"
+"  For your convenience, we have several open mailing lists to discuss curl,\n"
+"  its development and things relevant to this. Get all info at\n"
+"  https://curl.haxx.se/mail/. Some of the lists available are:\n"
+"\n"
+"  curl-users\n"
+"\n"
+"    Users of the command line tool. How to use it, what doesn't work, new\n"
+, stdout);
+ fputs(
+"    features, related tools, questions, news, installations, compilations,\n"
+"    running, porting etc.\n"
+"\n"
+"  curl-library\n"
+"\n"
+"    Developers using or developing libcurl. Bugs, extensions, improvements.\n"
+"\n"
+"  curl-announce\n"
+"\n"
+"    Low-traffic. Only receives announcements of new public versions. At worst,\n"
+"    that makes something like one or two mails per month, but usually only one\n"
+"    mail every second month.\n"
+"\n"
+"  curl-and-php\n"
+"\n"
+"    Using the curl functions in PHP. Everything curl with a PHP angle. Or PHP\n"
+, stdout);
+ fputs(
+"    with a curl angle.\n"
+"\n"
+"  curl-and-python\n"
+"\n"
+"    Python hackers using curl with or without the python binding pycurl.\n"
+"\n"
+"  Please direct curl questions, feature requests and trouble reports to one of\n"
+"  these mailing lists instead of mailing any individual.\n"
+, stdout) ;
+}
+#else /* !USE_MANUAL */
+/* built-in manual is disabled, blank function */
+#include "tool_hugehelp.h"
+void hugehelp(void) {}
+#endif /* USE_MANUAL */
+#else
+/*
+ * NEVER EVER edit this manually, fix the mkhelp.pl script instead!
+ * Generation time: Fri Jun  9 12:10:32 2017
+ */
+#ifdef USE_MANUAL
+#include "tool_hugehelp.h"
+#include <zlib.h>
+#include "memdebug.h" /* keep this as LAST include */
+static const unsigned char hugehelpgz[] = {
+  /* This mumbo-jumbo is the huge help text compressed with gzip.
+     Thanks to this operation, the size of this data shrank from 188613
+     to 55461 bytes. You can disable the use of compressed help
+     texts by NOT passing -c to the mkhelp.pl tool. */
+  0x1f, 0x8b, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xed, 0xfd,
+  0x6b, 0x5b, 0x24, 0x47, 0x92, 0x26, 0x80, 0x7e, 0xe7, 0x57, 0x44, 0xd3,
+  0xa7, 0x07, 0x98, 0xce, 0x4c, 0x2e, 0x75, 0x91, 0x8a, 0xae, 0xd2, 0x34,
+  0xa2, 0x28, 0x89, 0x11, 0x05, 0x2c, 0x49, 0x49, 0xea, 0x95, 0xf4, 0xd4,
+  0x13, 0x99, 0x19, 0x40, 0x34, 0x99, 0x11, 0xd9, 0x11, 0x91, 0x50, 0xf4,
+  0x6c, 0xef, 0x6f, 0x3f, 0x6e, 0xaf, 0x99, 0xb9, 0x7b, 0x84, 0x7b, 0x26,
+  0x48, 0x2d, 0xf5, 0xce, 0x39, 0xbb, 0x73, 0x51, 0x55, 0x41, 0x84, 0x87,
+  0x5f, 0xcd, 0xed, 0xf2, 0xda, 0x6b, 0x49, 0xf2, 0xd8, 0xff, 0x7c, 0xc4,
+  0xff, 0x7f, 0x34, 0xff, 0x63, 0xfe, 0x5c, 0x4b, 0x92, 0xf3, 0xaa, 0xfc,
+  0x6b, 0x36, 0x6e, 0xe2, 0xcf, 0x7e, 0xfc, 0xf8, 0xbf, 0x12, 0xfe, 0x5f,
+  0xf3, 0xce, 0x8f, 0xe6, 0xcf, 0xb5, 0x95, 0x6d, 0x6f, 0x27, 0xee, 0x85,
+  0xff, 0xf5, 0x71, 0x2b, 0x79, 0xec, 0x85, 0xff, 0x95, 0x6c, 0xe2, 0x85,
+  0x8f, 0xf2, 0x85, 0xd7, 0xf4, 0xf7, 0x8f, 0x1f, 0x57, 0x7f, 0xe4, 0x47,
+  0xea, 0x15, 0xfd, 0x67, 0x9b, 0xde, 0xfb, 0xf1, 0x23, 0xfd, 0xd5, 0xfc,
+  0x64, 0x6d, 0xed, 0xf4, 0xe0, 0xfd, 0x91, 0xbe, 0x3a, 0x5e, 0x54, 0xd3,
+  0xa4, 0x9f, 0x34, 0x55, 0x5a, 0xd4, 0x57, 0x59, 0x95, 0xa4, 0xc9, 0x87,
+  0x8b, 0x93, 0xb5, 0xb5, 0xe1, 0x5f, 0x4e, 0xcf, 0xce, 0x87, 0xc7, 0xc3,
+  0xd6, 0x63, 0x3f, 0x94, 0xf3, 0x26, 0x2f, 0x8b, 0xfa, 0xa7, 0xe4, 0x07,
+  0xf3, 0xd0, 0x60, 0x30, 0xf8, 0x69, 0x6d, 0xed, 0xed, 0xd1, 0xf0, 0xf0,
+  0xe2, 0xf8, 0xfc, 0xf2, 0xf8, 0xec, 0xb4, 0xf5, 0x6c, 0x92, 0xd7, 0x89,
+  0x69, 0xac, 0x29, 0xcb, 0xa9, 0xf9, 0x8f, 0x6b, 0x7f, 0x92, 0x36, 0x69,
+  0x72, 0x55, 0x95, 0xb3, 0xa4, 0xac, 0xe8, 0x17, 0x69, 0x52, 0x67, 0xd5,
+  0x5d, 0x56, 0xf5, 0x92, 0x45, 0x9d, 0x17, 0xd7, 0x49, 0x59, 0x64, 0x49,
+  0x79, 0x95, 0x34, 0x37, 0x99, 0x36, 0x57, 0x2f, 0xe6, 0xf3, 0xb2, 0x6a,
+  0xb2, 0x49, 0x32, 0xaf, 0xca, 0xa6, 0x1c, 0x97, 0xd3, 0x3a, 0xd9, 0x7c,
+  0x7b, 0x7c, 0x78, 0xd9, 0x4b, 0xde, 0x1d, 0x9f, 0x1c, 0x99, 0xff, 0x5e,
+  0x9e, 0xe3, 0x3f, 0xc3, 0x5e, 0xf2, 0xd5, 0xd9, 0xf9, 0xd7, 0x47, 0x17,
+  0xbd, 0xe4, 0xeb, 0x4b, 0xfa, 0x19, 0xfd, 0xd7, 0xfc, 0x30, 0x39, 0x7e,
+  0x7f, 0x70, 0xde, 0xd3, 0xe6, 0xe8, 0x1f, 0xf4, 0xc3, 0x93, 0xb7, 0xe6,
+  0x87, 0xfc, 0x07, 0xfd, 0xf3, 0xfc, 0xec, 0xfc, 0x99, 0xfc, 0x41, 0xff,
+  0xbc, 0xb8, 0x7c, 0x6f, 0x7e, 0x7b, 0x71, 0x39, 0x34, 0xff, 0x1d, 0x1e,
+  0xd2, 0x7f, 0xf0, 0x95, 0xe1, 0xfb, 0x2f, 0xf1, 0x9f, 0xa1, 0x6d, 0x6e,
+  0xf8, 0x9e, 0x7f, 0x8e, 0x2f, 0x5d, 0x1e, 0x9d, 0x9c, 0x1e, 0x5d, 0x26,
+  0x69, 0x31, 0x49, 0x2e, 0xcd, 0xf3, 0x5b, 0x83, 0xe4, 0xf2, 0x26, 0x4b,
+  0xc6, 0xe5, 0x6c, 0x46, 0x3f, 0x32, 0x33, 0x32, 0xc9, 0xea, 0xfc, 0xba,
+  0x30, 0x43, 0x31, 0x23, 0xbf, 0x2f, 0xab, 0xdb, 0x24, 0xb9, 0xcf, 0x9b,
+  0x9b, 0x72, 0xd1, 0x68, 0x73, 0x0b, 0x33, 0x1b, 0x49, 0x5e, 0x34, 0x59,
+  0x95, 0x8e, 0x69, 0xae, 0x07, 0x6b, 0xad, 0x59, 0x2d, 0xaf, 0xcc, 0x1c,
+  0xd6, 0x66, 0xd2, 0x46, 0x8b, 0x7a, 0x5a, 0xa6, 0x13, 0x9a, 0x2a, 0xf3,
+  0xca, 0xd5, 0xc2, 0x4c, 0x72, 0x95, 0x8f, 0x6f, 0xeb, 0x64, 0x9a, 0xdf,
+  0x66, 0x34, 0x51, 0x9f, 0x1e, 0x74, 0xe2, 0x7a, 0xdc, 0x68, 0xba, 0x30,
+  0x73, 0x5a, 0xf4, 0xb5, 0xb9, 0x26, 0x1f, 0xa7, 0xf4, 0x01, 0xcc, 0x5c,
+  0xb2, 0x98, 0x53, 0x6b, 0x3c, 0x63, 0xc9, 0xbc, 0xac, 0xcd, 0x4b, 0xc3,
+  0xe1, 0x89, 0xe9, 0x79, 0x51, 0x64, 0xe8, 0x47, 0xdd, 0x33, 0xff, 0x28,
+  0x6f, 0xf3, 0xcc, 0xfc, 0xe5, 0x2a, 0x9f, 0x66, 0x09, 0xaf, 0xa8, 0x6d,
+  0x8e, 0x96, 0x36, 0xa9, 0xb2, 0x7a, 0x31, 0xcb, 0xcc, 0xec, 0xbd, 0xcf,
+  0x9a, 0x74, 0x9a, 0x17, 0xb7, 0xe6, 0xaf, 0x34, 0xf0, 0x59, 0x59, 0x65,
+  0x83, 0xe4, 0xa0, 0x4e, 0x1e, 0xca, 0x85, 0x19, 0xf0, 0x74, 0x6a, 0xd6,
+  0x3c, 0x4b, 0x46, 0xd9, 0xb4, 0xbc, 0xef, 0xd1, 0x4a, 0x27, 0xc5, 0x62,
+  0x36, 0x32, 0x0d, 0x94, 0x57, 0xae, 0xb9, 0xb4, 0x59, 0x98, 0xe6, 0xf8,
+  0xe9, 0x59, 0x6a, 0xc6, 0x64, 0xde, 0xad, 0x92, 0x9b, 0xcc, 0x8c, 0xb9,
+  0x9e, 0xe7, 0xc5, 0xef, 0xda, 0xf3, 0x62, 0xa6, 0x76, 0x5e, 0xde, 0x67,
+  0x95, 0x99, 0xd9, 0xd1, 0x43, 0x62, 0x26, 0x61, 0xc4, 0x9b, 0xf0, 0xca,
+  0x6c, 0xb2, 0x24, 0x35, 0x4d, 0xd8, 0x0d, 0xd8, 0xaf, 0xb2, 0x69, 0x4a,
+  0x9b, 0xc9, 0x7e, 0x63, 0x60, 0x16, 0x31, 0xb3, 0xbb, 0x4d, 0x5e, 0xdd,
+  0x7c, 0xb6, 0x85, 0x97, 0x27, 0x66, 0x24, 0xf9, 0xb4, 0x36, 0xcb, 0x40,
+  0xc7, 0x42, 0x9e, 0xa1, 0x45, 0xa5, 0x63, 0x62, 0xf6, 0xe6, 0x43, 0xd1,
+  0xa4, 0x9f, 0xf0, 0x79, 0xd9, 0x9b, 0xfd, 0x49, 0x36, 0xcf, 0x8a, 0x49,
+  0x56, 0x34, 0x83, 0xe4, 0x2f, 0xe5, 0x62, 0xc3, 0x7c, 0xfb, 0x2a, 0x37,
+  0x73, 0x90, 0x4a, 0x53, 0xe6, 0xcb, 0x66, 0x13, 0x8c, 0xab, 0x7c, 0xee,
+  0x2d, 0x45, 0x59, 0x98, 0x35, 0x4f, 0x2e, 0xde, 0x1d, 0x26, 0xcf, 0x5e,
+  0x7d, 0xfe, 0xd2, 0xad, 0xb9, 0x69, 0x20, 0x19, 0xa7, 0x85, 0x19, 0x71,
+  0x36, 0xce, 0xaf, 0x1e, 0x92, 0xd9, 0x62, 0xda, 0xe4, 0x73, 0x33, 0xfb,
+  0xe6, 0xe3, 0x35, 0x1d, 0xa0, 0x79, 0x5a, 0x35, 0x35, 0x6d, 0x02, 0xfc,
+  0x00, 0x63, 0xbf, 0xaf, 0xf2, 0x86, 0x0e, 0x12, 0x7e, 0x67, 0x7a, 0x98,
+  0x35, 0xb5, 0x36, 0x47, 0x7b, 0xcd, 0x7c, 0x67, 0x64, 0xf6, 0x96, 0x99,
+  0xda, 0xb4, 0x36, 0x1f, 0xdd, 0x5f, 0x73, 0x32, 0xe4, 0xa6, 0x69, 0xe6,
+  0xfb, 0xdb, 0xdb, 0x75, 0xde, 0x64, 0x83, 0xff, 0x32, 0xe7, 0xb0, 0xd7,
+  0xdc, 0x97, 0xbd, 0xe6, 0xa6, 0xca, 0xb2, 0x7f, 0x0c, 0xcc, 0x1e, 0xb6,
+  0x4f, 0x9a, 0xef, 0x3e, 0x48, 0xc7, 0xae, 0xb3, 0xc6, 0x7c, 0xe1, 0x6f,
+  0x8b, 0xac, 0xa0, 0x16, 0x4d, 0x3f, 0xd2, 0xe9, 0xfc, 0x26, 0x35, 0xcb,
+  0x99, 0x99, 0xdd, 0x48, 0x27, 0xdb, 0x6c, 0x18, 0xea, 0x15, 0x9f, 0xed,
+  0x1f, 0x7e, 0x0a, 0x3f, 0x7a, 0x85, 0x6f, 0x9a, 0xff, 0x0e, 0xb2, 0x4f,
+  0xe9, 0xcc, 0x8c, 0x8d, 0x3e, 0xb5, 0x4d, 0x5b, 0xec, 0x87, 0xdd, 0xfe,
+  0xee, 0xce, 0xce, 0x4f, 0x83, 0xe6, 0x53, 0xf3, 0xb4, 0xe7, 0x77, 0x76,
+  0xdc, 0x1b, 0xf4, 0xe8, 0x26, 0x8d, 0x37, 0x99, 0x9a, 0x2d, 0x43, 0x1f,
+  0xff, 0x7b, 0x56, 0x95, 0xf5, 0xd6, 0xd3, 0x5a, 0x4a, 0xfb, 0x7f, 0x6f,
+  0x7f, 0xf7, 0x34, 0xab, 0xb1, 0x67, 0xdc, 0x58, 0x93, 0xb4, 0x32, 0xfb,
+  0xb6, 0x6c, 0x9c, 0x78, 0xea, 0x99, 0x43, 0xd9, 0xd8, 0x99, 0x31, 0x67,
+  0xce, 0x3c, 0x6d, 0x04, 0x5b, 0x3a, 0x25, 0x99, 0x56, 0x27, 0x45, 0xf6,
+  0xc9, 0x9e, 0x72, 0x73, 0xfa, 0xb3, 0x74, 0x7c, 0x93, 0x94, 0x66, 0xf3,
+  0x57, 0x91, 0x25, 0xf0, 0x3b, 0x94, 0x56, 0xe3, 0x9b, 0xfc, 0xce, 0xcc,
+  0xc6, 0xab, 0x57, 0x2f, 0xfb, 0xe6, 0x3f, 0xaf, 0x7e, 0xda, 0xbe, 0x2b,
+  0xa7, 0x66, 0x72, 0x9e, 0xff, 0xb4, 0x4d, 0x4b, 0xfc, 0x5f, 0x69, 0x6f,
+  0xd4, 0x1b, 0xff, 0x63, 0x70, 0xd3, 0xcc, 0xa6, 0x4b, 0x37, 0x4e, 0x5a,
+  0x98, 0xff, 0x9f, 0x95, 0x8b, 0xa2, 0xb1, 0x9b, 0xc5, 0xec, 0xb9, 0xc6,
+  0x13, 0x4e, 0xe6, 0xb8, 0x9a, 0x33, 0x4a, 0x5b, 0x9b, 0xf6, 0x10, 0x9d,
+  0x3a, 0x73, 0x40, 0xdd, 0x71, 0x6c, 0xc6, 0x37, 0x66, 0xfc, 0x66, 0xf3,
+  0xa4, 0x32, 0x07, 0x4d, 0x9e, 0xd2, 0xc1, 0x34, 0xf2, 0x81, 0xe4, 0x15,
+  0x9a, 0xe2, 0x8f, 0xe5, 0xe6, 0xb9, 0xb2, 0x9a, 0x64, 0x55, 0x7b, 0x1b,
+  0xa3, 0x3b, 0xae, 0x3f, 0x89, 0x99, 0xcf, 0xb9, 0xf9, 0xf8, 0x82, 0x44,
+  0x1d, 0x4e, 0x1a, 0xb5, 0x60, 0xce, 0xe8, 0xb5, 0x99, 0x2a, 0x33, 0x3d,
+  0xb4, 0xb1, 0x68, 0xf6, 0x1e, 0x92, 0x53, 0xb3, 0x86, 0x2c, 0x1f, 0xbc,
+  0xfd, 0x37, 0xcd, 0x9a, 0xe6, 0xd1, 0x99, 0x73, 0x9b, 0x68, 0x7f, 0x37,
+  0xd8, 0x47, 0xcb, 0x9e, 0x37, 0x4b, 0xbf, 0xbf, 0xd7, 0x7e, 0xf8, 0x3b,
+  0x23, 0x37, 0xdd, 0x0e, 0x36, 0x5f, 0xff, 0xaf, 0x7f, 0x78, 0x1b, 0xe1,
+  0x9e, 0x7e, 0x9b, 0x17, 0x77, 0xe5, 0xad, 0x19, 0x38, 0x2e, 0xb6, 0xb4,
+  0x35, 0xa9, 0x09, 0x89, 0x86, 0xd9, 0xbc, 0xb1, 0x37, 0x06, 0xed, 0x10,
+  0xf3, 0xa3, 0x51, 0x3a, 0x9a, 0x3e, 0x24, 0x37, 0xe9, 0x5d, 0x46, 0xe3,
+  0x9d, 0x9b, 0xad, 0x43, 0x33, 0x60, 0x24, 0xf9, 0x14, 0xa2, 0x45, 0xce,
+  0xea, 0xa4, 0x5c, 0x8c, 0xcc, 0x79, 0xff, 0xdb, 0xa2, 0x6c, 0x78, 0x62,
+  0xd2, 0xbb, 0x32, 0x9f, 0xb4, 0xae, 0xc7, 0x9b, 0x8c, 0x64, 0x0c, 0x7d,
+  0x18, 0xf7, 0x86, 0x91, 0x71, 0xd4, 0x53, 0xec, 0xfd, 0xbc, 0xa1, 0x1b,
+  0xc8, 0x48, 0xa7, 0x74, 0x5a, 0x97, 0x49, 0x72, 0x5d, 0xd2, 0xc6, 0x85,
+  0x4c, 0xc4, 0xce, 0x33, 0x8b, 0x72, 0x93, 0xd2, 0x45, 0x63, 0xee, 0x14,
+  0xbb, 0x35, 0xab, 0x0c, 0xe2, 0x11, 0x2b, 0x95, 0x4e, 0x7b, 0x7c, 0xa1,
+  0xd0, 0x3b, 0x32, 0x55, 0xc9, 0xc6, 0xbf, 0x6d, 0xf4, 0x92, 0x8d, 0xff,
+  0xd8, 0x80, 0x68, 0xdf, 0xf8, 0xf7, 0x0d, 0xb7, 0xce, 0x46, 0x43, 0xba,
+  0xcb, 0x27, 0x74, 0x37, 0x98, 0x91, 0x1c, 0x9f, 0xdf, 0xbd, 0x4c, 0xfe,
+  0x4e, 0xd7, 0xb9, 0x11, 0x7f, 0xd9, 0x27, 0xdd, 0x24, 0x3a, 0x36, 0xf3,
+  0x76, 0x62, 0xe4, 0x60, 0x3a, 0xa7, 0x7b, 0x3d, 0xab, 0xc6, 0x66, 0x47,
+  0xa5, 0xd7, 0x66, 0x0f, 0x99, 0xeb, 0x51, 0x9b, 0xa3, 0xf6, 0xe9, 0x15,
+  0x1e, 0x96, 0x91, 0x59, 0x49, 0x91, 0xce, 0xcc, 0x26, 0x3d, 0xa1, 0x1e,
+  0xe5, 0x45, 0xb8, 0x98, 0x3f, 0x5c, 0x65, 0x9f, 0xef, 0xec, 0xef, 0x3f,
+  0xfb, 0xc3, 0xde, 0x8b, 0xac, 0xb9, 0xd9, 0xf9, 0x69, 0xdb, 0x3e, 0x72,
+  0x7c, 0x85, 0x69, 0xd7, 0xed, 0xa7, 0x9d, 0x30, 0x17, 0xaf, 0x15, 0xdc,
+  0xe6, 0x7d, 0xf3, 0xf7, 0xec, 0x2a, 0xff, 0xd4, 0x53, 0x15, 0x86, 0x8f,
+  0x41, 0x6a, 0xb6, 0x9a, 0x59, 0x3f, 0x3a, 0xb5, 0xda, 0xdc, 0xf5, 0x22,
+  0xab, 0xcd, 0x4c, 0xde, 0xdf, 0xa4, 0x4d, 0x62, 0x1b, 0xe0, 0x95, 0x9d,
+  0xe5, 0xd7, 0x37, 0x4d, 0x72, 0x9f, 0x92, 0xfc, 0x3f, 0x6e, 0xb8, 0x09,
+  0xba, 0x78, 0x8d, 0xd4, 0xbf, 0x4a, 0x8d, 0xf8, 0xa6, 0x35, 0xc4, 0x2d,
+  0x3b, 0x72, 0x97, 0x7e, 0x63, 0xb6, 0x39, 0x2f, 0x88, 0xd3, 0x70, 0x46,
+  0x69, 0x4d, 0x07, 0xa9, 0x30, 0xe7, 0xb5, 0x31, 0xd7, 0xf6, 0x82, 0xfe,
+  0x75, 0x63, 0x2e, 0x66, 0xcc, 0x81, 0x74, 0x14, 0x77, 0xd7, 0x3b, 0x5a,
+  0x4e, 0x5a, 0x1b, 0x7b, 0x9f, 0x98, 0x45, 0xea, 0xc9, 0x32, 0xdb, 0x37,
+  0x6a, 0x73, 0xe0, 0x8c, 0xb0, 0xb0, 0x3b, 0x63, 0x9d, 0xe4, 0xde, 0x3a,
+  0x8f, 0x13, 0x7d, 0x4c, 0x6b, 0xba, 0xbb, 0xf9, 0x86, 0x36, 0x9d, 0xf7,
+  0x06, 0x6b, 0x26, 0x2d, 0xbd, 0x25, 0x2d, 0xa1, 0xa3, 0x8b, 0xe0, 0xb5,
+  0x49, 0x69, 0x36, 0x99, 0xe9, 0xad, 0x91, 0x8f, 0x34, 0x32, 0x92, 0x7a,
+  0x98, 0x15, 0x6c, 0x72, 0xd3, 0x26, 0xfd, 0x30, 0x6f, 0x48, 0xec, 0x43,
+  0xb1, 0x34, 0xfd, 0x35, 0x93, 0x02, 0xdd, 0xd0, 0xc8, 0x4e, 0x6f, 0xfc,
+  0xb8, 0xb1, 0xcc, 0xb3, 0xc9, 0x9d, 0x51, 0x1c, 0x8c, 0x8e, 0x98, 0xd9,
+  0xb7, 0x70, 0xc5, 0x8e, 0x49, 0x5d, 0x99, 0x9a, 0xf3, 0x32, 0x2e, 0xab,
+  0x8a, 0x94, 0x70, 0x5a, 0xc1, 0x11, 0xcb, 0xb5, 0x59, 0x66, 0x6e, 0x76,
+  0x7f, 0x3a, 0x73, 0xba, 0x63, 0x8c, 0x7c, 0x31, 0xaa, 0x02, 0x24, 0x88,
+  0xb9, 0xd2, 0x21, 0x86, 0x31, 0x70, 0xf4, 0x8e, 0xda, 0x1e, 0x8f, 0xb3,
+  0x79, 0x53, 0xc7, 0xc6, 0xa4, 0x0b, 0x6e, 0xba, 0x53, 0x65, 0x34, 0xf3,
+  0xbe, 0x1e, 0x84, 0x79, 0xb5, 0xf7, 0x30, 0x54, 0x21, 0x55, 0x2d, 0x8c,
+  0x6a, 0x54, 0xdb, 0x59, 0x6b, 0xb0, 0x37, 0x8c, 0x18, 0xc3, 0x9c, 0xcf,
+  0xa8, 0xa3, 0xf4, 0x70, 0xcd, 0x27, 0x15, 0xe2, 0x92, 0x16, 0x92, 0x95,
+  0x5f, 0xfe, 0x2e, 0xdd, 0x26, 0x66, 0x3e, 0x6d, 0xe3, 0xe6, 0xab, 0x76,
+  0x4d, 0xe9, 0xf3, 0xb5, 0x31, 0x1b, 0xcc, 0xe5, 0x3a, 0xa9, 0x6f, 0x8c,
+  0x3e, 0x54, 0xcb, 0xc9, 0xce, 0x67, 0x66, 0xcf, 0xdc, 0xd1, 0xfa, 0xce,
+  0xb3, 0x6c, 0x32, 0x48, 0xce, 0xae, 0x48, 0xaa, 0x56, 0xa6, 0xd3, 0x0d,
+  0x7e, 0x4d, 0x82, 0xde, 0xcc, 0xdb, 0x04, 0x7a, 0xb5, 0x3d, 0x5a, 0xdc,
+  0x15, 0x4f, 0x62, 0xd3, 0x4e, 0x33, 0x93, 0x9d, 0x90, 0x94, 0x9b, 0xb6,
+  0x6f, 0x05, 0x9c, 0x43, 0x23, 0xbd, 0xa9, 0x7b, 0xa3, 0x2c, 0xc1, 0x4e,
+  0x1c, 0x65, 0xcd, 0x7d, 0x96, 0xd9, 0xe6, 0xea, 0xcc, 0xdc, 0x44, 0xb4,
+  0x68, 0xac, 0x8c, 0x41, 0x18, 0xd2, 0xd4, 0x9e, 0x5f, 0x9c, 0x7d, 0x75,
+  0x71, 0x34, 0x1c, 0x26, 0xef, 0x8f, 0x2e, 0x8f, 0x2e, 0x5a, 0x33, 0x5d,
+  0x94, 0xd5, 0x0c, 0x2b, 0x3a, 0xc9, 0xeb, 0xf9, 0x34, 0x7d, 0xa0, 0xa5,
+  0x36, 0x23, 0xb9, 0xae, 0xe8, 0x64, 0xcd, 0x32, 0xba, 0x15, 0x26, 0x0b,
+  0x48, 0xb2, 0xa4, 0x34, 0xf2, 0x21, 0x15, 0x25, 0x94, 0x84, 0x09, 0x34,
+  0xd7, 0xe2, 0xda, 0xcd, 0xb4, 0x91, 0x38, 0x72, 0xb9, 0xd1, 0xed, 0x66,
+  0xd7, 0x83, 0xb4, 0x41, 0xd8, 0x1b, 0x3d, 0xf7, 0x33, 0x9e, 0xa6, 0x1a,
+  0x63, 0x32, 0x7b, 0x36, 0x9f, 0x41, 0xd8, 0x99, 0x3f, 0x9d, 0x02, 0x98,
+  0x5d, 0x19, 0xed, 0xd7, 0x5c, 0x78, 0xac, 0xbc, 0x77, 0xfb, 0xa4, 0xbd,
+  0xb5, 0x2a, 0xab, 0xd9, 0x86, 0x24, 0x9a, 0xa9, 0x41, 0xee, 0x0a, 0x7f,
+  0xc1, 0x0a, 0x31, 0xa3, 0x26, 0x90, 0xec, 0x93, 0xc7, 0xe6, 0xd4, 0x85,
+  0xcc, 0xac, 0xec, 0x84, 0x9b, 0xaf, 0x17, 0x57, 0x38, 0xc8, 0xc9, 0xa6,
+  0x51, 0x96, 0xdf, 0x1b, 0x03, 0xc6, 0x18, 0x11, 0xbd, 0xe4, 0x7c, 0x0b,
+  0xef, 0xed, 0xee, 0xec, 0x3d, 0x67, 0x41, 0x30, 0xd0, 0xe6, 0xde, 0x79,
+  0x82, 0x78, 0xf7, 0x96, 0x96, 0x97, 0x1f, 0xa2, 0xc6, 0x07, 0xc9, 0xee,
+  0x7b, 0xfe, 0xc9, 0xf3, 0xcf, 0x5f, 0x7c, 0xf6, 0x52, 0x7e, 0xd8, 0xde,
+  0xe0, 0xb6, 0xff, 0xd8, 0x1d, 0x30, 0xc6, 0xc8, 0x3a, 0x33, 0x3d, 0x31,
+  0xa3, 0x9b, 0xe5, 0x85, 0x39, 0x26, 0xe6, 0x58, 0x89, 0xac, 0xa2, 0xfd,
+  0x6c, 0x3a, 0x7f, 0xc5, 0x92, 0x4d, 0xd6, 0xb5, 0x6d, 0xe5, 0x99, 0x97,
+  0xcd, 0x96, 0x35, 0xb2, 0xdc, 0x2e, 0x12, 0x66, 0xc2, 0x1c, 0x30, 0xba,
+  0x75, 0x46, 0x24, 0x60, 0xc9, 0xd4, 0x31, 0x3a, 0x69, 0x16, 0xfd, 0x9a,
+  0xbd, 0x15, 0xcd, 0x1b, 0xa6, 0x6f, 0xe6, 0x4e, 0xa4, 0x6b, 0x2e, 0x9c,
+  0x77, 0x23, 0x0a, 0x20, 0x21, 0xef, 0xf3, 0x1a, 0xa2, 0xe1, 0xbe, 0x5c,
+  0x4c, 0x8d, 0x61, 0x41, 0x0f, 0x2c, 0xe6, 0x78, 0xc1, 0x7c, 0x6a, 0xee,
+  0x64, 0xc0, 0x2c, 0xff, 0x44, 0x7b, 0xa7, 0xdb, 0x8a, 0xe9, 0x9a, 0xf9,
+  0xe7, 0xdc, 0x6c, 0x25, 0xee, 0xce, 0xa0, 0x7b, 0x43, 0x40, 0xf6, 0x05,
+  0x3b, 0x91, 0xce, 0x3c, 0x84, 0xf6, 0xf9, 0xd9, 0xf0, 0x92, 0x34, 0x80,
+  0xf3, 0x0f, 0x97, 0xa6, 0x21, 0xa3, 0x02, 0xd4, 0x8d, 0xd9, 0x94, 0xf4,
+  0x62, 0x91, 0xc1, 0xaa, 0xd3, 0xe6, 0xcc, 0xde, 0xcb, 0x21, 0xa8, 0xa0,
+  0xd6, 0xe8, 0x27, 0xb9, 0x8f, 0x6c, 0xf6, 0xd2, 0x11, 0x54, 0xa3, 0x97,
+  0xef, 0x70, 0xfb, 0x4e, 0xb2, 0xf9, 0xc5, 0x96, 0xd9, 0xb3, 0xfd, 0xd2,
+  0xce, 0x4e, 0xbf, 0x2f, 0xaf, 0x9a, 0x6f, 0xd7, 0xf9, 0x2c, 0x9f, 0xa6,
+  0x9e, 0x7a, 0x25, 0x12, 0x95, 0xce, 0xa7, 0x95, 0x2b, 0x63, 0xb3, 0x6b,
+  0xd0, 0x6d, 0x67, 0xdd, 0xd1, 0x1c, 0x42, 0x2a, 0xb9, 0xa5, 0x9a, 0x90,
+  0x42, 0x00, 0x25, 0x76, 0x9e, 0xdb, 0xa9, 0xa3, 0x35, 0x23, 0x71, 0xd5,
+  0x9a, 0xa8, 0xee, 0xba, 0x05, 0x13, 0x47, 0x37, 0x12, 0xdc, 0x07, 0x76,
+  0xea, 0x92, 0xf5, 0x51, 0x5a, 0xad, 0x27, 0x56, 0x16, 0xf3, 0xd9, 0xa4,
+  0x13, 0x52, 0x65, 0xd7, 0x0b, 0x33, 0x82, 0x84, 0x67, 0x97, 0x46, 0xfa,
+  0x7b, 0x6f, 0xa4, 0xda, 0x40, 0x7f, 0x44, 0x8f, 0xe4, 0x35, 0x5b, 0x7e,
+  0x57, 0xc6, 0x94, 0xa0, 0x43, 0xa3, 0x9a, 0x2d, 0x34, 0x1a, 0xd9, 0x31,
+  0x91, 0x0d, 0x63, 0x77, 0x69, 0x49, 0x47, 0xa5, 0xc9, 0x8c, 0xa0, 0x81,
+  0xf8, 0xa7, 0x27, 0xfb, 0x66, 0xc9, 0xfa, 0xfd, 0xda, 0xcc, 0x3f, 0xa9,
+  0xc3, 0x73, 0x31, 0xb3, 0xcf, 0xe0, 0xc3, 0xb0, 0x0e, 0x8f, 0x33, 0x76,
+  0x75, 0xf0, 0xb5, 0xc9, 0xef, 0x42, 0x84, 0x1a, 0x45, 0xf5, 0xde, 0x7c,
+  0x38, 0x35, 0x4b, 0x66, 0x0e, 0xdc, 0x7b, 0x9a, 0x28, 0x76, 0x57, 0x24,
+  0xd2, 0x54, 0x9d, 0x60, 0x67, 0xe4, 0x74, 0xee, 0x53, 0xa7, 0xcb, 0x4c,
+  0x26, 0x39, 0xfd, 0xd6, 0x9c, 0x2f, 0x73, 0xc3, 0x2d, 0x32, 0x98, 0x03,
+  0x32, 0xa9, 0x33, 0x37, 0x99, 0xb0, 0x2c, 0xeb, 0x9b, 0x92, 0x2c, 0xb7,
+  0x75, 0x96, 0xc5, 0x7d, 0xfa, 0xd6, 0x3a, 0xee, 0xf3, 0x59, 0xa2, 0xdf,
+  0x92, 0x4f, 0x99, 0x71, 0x4c, 0x7c, 0xdd, 0xac, 0x67, 0x2e, 0x9a, 0x07,
+  0x4f, 0x6f, 0x87, 0xac, 0xe6, 0xbe, 0x57, 0x56, 0xe1, 0x31, 0x57, 0xea,
+  0x9c, 0x94, 0x29, 0x91, 0xe1, 0xb8, 0x0c, 0x71, 0x64, 0x6b, 0xee, 0x5a,
+  0xcf, 0xcc, 0x2d, 0x3d, 0x79, 0x7d, 0xa3, 0x8f, 0x7a, 0x17, 0x6b, 0x6a,
+  0x06, 0x47, 0x97, 0x03, 0x99, 0xb8, 0x13, 0x95, 0xfb, 0x65, 0xc5, 0xc2,
+  0x6c, 0x5a, 0x9a, 0xbd, 0xbc, 0xce, 0x2a, 0xab, 0x74, 0x9b, 0x7a, 0x4d,
+  0xbd, 0xa4, 0x19, 0x67, 0xd7, 0x4f, 0x69, 0xd7, 0xc6, 0x76, 0x5a, 0xe6,
+  0xab, 0x7e, 0xb4, 0x6b, 0x6e, 0xa2, 0x86, 0x98, 0x23, 0x73, 0x75, 0xd6,
+  0xb4, 0x8f, 0x75, 0xe6, 0xb1, 0xbd, 0xcd, 0x55, 0xb7, 0xd1, 0xf0, 0x79,
+  0x84, 0xd9, 0xd3, 0x99, 0xf9, 0x1a, 0xdb, 0x47, 0x2e, 0x32, 0x3b, 0x32,
+  0x33, 0xa2, 0x49, 0x9e, 0x62, 0x9f, 0xf0, 0xd2, 0x40, 0x19, 0x71, 0x46,
+  0x5a, 0x44, 0x0f, 0x7e, 0xe8, 0xda, 0x58, 0xd3, 0xa9, 0x7f, 0x25, 0x69,
+  0x9f, 0xfa, 0x67, 0x66, 0xec, 0x27, 0x18, 0x47, 0xff, 0x2e, 0xa1, 0xe3,
+  0x67, 0xcc, 0x06, 0x3a, 0x8b, 0xfd, 0xb3, 0x93, 0x3b, 0xef, 0x18, 0x91,
+  0x31, 0x5d, 0x90, 0x9e, 0xd2, 0x83, 0xc3, 0x62, 0x54, 0x96, 0xc6, 0x72,
+  0x75, 0x43, 0xa3, 0xfb, 0x20, 0x2b, 0x68, 0xb7, 0xcb, 0x8a, 0x1a, 0x91,
+  0x30, 0xb7, 0xf2, 0xf6, 0xc1, 0x98, 0x4b, 0xe9, 0x75, 0x9a, 0xdb, 0xfd,
+  0x26, 0x27, 0x63, 0x92, 0xe8, 0xc3, 0x45, 0x29, 0xcf, 0xd3, 0x52, 0x91,
+  0x0a, 0x24, 0x72, 0x6b, 0x51, 0xf3, 0xf1, 0x31, 0xa3, 0x32, 0x92, 0x07,
+  0xb2, 0x43, 0xda, 0x25, 0xb5, 0x51, 0x9b, 0x1b, 0x41, 0x51, 0x26, 0x9d,
+  0x13, 0xc2, 0x17, 0x1a, 0xa4, 0x69, 0x71, 0x7d, 0x90, 0x7c, 0x5d, 0xde,
+  0x67, 0x70, 0xdf, 0x41, 0xbf, 0xcf, 0xc9, 0x01, 0x65, 0x54, 0xc1, 0xfb,
+  0x2c, 0x99, 0x19, 0xd5, 0xd3, 0xcc, 0x26, 0xb4, 0x0f, 0xfc, 0xcc, 0xf4,
+  0xd3, 0xd9, 0x2c, 0xe5, 0x3d, 0xcf, 0x92, 0x1d, 0x85, 0x5d, 0xca, 0x2b,
+  0x3e, 0x12, 0xc9, 0x26, 0xd4, 0x9b, 0x31, 0xcd, 0xd6, 0xbc, 0x71, 0xa3,
+  0xb0, 0x13, 0x72, 0x9f, 0xd6, 0xde, 0xe1, 0x62, 0xe3, 0x34, 0xf9, 0x6c,
+  0xb0, 0xfb, 0x6a, 0xb0, 0x33, 0x20, 0x53, 0x24, 0xbb, 0xcb, 0xcb, 0x45,
+  0x4d, 0xeb, 0x49, 0x3d, 0xf1, 0x4e, 0x27, 0xb9, 0x89, 0x68, 0x79, 0xaf,
+  0xaf, 0xa7, 0xac, 0xf8, 0x6c, 0x97, 0x57, 0x57, 0x89, 0xa7, 0x1c, 0x55,
+  0xd9, 0x9c, 0x6d, 0x20, 0x9a, 0x1b, 0x39, 0x70, 0x2c, 0x54, 0x7d, 0xad,
+  0x48, 0x66, 0xd3, 0x79, 0x14, 0xfa, 0xfd, 0x74, 0x54, 0x37, 0x64, 0x4e,
+  0xf5, 0x17, 0x45, 0xfe, 0xa9, 0x5f, 0x97, 0xe3, 0x5b, 0xb3, 0x2c, 0xaf,
+  0xe7, 0x69, 0x73, 0xf3, 0x45, 0xc7, 0x53, 0xbb, 0x49, 0xb7, 0xc9, 0x56,
+  0x92, 0x1c, 0xb2, 0x62, 0x49, 0x73, 0x51, 0xf1, 0x89, 0x33, 0xeb, 0x29,
+  0xad, 0x24, 0x1f, 0x4c, 0x2b, 0x66, 0x37, 0xcf, 0xcc, 0xb2, 0x26, 0xdc,
+  0x58, 0x4f, 0x85, 0x69, 0xa7, 0x39, 0x78, 0x01, 0xe9, 0x22, 0x81, 0x33,
+  0xcd, 0x1c, 0x9e, 0xb2, 0xba, 0x1d, 0x90, 0xdb, 0xc2, 0x58, 0x8d, 0xfb,
+  0xb4, 0xa1, 0x1b, 0x23, 0xc6, 0x1a, 0x9e, 0xf7, 0x5a, 0x84, 0x30, 0x75,
+  0x8b, 0x65, 0xb2, 0x93, 0x52, 0x3a, 0x9f, 0xda, 0x03, 0xf9, 0x6c, 0xa2,
+  0xf6, 0x86, 0x6c, 0xbd, 0x8d, 0x3f, 0x1b, 0x0b, 0xf0, 0x86, 0x17, 0x1e,
+  0x8d, 0xf1, 0x18, 0xcd, 0x1e, 0xbd, 0x36, 0x36, 0x44, 0xd1, 0x74, 0x9a,
+  0x33, 0x5f, 0xa5, 0xcb, 0x9a, 0xee, 0x19, 0x36, 0x77, 0xb1, 0x4d, 0xc4,
+  0x2d, 0x63, 0x2d, 0xd0, 0xc1, 0x5a, 0xe7, 0xb5, 0x03, 0x5d, 0xd5, 0xcf,
+  0x06, 0x2f, 0x9e, 0x99, 0x45, 0xf5, 0x27, 0xba, 0x78, 0x20, 0x77, 0x66,
+  0x7c, 0x52, 0x2f, 0xcd, 0x5d, 0x5a, 0xb3, 0x7a, 0x62, 0xce, 0xf0, 0x55,
+  0x7e, 0xbd, 0xa8, 0x32, 0xbe, 0xd4, 0xe0, 0x01, 0x55, 0xc7, 0x27, 0xdd,
+  0x13, 0x37, 0x25, 0xfc, 0x85, 0x46, 0xbe, 0x64, 0xd3, 0xab, 0x5e, 0x77,
+  0x16, 0x48, 0xa3, 0xa3, 0x2d, 0x80, 0x21, 0x62, 0x13, 0x19, 0xcd, 0x0d,
+  0x8d, 0x15, 0x99, 0xdc, 0xeb, 0x33, 0x33, 0xc1, 0x09, 0x39, 0xcc, 0x92,
+  0xf1, 0x34, 0xcd, 0x67, 0x30, 0x77, 0xc4, 0x21, 0x34, 0xe8, 0x34, 0x77,
+  0x29, 0xea, 0x38, 0x34, 0xf1, 0x11, 0x59, 0x03, 0x55, 0x4d, 0xc2, 0x8a,
+  0x26, 0x21, 0x55, 0x65, 0x82, 0x75, 0xed, 0x9b, 0x6c, 0x7c, 0xab, 0xab,
+  0xa9, 0xb7, 0x70, 0xbf, 0xd3, 0x1c, 0x79, 0x42, 0x61, 0x72, 0x98, 0xa7,
+  0x16, 0x66, 0x4d, 0xe7, 0x65, 0x5d, 0xe7, 0xe4, 0x51, 0x20, 0x0d, 0x79,
+  0x31, 0x86, 0xe2, 0x4c, 0x26, 0xf6, 0x27, 0xb3, 0x92, 0xba, 0x25, 0x12,
+  0xb3, 0xc7, 0x8a, 0x49, 0xbf, 0xa9, 0xf2, 0xf9, 0xb2, 0xde, 0xf1, 0x95,
+  0xd1, 0xbe, 0xb3, 0x6b, 0x31, 0x62, 0x60, 0x1f, 0xb0, 0xc5, 0x30, 0x4e,
+  0x3a, 0xb3, 0xd9, 0x69, 0x8e, 0xe7, 0xb6, 0x47, 0x26, 0x72, 0x6e, 0x44,
+  0x28, 0xeb, 0x8f, 0xf0, 0x00, 0x19, 0x6d, 0x51, 0xce, 0xb2, 0x51, 0x6c,
+  0xf3, 0x31, 0xee, 0x85, 0xfc, 0x3a, 0x23, 0x8f, 0xb3, 0x39, 0xde, 0xcd,
+  0xd4, 0xdc, 0x16, 0x9e, 0xa0, 0xb0, 0x2b, 0x5e, 0x64, 0xd7, 0x65, 0x43,
+  0x02, 0x3a, 0xd8, 0x26, 0x1f, 0xb0, 0xf1, 0xed, 0x9e, 0x50, 0x4d, 0xc8,
+  0xbf, 0xa6, 0x72, 0x56, 0x51, 0xcc, 0xa7, 0x59, 0x13, 0x12, 0x23, 0xac,
+  0x6e, 0xcc, 0x0e, 0xec, 0xae, 0xba, 0x69, 0x6d, 0x9c, 0x41, 0x1d, 0xc5,
+  0x5d, 0xaa, 0x57, 0xb9, 0xea, 0x40, 0x23, 0x32, 0xd9, 0xc8, 0x3c, 0xbe,
+  0xcf, 0xc7, 0x99, 0x7a, 0x28, 0xc4, 0x93, 0x36, 0xcd, 0xc3, 0xbd, 0x3f,
+  0x5b, 0xd4, 0xb0, 0x9a, 0x58, 0x4d, 0x21, 0x83, 0xf2, 0x3e, 0x27, 0x35,
+  0xe6, 0xf8, 0x4a, 0xce, 0x2a, 0xdd, 0xa2, 0x7c, 0x3e, 0xd2, 0x2a, 0x87,
+  0xf5, 0x6c, 0x9a, 0x93, 0x7e, 0x7a, 0x46, 0x8e, 0xda, 0x6d, 0xae, 0xdf,
+  0x78, 0x5f, 0x34, 0x3b, 0xa7, 0xd1, 0xc1, 0x90, 0xbc, 0x4a, 0xf3, 0x69,
+  0x64, 0x9e, 0xa0, 0xa0, 0x1a, 0x8b, 0xf4, 0x26, 0xab, 0x64, 0x0d, 0x16,
+  0x34, 0xe9, 0x14, 0x1d, 0x08, 0x9e, 0x1e, 0x66, 0x19, 0xab, 0x58, 0xd0,
+  0xc7, 0x3e, 0x3d, 0xd8, 0xe9, 0xc5, 0x3d, 0xc6, 0x6b, 0x27, 0x7f, 0xe7,
+  0xe5, 0xf3, 0x8e, 0x67, 0x4a, 0xad, 0xa6, 0x73, 0x72, 0x83, 0x77, 0x4f,
+  0x28, 0x69, 0xa3, 0x14, 0x49, 0xd9, 0x52, 0xa7, 0x9a, 0x38, 0x15, 0x0b,
+  0x1b, 0x81, 0x80, 0x70, 0x20, 0x87, 0xbf, 0x1c, 0x61, 0x6e, 0x47, 0x34,
+  0xa5, 0x4e, 0x73, 0x46, 0x35, 0x23, 0x3f, 0x21, 0x8c, 0xf0, 0xd6, 0x8e,
+  0x35, 0x06, 0x71, 0x65, 0xfd, 0xe0, 0xe4, 0x04, 0xa3, 0xf9, 0x56, 0xdd,
+  0x13, 0x67, 0x16, 0x2f, 0x75, 0x9a, 0x23, 0x6d, 0x98, 0x54, 0x07, 0x73,
+  0x68, 0x72, 0xda, 0x8f, 0xd8, 0x04, 0xea, 0x0a, 0x35, 0xdb, 0x97, 0x3d,
+  0x63, 0x2a, 0x57, 0x59, 0xd9, 0x40, 0x77, 0xaf, 0xa6, 0xe9, 0xb5, 0xd9,
+  0x77, 0x9d, 0xe6, 0xf2, 0x6b, 0x63, 0xe3, 0x72, 0x40, 0xa2, 0x2e, 0xcd,
+  0xed, 0x41, 0xe3, 0x16, 0x7b, 0xdf, 0x98, 0x7b, 0x66, 0x9b, 0x4d, 0x17,
+  0x90, 0x80, 0x67, 0x66, 0x80, 0xc3, 0xe1, 0xd7, 0x5b, 0xbe, 0x80, 0xc3,
+  0xfc, 0x3e, 0x45, 0xbc, 0x41, 0x3e, 0xc1, 0x34, 0x49, 0xbe, 0xc4, 0x9a,
+  0x74, 0xa5, 0x1c, 0xaf, 0x74, 0x64, 0xf2, 0x74, 0x22, 0xc8, 0x45, 0x34,
+  0x10, 0x01, 0x00, 0x09, 0x80, 0x69, 0x52, 0x6f, 0x15, 0xef, 0x70, 0xf2,
+  0x22, 0xf0, 0x35, 0x6d, 0xfe, 0xb6, 0xa8, 0x17, 0x64, 0xb8, 0x77, 0x9a,
+  0x9b, 0x1b, 0x41, 0xd6, 0x18, 0xe3, 0xcd, 0x48, 0xa4, 0x45, 0x41, 0x7f,
+  0x5a, 0xed, 0x22, 0x87, 0x9e, 0x4b, 0x4b, 0x52, 0x91, 0x73, 0x90, 0x2c,
+  0x04, 0x7b, 0x37, 0x1b, 0xd1, 0x22, 0x2d, 0x77, 0x97, 0x16, 0xee, 0x13,
+  0x0a, 0x5e, 0x40, 0xec, 0x4c, 0x72, 0x0a, 0x7c, 0xd1, 0xc1, 0x5b, 0x22,
+  0xc5, 0x37, 0xeb, 0x85, 0x91, 0x33, 0xa4, 0x55, 0xb1, 0x10, 0x09, 0x04,
+  0x88, 0x0a, 0x19, 0xa3, 0xc0, 0x79, 0xd2, 0x64, 0xeb, 0xd7, 0x3e, 0x26,
+  0x58, 0x38, 0x7f, 0x25, 0xc7, 0x46, 0x9f, 0x35, 0x9a, 0xea, 0xeb, 0xc3,
+  0x83, 0x84, 0xfe, 0x42, 0xb2, 0xd3, 0x7c, 0x37, 0xd0, 0x07, 0x2e, 0x4f,
+  0x86, 0xb1, 0xa5, 0x6d, 0xbb, 0xd5, 0xbd, 0x06, 0xc4, 0xf3, 0x54, 0x92,
+  0xde, 0x64, 0x94, 0xcf, 0x60, 0xf6, 0xe8, 0x82, 0xcf, 0x4c, 0x87, 0xc5,
+  0xa4, 0xe0, 0x90, 0x1d, 0x09, 0x34, 0xa3, 0x50, 0x35, 0xa4, 0x50, 0x58,
+  0x2f, 0x53, 0xbb, 0x63, 0x70, 0x2b, 0x75, 0xb7, 0x8a, 0xf7, 0xfb, 0xcd,
+  0x7a, 0xcb, 0xca, 0x34, 0xd3, 0xca, 0xf9, 0xd1, 0x7b, 0xa8, 0xf8, 0xa9,
+  0xd9, 0x42, 0xa7, 0xea, 0xd1, 0xd1, 0x88, 0xdc, 0x68, 0x91, 0x4f, 0x5b,
+  0x6e, 0x53, 0x67, 0x95, 0x20, 0x1c, 0xc6, 0x3b, 0x0c, 0x5d, 0xe3, 0x00,
+  0x40, 0x0e, 0x0f, 0x5a, 0x77, 0xbf, 0x35, 0x0f, 0x73, 0x71, 0xfe, 0x2d,
+  0xea, 0x96, 0x8d, 0xad, 0xf7, 0xf4, 0xb4, 0x81, 0x1a, 0x42, 0xaa, 0xbf,
+  0xd7, 0x66, 0xb0, 0x56, 0xe8, 0x16, 0x5d, 0x0b, 0xd7, 0x45, 0xfe, 0x77,
+  0xf1, 0x32, 0x64, 0xc5, 0x5d, 0x5e, 0x95, 0x05, 0x29, 0x2d, 0xc6, 0x3a,
+  0xa8, 0x72, 0x88, 0x69, 0x52, 0x7c, 0x8d, 0x20, 0xd9, 0x38, 0xfc, 0x70,
+  0x71, 0xf2, 0xf1, 0xf0, 0xe0, 0xe3, 0x97, 0x1f, 0x4e, 0xdf, 0x9e, 0x1c,
+  0x6d, 0x74, 0x8f, 0xf7, 0x15, 0x0b, 0x08, 0x3a, 0x32, 0x35, 0xa9, 0x66,
+  0x38, 0x2b, 0xa6, 0x8b, 0xdc, 0xf2, 0x75, 0x7e, 0x67, 0x04, 0x1c, 0x94,
+  0x2c, 0xb8, 0x31, 0xf1, 0x37, 0x18, 0xfe, 0x32, 0xe1, 0x9d, 0xe6, 0x46,
+  0xe6, 0x66, 0x36, 0x9d, 0xe6, 0x73, 0x28, 0x83, 0xd7, 0x33, 0x23, 0x86,
+  0x8d, 0x76, 0x30, 0x18, 0x19, 0x2d, 0x31, 0x5d, 0x2b, 0xa4, 0xdc, 0x79,
+  0x7a, 0xb4, 0xe7, 0xd1, 0x5c, 0x34, 0x46, 0x8d, 0x54, 0x1f, 0xaa, 0xb1,
+  0xd3, 0xca, 0x5b, 0x8d, 0x8d, 0x1a, 0x1d, 0xf4, 0x20, 0xb2, 0xdc, 0x35,
+  0xaf, 0x0b, 0x4f, 0xc5, 0x06, 0xb5, 0x64, 0x76, 0x72, 0x5f, 0x3a, 0x39,
+  0xae, 0x1a, 0xa3, 0x00, 0x66, 0x39, 0x8e, 0x88, 0x06, 0x7f, 0x48, 0x41,
+  0x86, 0xff, 0xa2, 0xab, 0xa9, 0x18, 0xf3, 0xf0, 0x81, 0xe6, 0x80, 0x1a,
+  0x19, 0x64, 0x9f, 0x32, 0x9c, 0x41, 0x79, 0xeb, 0x70, 0x51, 0xe1, 0x54,
+  0x7f, 0x67, 0xb4, 0x13, 0x92, 0x85, 0x6f, 0xe1, 0x00, 0x31, 0x2f, 0xe8,
+  0x43, 0xe6, 0xda, 0xe9, 0x5e, 0x81, 0xe5, 0x74, 0x42, 0x8e, 0x06, 0x18,
+  0x9b, 0x70, 0x0d, 0x9c, 0x1f, 0x5c, 0x7e, 0x1d, 0xcc, 0x09, 0x09, 0x7c,
+  0x07, 0x44, 0x90, 0xad, 0x08, 0x13, 0xa9, 0x6e, 0xe4, 0x80, 0x9c, 0x0e,
+  0x87, 0x09, 0xc2, 0xdc, 0xd3, 0x7c, 0x54, 0xa5, 0xf4, 0x4d, 0xfa, 0x31,
+  0xfd, 0xd4, 0x6c, 0xeb, 0x4e, 0x73, 0xe7, 0xdf, 0x1c, 0x0e, 0x7f, 0xbf,
+  0xbb, 0x6b, 0xd4, 0xc0, 0xc9, 0xc2, 0xcc, 0xcb, 0xa6, 0x79, 0xa5, 0xa8,
+  0xcd, 0xc9, 0x9c, 0x0d, 0xea, 0x72, 0x0b, 0xd7, 0x38, 0x74, 0x3f, 0x5c,
+  0x14, 0xe9, 0x9d, 0xb9, 0x7f, 0xb1, 0x93, 0x78, 0x8e, 0x69, 0x3f, 0x77,
+  0x15, 0x76, 0x5e, 0x60, 0x45, 0x01, 0x18, 0xd9, 0x61, 0x6e, 0xf0, 0xe9,
+  0x43, 0x30, 0x8a, 0xcd, 0xfc, 0x6c, 0x28, 0x31, 0xf4, 0x74, 0x6c, 0xfe,
+  0x4a, 0xd6, 0xd4, 0x16, 0x8d, 0xad, 0x7d, 0xc6, 0x74, 0x5c, 0x43, 0xd6,
+  0x4f, 0x2f, 0xc9, 0xd9, 0x89, 0xd0, 0x7f, 0x28, 0x17, 0x8a, 0xee, 0xf1,
+  0x72, 0xf0, 0x0a, 0x74, 0x76, 0x94, 0x8e, 0x6f, 0xef, 0xd3, 0x6a, 0xc2,
+  0xae, 0x13, 0xb3, 0x67, 0x46, 0xf9, 0x34, 0x6f, 0x1e, 0xf8, 0x1e, 0xe9,
+  0x8e, 0x82, 0x83, 0x48, 0x34, 0x85, 0xe6, 0x24, 0x5d, 0x1b, 0xab, 0x88,
+  0xf4, 0x51, 0xb2, 0x15, 0xcd, 0xc1, 0xf0, 0xb4, 0x7e, 0x28, 0x4d, 0x8d,
+  0x55, 0x7a, 0xec, 0xb7, 0x3b, 0xcd, 0xc1, 0x11, 0x45, 0x27, 0x09, 0xdd,
+  0x74, 0xbb, 0x57, 0x05, 0xa1, 0x2f, 0xa6, 0x74, 0x03, 0x25, 0xf5, 0x83,
+  0xb9, 0xf7, 0x67, 0x49, 0x44, 0x69, 0x04, 0xea, 0x21, 0xf9, 0x26, 0x7b,
+  0x30, 0x26, 0x46, 0x5e, 0x38, 0x59, 0xc9, 0xde, 0xa2, 0x8c, 0x6c, 0x56,
+  0xd6, 0x4e, 0x73, 0xf5, 0x38, 0x66, 0xe2, 0x34, 0xe6, 0x3b, 0x25, 0xb4,
+  0xb1, 0xf8, 0x7d, 0xd5, 0xcc, 0xa9, 0x89, 0x8d, 0xba, 0x25, 0x94, 0xf1,
+  0xa5, 0xd8, 0x56, 0x0c, 0xae, 0x50, 0x38, 0x4f, 0x38, 0x3a, 0x4c, 0xce,
+  0xe7, 0x9a, 0xf7, 0xde, 0x34, 0xad, 0x1b, 0x58, 0x17, 0x18, 0xb7, 0xf8,
+  0x28, 0xda, 0xb7, 0x09, 0xe4, 0xc8, 0x6b, 0x73, 0xd0, 0xfe, 0xf9, 0x2b,
+  0x84, 0x8f, 0x2b, 0x8e, 0x67, 0x28, 0x55, 0x65, 0xae, 0x5a, 0x57, 0xc9,
+  0x7b, 0xbd, 0x33, 0xa8, 0x13, 0xd6, 0x8f, 0x32, 0xe7, 0xa8, 0x1f, 0x2b,
+  0x3a, 0xec, 0x10, 0x0a, 0x15, 0x57, 0xb2, 0xe9, 0xc5, 0x6f, 0xb0, 0xbf,
+  0x9e, 0x6c, 0x66, 0x83, 0x6b, 0xd3, 0xde, 0x3a, 0xb5, 0xb3, 0xbb, 0x4f,
+  0xff, 0xdd, 0xc3, 0x7f, 0x9f, 0xad, 0x2b, 0x64, 0xc6, 0x5f, 0x6a, 0xba,
+  0x6f, 0xba, 0xd2, 0x52, 0x9c, 0xea, 0x74, 0xff, 0xc8, 0x05, 0x24, 0x02,
+  0x98, 0xe4, 0x72, 0xfc, 0x70, 0xb0, 0x9e, 0x75, 0xd2, 0x8b, 0xe8, 0x42,
+  0x6e, 0x22, 0x70, 0xb7, 0xc1, 0x4a, 0x1d, 0x91, 0x03, 0xca, 0x8c, 0x6d,
+  0x6c, 0x74, 0x19, 0xf8, 0x02, 0x38, 0x44, 0x45, 0xd3, 0x31, 0xfe, 0x58,
+  0x65, 0x37, 0x69, 0x6d, 0xd4, 0xaa, 0x45, 0x83, 0xd3, 0xd1, 0xb5, 0x21,
+  0xcc, 0x91, 0x9a, 0xe6, 0xd6, 0xf9, 0x22, 0x1f, 0x1e, 0x58, 0x53, 0x45,
+  0x56, 0x91, 0xdd, 0x98, 0xd3, 0xf2, 0x5e, 0x9f, 0xe8, 0x0b, 0x86, 0x25,
+  0x76, 0x71, 0x99, 0xd5, 0x04, 0x0c, 0x86, 0x1e, 0xf3, 0xc3, 0x51, 0x33,
+  0xd2, 0x7b, 0x08, 0x60, 0x63, 0x8e, 0xe0, 0x95, 0x99, 0x31, 0xb2, 0x41,
+  0xa6, 0x58, 0x37, 0xb2, 0xb6, 0xd0, 0xeb, 0x40, 0x17, 0x12, 0x9d, 0x24,
+  0xbf, 0x12, 0x17, 0x8c, 0xfc, 0x1b, 0x12, 0x5f, 0xf4, 0x83, 0x9a, 0x43,
+  0x56, 0x5d, 0xe5, 0xe0, 0xf1, 0xad, 0xad, 0x07, 0xd8, 0xde, 0xc5, 0x32,
+  0x58, 0xf6, 0x7a, 0xea, 0xbe, 0x16, 0xdd, 0x38, 0x66, 0x72, 0x9b, 0x5e,
+  0x71, 0xf4, 0xe0, 0x97, 0x1f, 0x12, 0xd3, 0xe3, 0x3e, 0x39, 0x3c, 0x16,
+  0xf5, 0x13, 0xce, 0x88, 0x27, 0x14, 0xf8, 0x1d, 0xeb, 0xf2, 0xe1, 0xd0,
+  0x9c, 0x3f, 0x01, 0xdd, 0x5d, 0xf8, 0xe0, 0xb9, 0x5d, 0x0e, 0xbd, 0x93,
+  0x35, 0xe4, 0x86, 0x2e, 0xc4, 0xa8, 0xdf, 0x4c, 0x6f, 0xd3, 0x41, 0x72,
+  0x76, 0x38, 0x3c, 0xa7, 0x4f, 0x98, 0xad, 0x51, 0x5c, 0x9b, 0x5e, 0x9c,
+  0x0c, 0x3b, 0xcd, 0x19, 0x5b, 0x3d, 0x2b, 0xea, 0x16, 0xe8, 0x6b, 0xe9,
+  0x34, 0xab, 0x2b, 0x50, 0x63, 0xe4, 0xd2, 0x59, 0x63, 0x9b, 0x22, 0xb8,
+  0x45, 0xb1, 0x1a, 0x0a, 0xa4, 0x26, 0x7c, 0xd4, 0x82, 0x0f, 0xcd, 0xcd,
+  0x86, 0x9f, 0x6c, 0x59, 0xe7, 0x42, 0x4f, 0xf7, 0x82, 0xf5, 0xf9, 0xd7,
+  0x8b, 0x6b, 0xd2, 0x97, 0x6b, 0xb5, 0x72, 0xec, 0x17, 0xcc, 0x6c, 0x04,
+  0x17, 0xbc, 0x0e, 0xdb, 0x9c, 0x09, 0x3e, 0x36, 0x46, 0xc1, 0x27, 0x38,
+  0x04, 0x2e, 0xf1, 0xa2, 0x74, 0xad, 0x92, 0x4e, 0x0f, 0x34, 0x56, 0x0e,
+  0x2f, 0xf9, 0x38, 0x33, 0x4a, 0xd2, 0x24, 0x72, 0x49, 0xf1, 0xa2, 0xa8,
+  0x8a, 0x7f, 0x25, 0x08, 0xac, 0x88, 0xc7, 0x02, 0x0d, 0x8d, 0x59, 0x89,
+  0xa0, 0x5d, 0x0f, 0x6f, 0x63, 0x4e, 0xee, 0x59, 0x52, 0xe9, 0xd8, 0xb8,
+  0xa4, 0xf6, 0xec, 0xd9, 0xff, 0xaa, 0x58, 0x98, 0x89, 0x8f, 0xdc, 0x16,
+  0x74, 0xed, 0xd3, 0xdd, 0x47, 0x13, 0xb8, 0xca, 0x15, 0xf5, 0x7c, 0xb7,
+  0xed, 0x8a, 0xc2, 0x66, 0x33, 0x2a, 0x6a, 0x96, 0xbc, 0xa6, 0xff, 0x3e,
+  0x2a, 0x95, 0x11, 0x7f, 0xf6, 0xa5, 0x30, 0xde, 0x95, 0x00, 0x06, 0xcb,
+  0xd1, 0x15, 0x3b, 0x0e, 0xa1, 0xed, 0x01, 0x89, 0xbd, 0x5e, 0xf2, 0xf6,
+  0xe8, 0x02, 0xcb, 0x7f, 0x74, 0xfa, 0x15, 0xbc, 0xc3, 0x56, 0xb5, 0x9d,
+  0xa0, 0xcd, 0x9a, 0xad, 0x5e, 0x8e, 0xee, 0x88, 0xf8, 0xef, 0x4e, 0x35,
+  0x89, 0x4f, 0x72, 0xea, 0x23, 0xf6, 0x3f, 0xf9, 0xed, 0x2e, 0xae, 0xc0,
+  0x5a, 0x3a, 0xea, 0xc9, 0xd4, 0x89, 0x0f, 0xe1, 0x36, 0x7b, 0x70, 0x7f,
+  0xc3, 0x74, 0x7a, 0x73, 0xec, 0x1e, 0x7e, 0xed, 0xcd, 0xcc, 0x0f, 0xfb,
+  0x84, 0x2f, 0x30, 0xea, 0xd3, 0xe4, 0xa7, 0x5f, 0x76, 0x15, 0x8a, 0xc3,
+  0x26, 0x69, 0xdf, 0x89, 0x11, 0xbf, 0x00, 0x5c, 0x32, 0x1a, 0xc9, 0xe7,
+  0xc0, 0x1d, 0x0b, 0x76, 0xc1, 0x97, 0x12, 0xf4, 0x94, 0x76, 0x7a, 0x5a,
+  0xb0, 0x42, 0x44, 0x22, 0x9a, 0xe1, 0x1b, 0x80, 0x73, 0x74, 0x8f, 0xcb,
+  0xb8, 0x9c, 0x06, 0x97, 0x5c, 0xcb, 0xa6, 0x82, 0xaa, 0xb9, 0x27, 0xd7,
+  0x1a, 0xec, 0x0c, 0xb9, 0x7c, 0x58, 0xbd, 0xeb, 0x9e, 0x03, 0xab, 0xec,
+  0x01, 0x19, 0xe5, 0x5f, 0x89, 0x89, 0xf7, 0x32, 0x02, 0x55, 0xe8, 0x1e,
+  0x6b, 0x6a, 0x03, 0x59, 0xde, 0x2c, 0xaa, 0x99, 0x9a, 0xd5, 0xd5, 0xd9,
+  0x35, 0xcb, 0x4e, 0x4e, 0x11, 0xb7, 0x87, 0x38, 0x02, 0xc0, 0xcb, 0x6c,
+  0xe4, 0x5b, 0x95, 0x8b, 0xea, 0xc8, 0x80, 0xb2, 0xee, 0x61, 0xd6, 0x78,
+  0xa1, 0x38, 0x4d, 0xc4, 0xb0, 0xc7, 0xb6, 0xd2, 0x7d, 0xc5, 0xdb, 0x8f,
+  0x8c, 0xa4, 0x75, 0x6f, 0x4a, 0xd6, 0x63, 0x4b, 0xd1, 0x70, 0xe8, 0x42,
+  0xce, 0x4b, 0x7e, 0x47, 0x53, 0xa7, 0x7b, 0xc7, 0xf9, 0xe0, 0xda, 0x3a,
+  0x59, 0x59, 0xd0, 0x9f, 0x05, 0xf9, 0x6e, 0x7e, 0x17, 0xd9, 0x90, 0xd1,
+  0xbd, 0x48, 0x6e, 0x5c, 0x09, 0xeb, 0x40, 0x73, 0x21, 0x08, 0x93, 0xc0,
+  0x3a, 0x23, 0x5a, 0x7a, 0xcc, 0xd6, 0x50, 0xad, 0x43, 0x4d, 0x0a, 0xcf,
+  0xce, 0x08, 0xd4, 0xf0, 0xee, 0x06, 0x31, 0xf2, 0xbb, 0xa1, 0x80, 0x30,
+  0xef, 0x5d, 0x72, 0x13, 0xe6, 0xe3, 0x5b, 0xe0, 0x7e, 0xe4, 0x6a, 0x6a,
+  0xc9, 0x0f, 0x41, 0xdd, 0x30, 0x5e, 0x2c, 0xb2, 0x04, 0x30, 0x73, 0xc8,
+  0x7f, 0x49, 0x7b, 0x92, 0xae, 0xe5, 0xbc, 0x60, 0x65, 0x6d, 0xa9, 0x01,
+  0x6c, 0xfa, 0xfa, 0xf1, 0xed, 0xf1, 0x45, 0xb2, 0x69, 0x56, 0x75, 0xd4,
+  0x55, 0x6e, 0xf4, 0x5e, 0xdf, 0xce, 0x9a, 0xf1, 0xf6, 0xfc, 0x36, 0xdf,
+  0x36, 0x76, 0xd0, 0x64, 0xb4, 0x65, 0xb5, 0x7b, 0x7c, 0x0e, 0x9b, 0x50,
+  0x6d, 0x26, 0x35, 0x9a, 0x60, 0x35, 0x75, 0x4f, 0x83, 0x67, 0x45, 0x31,
+  0x64, 0xdc, 0x19, 0x4f, 0x98, 0x26, 0x76, 0x31, 0x00, 0xae, 0xc2, 0xb1,
+  0xcd, 0x84, 0xfc, 0x84, 0x19, 0xbb, 0x50, 0x8d, 0xf9, 0xd7, 0x3d, 0xab,
+  0x8c, 0x5d, 0x12, 0x1f, 0x03, 0xfb, 0x16, 0x14, 0x70, 0x23, 0xf7, 0x84,
+  0xd3, 0xf6, 0x7a, 0x04, 0x95, 0xa2, 0x49, 0x99, 0xd3, 0x5d, 0x34, 0x21,
+  0x57, 0x55, 0xb7, 0x39, 0x38, 0xcf, 0xd6, 0x07, 0xdb, 0xeb, 0x89, 0x05,
+  0x87, 0x99, 0x59, 0x06, 0xbe, 0xd1, 0xa1, 0xf1, 0xcc, 0x16, 0xbb, 0x5a,
+  0xd4, 0xec, 0x7e, 0x25, 0x7b, 0xdf, 0xae, 0xd7, 0x20, 0x26, 0x50, 0xbd,
+  0xe5, 0xb4, 0xca, 0x96, 0x51, 0x8a, 0x71, 0xae, 0xac, 0x21, 0x39, 0xb2,
+  0x9d, 0xc2, 0x52, 0xad, 0xff, 0xb8, 0x9e, 0x78, 0xe0, 0xa2, 0x96, 0x93,
+  0x2c, 0x77, 0xe1, 0x7f, 0xef, 0x0a, 0x30, 0x57, 0xb1, 0x3d, 0xc1, 0x93,
+  0x6c, 0x9a, 0xcf, 0xf2, 0x06, 0x3a, 0xbc, 0xd7, 0x85, 0x60, 0x29, 0xda,
+  0x5d, 0xfa, 0x31, 0xec, 0x92, 0x02, 0xf6, 0x52, 0xfa, 0xb5, 0xe9, 0x12,
+  0x9c, 0x35, 0x8c, 0xa7, 0x8a, 0x9b, 0x73, 0xed, 0x0e, 0x59, 0xc8, 0xdf,
+  0x8a, 0xa8, 0xcf, 0x6f, 0x63, 0xf1, 0xb6, 0x8f, 0x4c, 0xdd, 0x00, 0x58,
+  0x44, 0xe7, 0x4c, 0x9c, 0x18, 0x23, 0xbe, 0x1c, 0xf4, 0x8c, 0xa5, 0xfa,
+  0x78, 0x20, 0xbb, 0xcd, 0xeb, 0xdb, 0x2a, 0x78, 0x20, 0x79, 0xd4, 0xfd,
+  0xc1, 0x66, 0xa8, 0x39, 0x30, 0x30, 0x3b, 0x6f, 0xc5, 0xea, 0x84, 0x06,
+  0x04, 0x61, 0xc5, 0xee, 0x9f, 0xae, 0xbe, 0xab, 0xc2, 0xbe, 0x9f, 0x15,
+  0xe3, 0x72, 0xd2, 0xb1, 0xcf, 0x68, 0x12, 0x3c, 0x21, 0x87, 0x1d, 0xcf,
+  0x91, 0x14, 0xec, 0xf2, 0xb8, 0x63, 0x8d, 0x3c, 0x3a, 0xec, 0xed, 0xfb,
+  0x59, 0xfb, 0x3e, 0x66, 0xde, 0x63, 0xdb, 0xff, 0xa2, 0x5d, 0xff, 0x2f,
+  0xd3, 0x23, 0x3c, 0xf5, 0xeb, 0x09, 0x8a, 0x44, 0x7f, 0x9c, 0xcf, 0x6f,
+  0xc8, 0xfb, 0xfe, 0x1a, 0x01, 0x69, 0x72, 0x91, 0xf1, 0x0f, 0xe2, 0x0a,
+  0xc4, 0x50, 0xae, 0xbc, 0x5a, 0xfc, 0x04, 0xfa, 0xb6, 0x88, 0x97, 0x5c,
+  0x01, 0xd4, 0x6a, 0x8c, 0x09, 0x08, 0x22, 0x0f, 0xac, 0x55, 0x0a, 0x49,
+  0xe8, 0xcb, 0x7c, 0xd3, 0xdb, 0xdb, 0x85, 0xf1, 0x8e, 0xfa, 0xdb, 0x81,
+  0x31, 0x19, 0xd2, 0x09, 0x21, 0x9a, 0xcc, 0x34, 0x21, 0x01, 0x03, 0x3f,
+  0xef, 0x34, 0x87, 0xce, 0x4b, 0x62, 0x02, 0xdf, 0xba, 0x66, 0x46, 0x3f,
+  0x5c, 0x9c, 0xec, 0x77, 0xe7, 0x09, 0xb8, 0xd8, 0x7a, 0x7f, 0x7b, 0x1b,
+  0xae, 0xb7, 0x9b, 0xf4, 0xd3, 0xa7, 0x41, 0x9d, 0x6d, 0x4f, 0xca, 0x71,
+  0xbd, 0x5d, 0xd7, 0x53, 0x9d, 0x8d, 0x36, 0x72, 0xfc, 0x37, 0xf0, 0x59,
+  0x94, 0xb3, 0x79, 0x05, 0x23, 0x3a, 0x1e, 0xd0, 0x50, 0x2b, 0x09, 0xb0,
+  0x69, 0x79, 0xd2, 0x99, 0x0c, 0xdd, 0xac, 0x20, 0xb3, 0xf0, 0xd7, 0x65,
+  0x65, 0x36, 0xdc, 0xac, 0x8e, 0x99, 0xc9, 0xea, 0xce, 0xaa, 0xd5, 0x1d,
+  0x50, 0x93, 0x2d, 0xcf, 0x66, 0xfb, 0xa2, 0xf0, 0x3e, 0x60, 0x66, 0x01,
+  0xb1, 0xea, 0x81, 0x1d, 0x6b, 0xdc, 0x45, 0xa7, 0x23, 0xef, 0x18, 0x5a,
+  0x62, 0x69, 0x25, 0x30, 0xb2, 0x0b, 0xe7, 0x43, 0x4b, 0x70, 0x90, 0x4d,
+  0x97, 0x7b, 0xb1, 0xde, 0x61, 0x8a, 0xaa, 0x8c, 0x9e, 0x85, 0x30, 0xac,
+  0xaa, 0xd2, 0x93, 0x80, 0xfd, 0x6f, 0xa0, 0x89, 0x98, 0x63, 0x95, 0x5f,
+  0x27, 0xaf, 0xe9, 0x10, 0x7f, 0x11, 0xec, 0x7c, 0xdd, 0x36, 0x29, 0xa9,
+  0x56, 0x04, 0x53, 0x91, 0x64, 0x1c, 0x32, 0xb2, 0xcc, 0xce, 0xe1, 0x90,
+  0x99, 0x84, 0xe1, 0x39, 0xcc, 0xd9, 0xca, 0x41, 0x0a, 0x76, 0x12, 0xc1,
+  0x3b, 0xdd, 0xe3, 0x14, 0x1e, 0xd6, 0x7d, 0x8d, 0xe6, 0x45, 0xd7, 0x75,
+  0x0b, 0x9b, 0x90, 0x1c, 0x87, 0x5a, 0x69, 0x9e, 0xe9, 0xaa, 0x06, 0x40,
+  0x56, 0x58, 0x33, 0x26, 0x96, 0x60, 0xd0, 0x1d, 0x8f, 0xa2, 0xac, 0x74,
+  0x7a, 0x73, 0xa4, 0xb4, 0xa4, 0x80, 0x70, 0xd5, 0x56, 0x29, 0xf6, 0x12,
+  0x0b, 0x3c, 0x67, 0x33, 0x35, 0xd8, 0x35, 0x8f, 0xf8, 0xd7, 0x0c, 0xad,
+  0x53, 0x50, 0x2a, 0x2e, 0x50, 0x73, 0x82, 0x9b, 0x0c, 0xe0, 0x22, 0x4a,
+  0x64, 0x9a, 0x96, 0x4e, 0x32, 0x9b, 0xdd, 0x67, 0x64, 0x09, 0x80, 0xe7,
+  0xdd, 0xeb, 0xfa, 0xa4, 0x64, 0xf8, 0x29, 0x07, 0xd2, 0x18, 0x46, 0xcd,
+  0x51, 0x6c, 0xd5, 0x92, 0xa7, 0xd0, 0x48, 0xd8, 0xd7, 0xef, 0xe4, 0x01,
+  0xad, 0x5f, 0xcc, 0x8e, 0x10, 0x00, 0x16, 0x63, 0xda, 0x73, 0x64, 0x50,
+  0x08, 0xbe, 0x9f, 0xf1, 0x64, 0xea, 0xff, 0xa8, 0xcb, 0x9e, 0x34, 0x35,
+  0x25, 0x4f, 0x7e, 0x25, 0x7d, 0xec, 0xee, 0x28, 0x8b, 0xdd, 0xf7, 0x11,
+  0x4d, 0xb4, 0x3e, 0x16, 0x96, 0x55, 0x87, 0x3e, 0x57, 0x37, 0x99, 0x31,
+  0x55, 0x27, 0x80, 0xb8, 0xa1, 0x23, 0x55, 0xa6, 0x5f, 0x30, 0xc6, 0x7c,
+  0xa7, 0x53, 0xda, 0x8f, 0x7e, 0xa8, 0xf8, 0x5b, 0x18, 0x97, 0xd7, 0x01,
+  0x85, 0x73, 0xd9, 0x55, 0x8e, 0x5f, 0x16, 0x99, 0x7b, 0x00, 0xea, 0x7e,
+  0x69, 0xe3, 0x56, 0xfe, 0x42, 0xb6, 0x9f, 0x93, 0xdd, 0xd2, 0xf5, 0x75,
+  0x14, 0xe3, 0x69, 0xa9, 0x30, 0x38, 0xf3, 0x3e, 0x67, 0x52, 0x98, 0x53,
+  0xff, 0x9d, 0x28, 0xcc, 0xb2, 0x02, 0xf2, 0x8b, 0x9e, 0xc8, 0x8a, 0xab,
+  0x92, 0x1c, 0x73, 0xa1, 0xf3, 0x4c, 0xf4, 0x97, 0x6e, 0x22, 0x90, 0x53,
+  0x5b, 0xf7, 0x93, 0xe4, 0xc7, 0x1f, 0x7b, 0x09, 0x29, 0x4f, 0x3f, 0x1a,
+  0x93, 0xec, 0x47, 0xb3, 0xd1, 0x7e, 0x64, 0xe0, 0xe9, 0x8f, 0x77, 0x83,
+  0xa4, 0x1b, 0x6a, 0x21, 0x8f, 0x43, 0x3d, 0x25, 0x57, 0x22, 0x5f, 0xc5,
+  0x6d, 0x4b, 0x8d, 0xb3, 0x5c, 0x60, 0xf4, 0xb3, 0xbf, 0xcc, 0x0f, 0x64,
+  0x03, 0x3f, 0x12, 0x9a, 0x96, 0x8b, 0x59, 0x21, 0x1a, 0x0c, 0xef, 0x43,
+  0x1c, 0x71, 0x00, 0xf7, 0x36, 0x7e, 0xbf, 0xe1, 0xf6, 0x4c, 0x4f, 0xdd,
+  0x3d, 0x8d, 0xca, 0xd5, 0xc8, 0x71, 0xd2, 0x83, 0xaf, 0x39, 0x21, 0x08,
+  0x64, 0x31, 0xac, 0xc2, 0xc8, 0xcd, 0x33, 0xf2, 0xb5, 0x30, 0xb2, 0xb7,
+  0xb4, 0x78, 0x28, 0x00, 0x9c, 0xe7, 0x37, 0x0f, 0x35, 0xc5, 0x9a, 0x62,
+  0xd2, 0x26, 0x3c, 0x25, 0x83, 0xa5, 0x42, 0xae, 0xd1, 0xd0, 0x25, 0xf4,
+  0x32, 0xda, 0x05, 0x2d, 0x11, 0x69, 0xba, 0xb3, 0xd1, 0xdf, 0xb0, 0x9e,
+  0x51, 0x89, 0xef, 0x05, 0xe0, 0x28, 0x95, 0x08, 0x1e, 0x78, 0x22, 0xf8,
+  0xa4, 0x17, 0xd0, 0x2f, 0x7d, 0xb8, 0x86, 0xcb, 0x57, 0xa2, 0x84, 0x03,
+  0x8d, 0x39, 0xc8, 0xf7, 0x45, 0xce, 0x44, 0xac, 0x10, 0xc0, 0x3a, 0x10,
+  0x0f, 0xb2, 0xf7, 0x3c, 0xa9, 0xc8, 0xce, 0x59, 0xd8, 0xef, 0x23, 0x9b,
+  0x73, 0xce, 0x19, 0x98, 0xb4, 0x3b, 0x10, 0x27, 0x79, 0x20, 0x70, 0xef,
+  0x3c, 0x88, 0xad, 0x2b, 0x94, 0x41, 0xf3, 0x67, 0xe8, 0x20, 0x53, 0xda,
+  0xdf, 0x7d, 0x21, 0x69, 0x5b, 0xc3, 0x12, 0xaa, 0xfa, 0x18, 0x11, 0x17,
+  0x09, 0xef, 0x09, 0x4c, 0x38, 0xa2, 0x26, 0xd2, 0x65, 0x17, 0xe8, 0x0a,
+  0xd4, 0x9f, 0x37, 0xc9, 0xfa, 0x72, 0x8d, 0x61, 0xbd, 0xfb, 0x06, 0x10,
+  0x1c, 0xce, 0xee, 0x95, 0x14, 0x28, 0x74, 0x64, 0x53, 0x20, 0x00, 0xfd,
+  0xbf, 0x31, 0xbe, 0x87, 0x51, 0xba, 0x72, 0x95, 0x6e, 0x31, 0xc0, 0xa9,
+  0x0e, 0xe2, 0x7a, 0x95, 0x17, 0x15, 0xf6, 0xf6, 0x87, 0x8b, 0xab, 0xe6,
+  0xf0, 0x86, 0xe0, 0x96, 0xe2, 0x5b, 0xcd, 0x7b, 0xba, 0x2b, 0x7f, 0xec,
+  0xdb, 0x04, 0x22, 0xa4, 0xef, 0x89, 0x97, 0x42, 0xaf, 0x08, 0x3d, 0xdf,
+  0x46, 0x15, 0x46, 0x36, 0xa4, 0xc2, 0x17, 0xa1, 0xe4, 0x06, 0xb3, 0xb3,
+  0xbb, 0x65, 0x01, 0xef, 0x48, 0x69, 0x64, 0x64, 0x99, 0xa8, 0x04, 0xeb,
+  0x37, 0x25, 0xc7, 0x3e, 0xd7, 0xf7, 0x09, 0x8b, 0xcd, 0xc0, 0x2e, 0x1e,
+  0xa3, 0x66, 0xb6, 0x75, 0x9a, 0x43, 0x64, 0xf9, 0xeb, 0xb3, 0xf7, 0x47,
+  0x6d, 0x04, 0x11, 0x7e, 0x12, 0xb3, 0xc8, 0x8d, 0xbc, 0x7a, 0x67, 0xe4,
+  0x0b, 0xef, 0x81, 0x34, 0x30, 0x72, 0x78, 0x6f, 0x99, 0x6e, 0x5d, 0x67,
+  0xcd, 0xfc, 0x7e, 0x91, 0x4f, 0x36, 0xb7, 0x68, 0x8f, 0x10, 0x7e, 0xb0,
+  0x0f, 0xd8, 0x2a, 0x5b, 0x27, 0x75, 0xb2, 0xc9, 0x8a, 0x6c, 0x95, 0x35,
+  0x8b, 0xaa, 0x60, 0x2f, 0x0a, 0xf5, 0x3d, 0x8c, 0x86, 0xc8, 0x95, 0xe6,
+  0x5b, 0x0f, 0x92, 0x99, 0xcc, 0x21, 0x57, 0x6e, 0x70, 0x8b, 0x84, 0x80,
+  0x11, 0xa4, 0x88, 0x3c, 0x63, 0xe1, 0x31, 0x96, 0xe0, 0x9e, 0xf2, 0x67,
+  0x22, 0x39, 0x38, 0x3f, 0x7f, 0x7b, 0x70, 0x79, 0x60, 0xc7, 0x86, 0x8b,
+  0x18, 0x92, 0x05, 0x9a, 0xa4, 0x11, 0x49, 0xa4, 0x1d, 0xd1, 0x93, 0x1b,
+  0x7f, 0xf8, 0x30, 0x3c, 0xba, 0xe8, 0x2e, 0xec, 0xf9, 0xc5, 0x19, 0xa5,
+  0x7d, 0xff, 0xe1, 0xc7, 0x03, 0x0a, 0xb2, 0x88, 0x8b, 0xf8, 0x6d, 0xda,
+  0xa4, 0x1b, 0xc1, 0xa9, 0xde, 0xdb, 0xa2, 0xfe, 0xdd, 0xdb, 0xfe, 0x5d,
+  0xc9, 0x65, 0x06, 0x6b, 0x39, 0xf9, 0x48, 0x0b, 0x5a, 0x8d, 0x15, 0x3e,
+  0x64, 0x67, 0x03, 0x13, 0x00, 0xf4, 0xcf, 0xf2, 0x81, 0x94, 0x4e, 0x92,
+  0x69, 0xe0, 0x5b, 0x27, 0x6b, 0x9a, 0x64, 0x9f, 0x8c, 0x51, 0xda, 0xe8,
+  0x96, 0xc7, 0xfe, 0xa2, 0xc4, 0x9c, 0xee, 0xbc, 0x04, 0xcb, 0xe3, 0x3c,
+  0x6b, 0x2c, 0x05, 0x90, 0x17, 0x66, 0x36, 0x1a, 0x20, 0x5e, 0x03, 0xe9,
+  0x2d, 0x4b, 0xb1, 0x58, 0x0c, 0x2b, 0x63, 0x5f, 0x1b, 0xf2, 0xc4, 0xb8,
+  0x4b, 0xc1, 0x84, 0xfc, 0xde, 0x9c, 0xc6, 0x7e, 0x72, 0x24, 0x00, 0x66,
+  0x0c, 0xdc, 0xfc, 0x20, 0x78, 0x48, 0x33, 0x87, 0xac, 0xb0, 0x8f, 0xcb,
+  0x0a, 0x2f, 0x77, 0x72, 0xbd, 0xab, 0x3c, 0x73, 0xb6, 0x82, 0x79, 0x88,
+  0xba, 0x4d, 0x93, 0x0e, 0x2b, 0x63, 0x3d, 0x12, 0xa2, 0xed, 0xa7, 0xd7,
+  0xb4, 0xbd, 0xcc, 0xa3, 0x46, 0x8b, 0x36, 0xc6, 0x05, 0xfd, 0x6b, 0x7b,
+  0x77, 0xb0, 0xb3, 0x1e, 0x76, 0x9e, 0x0e, 0x0b, 0x52, 0x51, 0xad, 0xab,
+  0x95, 0xa4, 0x61, 0x53, 0x96, 0x8f, 0xf6, 0x8f, 0x45, 0x98, 0xd1, 0x43,
+  0xe7, 0xa6, 0xfd, 0x68, 0x57, 0xfa, 0x67, 0x01, 0x3e, 0x8a, 0x10, 0x47,
+  0x95, 0x0a, 0x45, 0x23, 0x13, 0x8b, 0xf2, 0x9e, 0x46, 0x62, 0xb6, 0xda,
+  0x74, 0xda, 0xca, 0x19, 0x5e, 0x8f, 0x4f, 0x73, 0x81, 0xf4, 0xfc, 0xac,
+  0x3b, 0xdb, 0xd1, 0x38, 0x86, 0x2a, 0x99, 0xbe, 0x26, 0x67, 0x21, 0x3a,
+  0xb0, 0xb6, 0xec, 0x4e, 0xf0, 0xf3, 0xc3, 0x8c, 0x94, 0x0b, 0xe4, 0xde,
+  0xd4, 0x8f, 0xd3, 0xf5, 0x35, 0x58, 0xd8, 0xa7, 0x46, 0x48, 0xfb, 0x7c,
+  0xcd, 0xe9, 0x47, 0x81, 0xcd, 0xfb, 0x3e, 0xfd, 0x94, 0xcf, 0x16, 0x33,
+  0x7c, 0x8c, 0xf6, 0xb6, 0x3c, 0x26, 0x4e, 0x26, 0xb8, 0x1d, 0x38, 0x58,
+  0x89, 0x4d, 0xbe, 0x51, 0x27, 0x9e, 0xe5, 0x1b, 0xbb, 0x64, 0xcc, 0x95,
+  0x3c, 0x70, 0xc3, 0x2b, 0x80, 0x3b, 0x21, 0x2f, 0x54, 0xdd, 0xb1, 0x9a,
+  0x8d, 0xb6, 0x90, 0x52, 0x04, 0xca, 0x98, 0xf3, 0x1a, 0xba, 0x8d, 0x88,
+  0x73, 0xce, 0x7f, 0x13, 0x1d, 0xce, 0xc3, 0xd7, 0x64, 0x55, 0x5e, 0x4e,
+  0xec, 0xb9, 0x21, 0x25, 0x31, 0x2f, 0x16, 0x66, 0x9e, 0xa9, 0x2d, 0xba,
+  0x52, 0x15, 0xc2, 0x17, 0x44, 0xc0, 0x80, 0x0a, 0x1c, 0x02, 0xec, 0xa9,
+  0x90, 0x99, 0xcf, 0x06, 0xcf, 0xf6, 0x06, 0x3b, 0xbd, 0x96, 0xe1, 0x2b,
+  0x69, 0x82, 0xe6, 0x74, 0x8d, 0xf3, 0x99, 0x4d, 0x21, 0x18, 0xfc, 0xcb,
+  0x1c, 0x1c, 0x94, 0x3c, 0xd1, 0x9f, 0xa5, 0x9f, 0xb0, 0x7c, 0xd1, 0x65,
+  0x2d, 0x93, 0xd7, 0x5f, 0x9f, 0x0d, 0x2f, 0x77, 0xf7, 0xcf, 0xcf, 0x2e,
+  0xcc, 0x7f, 0xe9, 0xef, 0x7b, 0xf8, 0xfb, 0x5e, 0x60, 0x3d, 0xbe, 0x13,
+  0xc4, 0x8f, 0x82, 0x8d, 0x25, 0xa7, 0x87, 0xa7, 0x92, 0x5e, 0xc4, 0x7b,
+  0x46, 0xa5, 0x26, 0xf9, 0x27, 0x1f, 0xa0, 0x87, 0x0e, 0xcf, 0x4e, 0x4f,
+  0x8f, 0x0e, 0x2f, 0xbb, 0x6b, 0x72, 0x79, 0xd6, 0xc7, 0x4b, 0xfa, 0x6b,
+  0xf3, 0x6f, 0xbc, 0x2f, 0x50, 0xcc, 0x41, 0x77, 0x6f, 0x03, 0x29, 0xb5,
+  0xc8, 0x1b, 0xf1, 0xee, 0x96, 0xd1, 0x20, 0xbc, 0x4d, 0xab, 0xa2, 0x60,
+  0x61, 0xea, 0xf0, 0xc6, 0xca, 0x12, 0x02, 0xe4, 0x40, 0xfb, 0x57, 0xe3,
+  0xa9, 0xd1, 0xfc, 0x03, 0x2f, 0x49, 0x51, 0x4e, 0x32, 0x4e, 0x58, 0x97,
+  0xdf, 0xd3, 0x61, 0x14, 0xf8, 0xe5, 0x20, 0x89, 0xf5, 0x8d, 0x37, 0x29,
+  0x5b, 0xb9, 0x41, 0xef, 0x4c, 0x97, 0x4c, 0xbf, 0xf3, 0xfa, 0x46, 0xd4,
+  0x52, 0x85, 0x54, 0xfb, 0xee, 0x9f, 0xe3, 0x86, 0x33, 0xaa, 0x4e, 0xcf,
+  0x2e, 0x93, 0xf4, 0xea, 0x4a, 0xd3, 0xbf, 0x08, 0x61, 0x19, 0xf3, 0xb5,
+  0x6e, 0xcf, 0xf9, 0xa6, 0x4b, 0x5d, 0xb8, 0x9b, 0xee, 0x96, 0xcb, 0x93,
+  0xe1, 0x36, 0xf9, 0x7e, 0x18, 0x24, 0x31, 0x3c, 0x3d, 0xee, 0xb5, 0x23,
+  0x54, 0x14, 0x1b, 0x0d, 0xb5, 0x1d, 0xbe, 0x08, 0xb7, 0x38, 0x06, 0xa4,
+  0x77, 0x6d, 0xea, 0x5d, 0x91, 0x36, 0xb5, 0x98, 0x80, 0x17, 0xd4, 0xa5,
+  0x75, 0xc8, 0xd3, 0x75, 0xea, 0x44, 0x57, 0x80, 0x89, 0xa7, 0x1d, 0xe6,
+  0xf1, 0x6c, 0xde, 0x3c, 0x88, 0xc7, 0xb4, 0x87, 0x5c, 0x5b, 0xd2, 0x42,
+  0xd6, 0xc9, 0x48, 0xa1, 0x46, 0x30, 0x86, 0x75, 0x9a, 0xcf, 0x75, 0xb7,
+  0x23, 0x03, 0xac, 0x3a, 0xbe, 0xc6, 0x9f, 0xf3, 0x9e, 0xc2, 0xab, 0xf8,
+  0x16, 0xf6, 0xfa, 0xd2, 0x0f, 0xf6, 0x03, 0x2b, 0xdf, 0x74, 0x40, 0xe3,
+  0x79, 0xb2, 0x5d, 0x36, 0x48, 0x73, 0xcb, 0xaf, 0x91, 0xc0, 0xe8, 0xf5,
+  0x2b, 0x2a, 0x6c, 0x65, 0xcd, 0x5b, 0xa2, 0x96, 0xc6, 0x63, 0xc5, 0x6c,
+  0x3a, 0x91, 0x9f, 0xe8, 0x19, 0xa8, 0x16, 0xd3, 0x08, 0xf8, 0xc1, 0x73,
+  0x43, 0x92, 0xd6, 0x32, 0xbd, 0x13, 0x27, 0xe4, 0xd7, 0x74, 0x66, 0x19,
+  0x9f, 0x3f, 0x68, 0x85, 0x8e, 0x5f, 0xb5, 0x42, 0xc7, 0x87, 0x62, 0xca,
+  0x40, 0x62, 0xf5, 0xcd, 0x26, 0x78, 0x5d, 0x5e, 0x5d, 0xd5, 0x59, 0xd3,
+  0x15, 0xcc, 0x87, 0xf2, 0xc8, 0xf6, 0x05, 0xe8, 0x55, 0x3c, 0x00, 0x6d,
+  0x3b, 0xfd, 0x38, 0x49, 0x15, 0xd8, 0xc6, 0x07, 0x3a, 0xe1, 0xe6, 0x06,
+  0x11, 0xb0, 0x60, 0xfb, 0x09, 0x0f, 0xf6, 0xcb, 0x59, 0x40, 0x41, 0x72,
+  0x2b, 0xf6, 0xa8, 0x48, 0xac, 0x2e, 0xd6, 0xe5, 0x36, 0x9f, 0xcf, 0x49,
+  0xed, 0x07, 0x97, 0x03, 0x2d, 0x8d, 0xf5, 0x3b, 0x8f, 0x32, 0xb3, 0x1e,
+  0xd8, 0x2e, 0x8a, 0xa8, 0x30, 0xaa, 0xe3, 0xd8, 0xa2, 0x51, 0x47, 0x99,
+  0xd9, 0xa6, 0x59, 0xa8, 0xca, 0x92, 0xbd, 0xef, 0x65, 0xf0, 0x8a, 0x90,
+  0x9a, 0x50, 0xb6, 0x6e, 0x91, 0xf2, 0x41, 0x23, 0x81, 0xeb, 0x72, 0xdb,
+  0x04, 0xd4, 0x1f, 0x03, 0xf6, 0x38, 0xc8, 0xb5, 0xf5, 0x43, 0x0d, 0x8f,
+  0xff, 0xe7, 0x91, 0xcb, 0xb7, 0xb6, 0x09, 0xcd, 0x0c, 0x5b, 0x8d, 0xc1,
+  0x81, 0x93, 0xf5, 0xfe, 0x61, 0xd2, 0x5f, 0x47, 0x47, 0x5c, 0x54, 0xae,
+  0xec, 0x80, 0x2a, 0x61, 0x0d, 0xd0, 0xfd, 0x9a, 0x40, 0x49, 0xd8, 0xe6,
+  0x0c, 0xa7, 0x32, 0x50, 0x2a, 0xb0, 0x84, 0x3c, 0xd9, 0x3a, 0x4a, 0x08,
+  0x8e, 0x46, 0xf0, 0xf0, 0x3e, 0x7a, 0x94, 0xb5, 0xa8, 0xed, 0xbc, 0x20,
+  0x5d, 0x0a, 0x17, 0x7b, 0x00, 0xad, 0xd4, 0xfc, 0x16, 0x4e, 0xec, 0x5c,
+  0x34, 0xff, 0x42, 0xdf, 0x7b, 0x45, 0xfb, 0x17, 0x8c, 0x1d, 0xde, 0xa6,
+  0x1e, 0xf3, 0xa6, 0x26, 0xa6, 0xa0, 0xfe, 0x5f, 0x8d, 0xf5, 0xf9, 0x5a,
+  0xcd, 0xf7, 0x25, 0x19, 0x50, 0x6a, 0xeb, 0x13, 0x12, 0x12, 0xb6, 0x09,
+  0xf6, 0x86, 0xcd, 0xc4, 0xd5, 0xb9, 0x66, 0x37, 0x03, 0xa0, 0x23, 0x42,
+  0x43, 0xd4, 0x8d, 0xa4, 0x5c, 0x91, 0x84, 0xa7, 0xcb, 0x4d, 0x33, 0x3e,
+  0x27, 0x5e, 0xe2, 0xf8, 0x80, 0x80, 0xa6, 0x53, 0x6e, 0xa5, 0x46, 0x33,
+  0xd2, 0x8a, 0xf0, 0x66, 0x34, 0x01, 0x76, 0xbf, 0xe8, 0xcf, 0xb2, 0x19,
+  0x01, 0xc2, 0xf8, 0x41, 0x23, 0x8f, 0x4a, 0x52, 0x4d, 0xdb, 0x57, 0x26,
+  0x5b, 0xa7, 0x8d, 0x04, 0x52, 0x27, 0x9c, 0x7a, 0x40, 0xdf, 0x0c, 0x11,
+  0x32, 0x65, 0x21, 0x78, 0x0c, 0xb2, 0x3c, 0xec, 0xd7, 0xe1, 0x3b, 0xba,
+  0x35, 0x7a, 0x65, 0xd1, 0xa3, 0x9f, 0x23, 0xc9, 0x44, 0x67, 0x9f, 0x3a,
+  0xdb, 0x64, 0x45, 0x0c, 0x8f, 0xdd, 0xf2, 0xca, 0xca, 0x73, 0x9e, 0x73,
+  0xe1, 0x34, 0x6b, 0x24, 0xca, 0xc6, 0x7d, 0x97, 0x70, 0x90, 0xc0, 0xb4,
+  0x4d, 0x27, 0x3a, 0xcd, 0x81, 0x19, 0x23, 0x6b, 0x9c, 0xa3, 0x04, 0xee,
+  0x16, 0xe6, 0xe6, 0x62, 0x3a, 0x00, 0xf2, 0x05, 0xf6, 0xcc, 0x39, 0x58,
+  0x57, 0xbf, 0x24, 0x77, 0x3f, 0x2e, 0x11, 0xb4, 0x43, 0xe4, 0x3e, 0x69,
+  0x26, 0xb1, 0x3d, 0x29, 0x99, 0x7d, 0x41, 0x32, 0x9d, 0x80, 0x95, 0xcd,
+  0x6d, 0x8a, 0x98, 0x97, 0xf8, 0x5a, 0x30, 0x06, 0x41, 0x2d, 0x70, 0xcc,
+  0x33, 0xb8, 0xad, 0x6c, 0xb6, 0x08, 0xc5, 0x1b, 0xab, 0x89, 0x7a, 0x0c,
+  0xb4, 0xa3, 0x46, 0x0a, 0x8b, 0xbd, 0x70, 0x9f, 0x62, 0xab, 0xd9, 0x4f,
+  0x40, 0xdc, 0x84, 0x87, 0x4a, 0x2f, 0x97, 0xfe, 0xc8, 0x6d, 0x67, 0x97,
+  0x29, 0x1c, 0xf5, 0x57, 0xca, 0x43, 0xb4, 0xe7, 0xcd, 0xc5, 0xb2, 0x01,
+  0xc9, 0x22, 0x19, 0x23, 0x48, 0xbe, 0xb5, 0x93, 0xc2, 0x53, 0x78, 0x7f,
+  0x53, 0x4e, 0xd9, 0x5c, 0x0c, 0xc2, 0x0e, 0x9a, 0xca, 0x93, 0xdc, 0x23,
+  0x91, 0x95, 0xd0, 0x4f, 0x70, 0xb7, 0xde, 0x01, 0x58, 0xd5, 0x8a, 0x1d,
+  0x18, 0xd5, 0x26, 0x4b, 0x09, 0x37, 0xac, 0xd0, 0xc2, 0xbb, 0x30, 0xf1,
+  0xc1, 0x9c, 0xf3, 0x51, 0x59, 0xcb, 0x7e, 0xa1, 0x74, 0x19, 0xb3, 0xc5,
+  0xd2, 0x0a, 0x62, 0x59, 0xc8, 0x00, 0x94, 0xba, 0x48, 0xe3, 0xc9, 0x7a,
+  0x19, 0x90, 0x3e, 0xd4, 0x45, 0x85, 0xe6, 0x94, 0x64, 0x66, 0xb6, 0x49,
+  0x96, 0x4d, 0xc8, 0x77, 0x89, 0xbd, 0x83, 0x46, 0x39, 0xd5, 0xff, 0x06,
+  0x44, 0x5c, 0x92, 0x89, 0x66, 0x4e, 0xe1, 0x4d, 0x4a, 0xc6, 0x6c, 0xb3,
+  0x48, 0x97, 0x4d, 0x5d, 0x1b, 0x09, 0xf2, 0xa8, 0x78, 0x72, 0x91, 0x80,
+  0x88, 0x7f, 0x1d, 0xdb, 0x76, 0x49, 0x14, 0xca, 0x5f, 0xc8, 0xd7, 0x74,
+  0xce, 0x96, 0xc8, 0xa3, 0x73, 0x70, 0x96, 0xdc, 0xb4, 0x93, 0xde, 0x91,
+  0x5f, 0x23, 0xd7, 0x88, 0x02, 0xd7, 0xb9, 0x29, 0xbd, 0xe5, 0x8f, 0x9b,
+  0x10, 0xa8, 0xc5, 0xa1, 0x28, 0xd3, 0x8d, 0xe9, 0x83, 0x6b, 0xd1, 0xcb,
+  0x7d, 0x51, 0xfc, 0x9b, 0xc7, 0x08, 0x62, 0x3f, 0x91, 0x76, 0x43, 0xb1,
+  0xc3, 0xac, 0xe9, 0xf3, 0x37, 0xf7, 0xd7, 0x13, 0x25, 0x6b, 0xe2, 0xbb,
+  0x1c, 0xed, 0x2a, 0xdc, 0x1a, 0xc8, 0x58, 0x40, 0x63, 0x79, 0x0d, 0xe5,
+  0xd8, 0x77, 0x9b, 0x23, 0x06, 0xc0, 0xdd, 0x37, 0xdf, 0x1e, 0x9c, 0x7c,
+  0x38, 0xda, 0xfd, 0x53, 0x42, 0xff, 0xda, 0xe3, 0x7f, 0xed, 0xad, 0x47,
+  0x57, 0xc9, 0x08, 0xa7, 0x8d, 0x37, 0x1b, 0x49, 0xfd, 0x30, 0x1b, 0x95,
+  0x53, 0xbb, 0x4a, 0x32, 0x17, 0x1a, 0x40, 0xea, 0xc9, 0xed, 0xad, 0xa9,
+  0x58, 0xe2, 0x36, 0xee, 0x4a, 0xea, 0x5a, 0x80, 0x19, 0x2a, 0x65, 0x10,
+  0xb8, 0xf2, 0x73, 0x82, 0x1a, 0xa4, 0x4d, 0xa9, 0xf0, 0x92, 0x10, 0xd6,
+  0x32, 0xb0, 0x0c, 0x33, 0x1b, 0xe9, 0x81, 0xd6, 0xad, 0xdb, 0x91, 0x1a,
+  0x7c, 0xb5, 0x38, 0x2e, 0x39, 0x4f, 0x56, 0x04, 0x82, 0xdf, 0xc8, 0x25,
+  0x80, 0x03, 0x94, 0xed, 0x8e, 0xdf, 0x15, 0x8d, 0x98, 0xe8, 0x57, 0x1e,
+  0x94, 0x11, 0x63, 0x83, 0x1c, 0xff, 0x16, 0x17, 0x0c, 0x34, 0x62, 0xe0,
+  0xfb, 0x2a, 0x67, 0x23, 0xd1, 0x5a, 0xbc, 0x4c, 0x2c, 0xb3, 0x1f, 0x4f,
+  0x68, 0x3f, 0x4e, 0x4b, 0xd1, 0xcd, 0x35, 0xdf, 0xa3, 0x6a, 0xf1, 0xbf,
+  0x78, 0x8c, 0x73, 0x96, 0x28, 0x47, 0x98, 0x66, 0x5a, 0x81, 0x30, 0xf6,
+  0xbc, 0x46, 0xb3, 0x42, 0x34, 0xb9, 0x86, 0xc0, 0x60, 0xa2, 0x84, 0x69,
+  0xe2, 0x10, 0xc7, 0x0b, 0xfd, 0x6b, 0x50, 0xb6, 0x10, 0x41, 0x4f, 0xa6,
+  0x69, 0x30, 0x14, 0x4e, 0x32, 0x93, 0xb4, 0x53, 0x73, 0x5e, 0xdc, 0x8e,
+  0x34, 0x2b, 0xf6, 0x30, 0xcd, 0xb6, 0x34, 0xa0, 0xa6, 0xd7, 0xcf, 0xf6,
+  0xfb, 0xf2, 0xef, 0x66, 0xc6, 0x53, 0xf9, 0x48, 0xec, 0x0e, 0x93, 0x3b,
+  0x69, 0x69, 0xcf, 0xdd, 0x71, 0xe7, 0x44, 0x2c, 0xff, 0x14, 0x2b, 0xb3,
+  0x8d, 0x06, 0xbd, 0x12, 0xa8, 0x49, 0xc0, 0x99, 0x05, 0x8b, 0x20, 0xb7,
+  0xad, 0xcd, 0xe5, 0xf3, 0xae, 0x28, 0x9d, 0x12, 0xb3, 0xc7, 0x4a, 0xde,
+  0x7a, 0x6e, 0xe9, 0xe5, 0x1a, 0xe8, 0x8a, 0xd4, 0xae, 0x8e, 0xb3, 0xe4,
+  0x62, 0x38, 0xfa, 0x94, 0x55, 0x63, 0x4a, 0xe9, 0x1c, 0x1b, 0x4d, 0x11,
+  0xba, 0xd7, 0x95, 0xb8, 0x51, 0x82, 0x7d, 0xa3, 0xe2, 0x0f, 0x11, 0x6b,
+  0x5d, 0xff, 0xa5, 0x6b, 0x4f, 0x7b, 0xb1, 0x1c, 0x9b, 0x3d, 0x3c, 0xb0,
+  0xec, 0x1b, 0x7a, 0x61, 0xb5, 0xcf, 0xb5, 0x02, 0xe3, 0xe1, 0xf6, 0x0e,
+  0xa0, 0x27, 0x98, 0x61, 0x7d, 0xd1, 0x5b, 0x4d, 0xd9, 0x2e, 0xe8, 0x0b,
+  0x73, 0x29, 0xb8, 0x28, 0x06, 0xa5, 0xe2, 0x21, 0x21, 0x7d, 0x39, 0xce,
+  0xc6, 0xae, 0x0e, 0xf2, 0x64, 0xe1, 0xd5, 0x2f, 0x1e, 0x34, 0x8d, 0x7d,
+  0x13, 0xb7, 0x18, 0x2b, 0x6b, 0x4a, 0x77, 0x02, 0x6e, 0x83, 0x30, 0xc9,
+  0x67, 0x5a, 0xde, 0x53, 0xac, 0xa0, 0x4d, 0x3e, 0x34, 0x2b, 0x27, 0xbc,
+  0x1f, 0x46, 0x0f, 0x96, 0x39, 0xb4, 0x4f, 0xba, 0x0b, 0x7f, 0x76, 0xa0,
+  0xe1, 0xb1, 0xe8, 0x0e, 0xb0, 0xe2, 0xa0, 0x83, 0x9f, 0x4e, 0x1d, 0x7a,
+  0xba, 0x61, 0xa7, 0x27, 0xdf, 0xf7, 0x2e, 0xf3, 0x3f, 0x76, 0xd1, 0x60,
+  0xc4, 0xa3, 0xb2, 0xb9, 0xb1, 0x57, 0x0e, 0x06, 0x4c, 0x3e, 0xa3, 0xe4,
+  0x6a, 0xd1, 0x40, 0x29, 0x57, 0xcb, 0xac, 0x11, 0x9c, 0x94, 0x38, 0x31,
+  0x82, 0xb8, 0xd8, 0x2d, 0xf3, 0x4e, 0x94, 0x8d, 0x72, 0x8a, 0x09, 0xdf,
+  0x4e, 0x83, 0xfc, 0x65, 0x72, 0xa4, 0xc0, 0x28, 0x05, 0xbd, 0x89, 0xf9,
+  0x2e, 0x81, 0x4f, 0xea, 0x9a, 0xa8, 0x2c, 0x68, 0xe8, 0x69, 0x90, 0xc6,
+  0x8a, 0xa9, 0x36, 0xff, 0xe7, 0x2d, 0xea, 0x26, 0x27, 0x9a, 0x3b, 0x43,
+  0x8e, 0xf3, 0x4f, 0x29, 0x92, 0xb9, 0x18, 0xe9, 0x3b, 0x35, 0xdc, 0x07,
+  0x11, 0x50, 0x51, 0x4b, 0xab, 0x5c, 0x72, 0x68, 0xff, 0x69, 0x43, 0x23,
+  0x30, 0xbc, 0xaa, 0x9a, 0xf9, 0xbb, 0xc0, 0x80, 0x66, 0x91, 0x7d, 0x98,
+  0xf2, 0x50, 0x78, 0xa5, 0x2e, 0x56, 0x04, 0x35, 0xbf, 0x3b, 0x8a, 0xf9,
+  0x04, 0xaa, 0x98, 0xbe, 0x03, 0xe5, 0xc5, 0xe3, 0xe1, 0xa9, 0x4b, 0x39,
+  0x91, 0x68, 0x9e, 0x04, 0x8d, 0x93, 0x34, 0xb1, 0x84, 0xf4, 0xae, 0x0c,
+  0xf0, 0x83, 0x01, 0x2d, 0xcd, 0x56, 0x34, 0x5d, 0x5f, 0x3e, 0x98, 0x17,
+  0x71, 0x33, 0xf6, 0xcd, 0xfe, 0xaf, 0x63, 0x41, 0x35, 0xbd, 0x5c, 0xc7,
+  0x65, 0xf1, 0xd7, 0x45, 0x31, 0x6e, 0x2c, 0xc6, 0x0a, 0x3a, 0x69, 0xd9,
+  0xf3, 0xe8, 0x80, 0x24, 0x82, 0x68, 0xd1, 0x25, 0xdd, 0x8d, 0x8f, 0x0f,
+  0x49, 0xaa, 0x39, 0x65, 0xb2, 0x10, 0xfc, 0x94, 0xae, 0x9d, 0xa9, 0x97,
+  0xf3, 0x72, 0x93, 0x9b, 0x15, 0xaa, 0xc6, 0x37, 0xc8, 0xd2, 0x43, 0xec,
+  0x32, 0x53, 0xe7, 0x5d, 0x1c, 0x13, 0x23, 0xcd, 0x8a, 0xa2, 0x94, 0x93,
+  0x48, 0xa2, 0x8c, 0xdc, 0xb2, 0x50, 0x41, 0xbd, 0xac, 0x9f, 0x21, 0x42,
+  0xf0, 0x86, 0xe6, 0x3c, 0x9b, 0xd6, 0x99, 0x45, 0x2a, 0xd8, 0x77, 0x9c,
+  0x29, 0x02, 0xb3, 0x98, 0xec, 0xa3, 0xbc, 0x62, 0xff, 0x56, 0x1e, 0x3d,
+  0xe5, 0xe8, 0x89, 0x51, 0x41, 0xa4, 0x33, 0x64, 0xe8, 0xd1, 0x3e, 0x79,
+  0xd0, 0x7c, 0x6e, 0x69, 0x41, 0x77, 0x9d, 0xe6, 0x73, 0x07, 0xb7, 0x4f,
+  0x69, 0xe7, 0x4d, 0x72, 0xa4, 0x75, 0xaa, 0x72, 0xa5, 0x7b, 0xe4, 0xad,
+  0x42, 0xce, 0x05, 0xd3, 0x1b, 0x66, 0x06, 0xa6, 0x58, 0x4d, 0xbf, 0x7f,
+  0xd5, 0xcc, 0xfb, 0xd1, 0x25, 0xc0, 0x5a, 0xb7, 0xb7, 0xc0, 0xf4, 0x4a,
+  0xf2, 0xe1, 0xdf, 0x2b, 0x15, 0xc8, 0x1d, 0x81, 0x90, 0x93, 0x93, 0x77,
+  0x1c, 0x3a, 0x3e, 0xbc, 0xa0, 0xbf, 0xe5, 0x96, 0x0d, 0x60, 0x80, 0x43,
+  0x41, 0x54, 0xbf, 0x9c, 0xa9, 0xf7, 0xfe, 0xdb, 0x6e, 0x02, 0xc9, 0xe6,
+  0xd9, 0x70, 0xfb, 0xd9, 0xab, 0x9d, 0x30, 0xa9, 0x79, 0x93, 0xbe, 0xe1,
+  0x68, 0x52, 0x3e, 0x1b, 0x3c, 0xdf, 0x19, 0xec, 0x6c, 0x75, 0x7a, 0x43,
+  0xd3, 0x2d, 0xa8, 0xa3, 0x18, 0x1a, 0x4e, 0xc9, 0x1d, 0xed, 0xc5, 0x41,
+  0x53, 0xe0, 0xf2, 0x7f, 0x15, 0x04, 0xe8, 0xa7, 0xc1, 0x5c, 0x64, 0x77,
+  0x66, 0xab, 0xc5, 0x8c, 0xe1, 0xe4, 0x24, 0xaf, 0xc5, 0xf5, 0x49, 0xb7,
+  0x99, 0xde, 0x2f, 0x94, 0x67, 0xd6, 0xce, 0xfd, 0xc2, 0x23, 0x74, 0x61,
+  0x72, 0x5c, 0x3e, 0x12, 0x19, 0xa8, 0x4d, 0xa7, 0x2a, 0x20, 0xc6, 0x10,
+  0x7f, 0xfe, 0xcd, 0x1d, 0x20, 0x9e, 0x43, 0x6f, 0xf7, 0xd5, 0xe0, 0x33,
+  0x7f, 0x4d, 0x49, 0x13, 0xef, 0xa7, 0xf5, 0x38, 0xcf, 0x57, 0xda, 0x18,
+  0xca, 0xb5, 0xf1, 0xd7, 0x05, 0x08, 0x3f, 0xcc, 0x36, 0xcd, 0x53, 0x0e,
+  0x2b, 0x3a, 0x9e, 0xa4, 0xa0, 0x59, 0x52, 0x23, 0xcd, 0x16, 0x5b, 0xd5,
+  0xae, 0xb8, 0xb4, 0x89, 0xbe, 0x59, 0xa8, 0xdd, 0xe0, 0xce, 0x9b, 0xe2,
+  0x5c, 0x77, 0x54, 0x29, 0x73, 0x16, 0x98, 0x1a, 0x64, 0x5e, 0x85, 0x09,
+  0x0a, 0x46, 0x4e, 0x80, 0x28, 0xd2, 0xcc, 0x7d, 0x5d, 0xd2, 0x3c, 0xc5,
+  0x26, 0x15, 0x5e, 0x03, 0x90, 0x63, 0x59, 0xe3, 0xc6, 0x9e, 0x7d, 0x01,
+  0xae, 0xfc, 0xd9, 0x43, 0x99, 0xb4, 0x0c, 0x94, 0x34, 0xa2, 0x0c, 0x32,
+  0xb7, 0x67, 0x82, 0x50, 0x2e, 0xdb, 0x4f, 0x34, 0x10, 0x26, 0x23, 0x49,
+  0xe0, 0x8a, 0x60, 0x3c, 0x83, 0x70, 0xce, 0x52, 0xaa, 0xbf, 0x9d, 0xad,
+  0x08, 0x91, 0x43, 0xcf, 0x8c, 0x0f, 0xcc, 0x41, 0xd8, 0x41, 0x45, 0x76,
+  0x4f, 0xd2, 0xb8, 0x16, 0x75, 0xa2, 0xaa, 0x72, 0x72, 0xe6, 0xd8, 0x40,
+  0x38, 0xab, 0x64, 0x04, 0x0d, 0xa4, 0x0b, 0x7a, 0x12, 0xc9, 0x4a, 0x1b,
+  0xe3, 0x74, 0xd6, 0x96, 0x8a, 0xa9, 0x00, 0xf7, 0x0d, 0x71, 0xb9, 0x3c,
+  0xcd, 0xaa, 0x5d, 0xba, 0xe9, 0xc0, 0x0d, 0xec, 0xd0, 0x08, 0x4d, 0xc4,
+  0xd9, 0x43, 0x70, 0x02, 0xf6, 0x8c, 0x30, 0x17, 0x06, 0xe6, 0x3a, 0xad,
+  0x85, 0x47, 0x7a, 0xc4, 0xbb, 0x71, 0xc5, 0xd6, 0xa9, 0xd2, 0xfb, 0xc7,
+  0xf7, 0xa3, 0xb7, 0x6b, 0x64, 0xa6, 0xa7, 0x70, 0x95, 0x78, 0xd4, 0x5d,
+  0xf0, 0x11, 0x28, 0x88, 0x2d, 0xd2, 0x53, 0xa1, 0x8c, 0x65, 0xbe, 0x56,
+  0x33, 0x99, 0x8d, 0x18, 0x37, 0x2c, 0xd7, 0xff, 0xbc, 0x02, 0xf4, 0xed,
+  0x9c, 0x8a, 0x6e, 0x14, 0x2d, 0xcf, 0x79, 0x87, 0xff, 0x07, 0xc3, 0x32,
+  0x57, 0x1e, 0xa3, 0xa6, 0x9f, 0x70, 0x28, 0xdc, 0xe8, 0x7a, 0x76, 0x23,
+  0x89, 0xf2, 0xcf, 0x8e, 0x21, 0x6f, 0x98, 0x42, 0x14, 0x15, 0x83, 0xc7,
+  0x31, 0x51, 0x16, 0x6d, 0x2b, 0x64, 0x6f, 0x5b, 0x02, 0x90, 0x79, 0x56,
+  0x91, 0x14, 0x04, 0x0a, 0xb7, 0xaf, 0x08, 0xd0, 0xd8, 0xc5, 0x62, 0x36,
+  0xff, 0xe1, 0x57, 0xc7, 0x80, 0xc4, 0x9a, 0x43, 0x5f, 0x48, 0xaa, 0x24,
+  0xf7, 0x9f, 0x09, 0xbb, 0xad, 0x11, 0x76, 0x9d, 0x5b, 0x93, 0x31, 0x4d,
+  0x5a, 0x64, 0x5c, 0x1d, 0x1d, 0x39, 0x51, 0x65, 0x58, 0x40, 0x7f, 0xa2,
+  0xd3, 0x52, 0x64, 0x81, 0x14, 0x52, 0x0d, 0x93, 0xa5, 0x0e, 0xa2, 0x1c,
+  0x9d, 0x2f, 0x7c, 0x5d, 0x53, 0x7a, 0xd3, 0x9a, 0xa9, 0x16, 0x58, 0xb1,
+  0x08, 0x30, 0xb8, 0x6e, 0xbf, 0x32, 0x01, 0x7a, 0x16, 0xe2, 0x89, 0xe4,
+  0xf3, 0xf1, 0x0a, 0x05, 0x58, 0x93, 0x8e, 0x39, 0x6e, 0xa7, 0x2e, 0xd3,
+  0x00, 0x31, 0xba, 0x0f, 0x10, 0x3c, 0x39, 0x65, 0x62, 0x9e, 0x3f, 0x55,
+  0x4b, 0x28, 0x24, 0xf0, 0x9f, 0xc0, 0x55, 0xd3, 0x1d, 0x61, 0xce, 0x27,
+  0xdd, 0x92, 0x9a, 0x9c, 0xe0, 0xb7, 0xa6, 0x14, 0x2f, 0x82, 0x26, 0x8c,
+  0x37, 0x47, 0xf6, 0xca, 0x1b, 0xba, 0xd9, 0xff, 0x2c, 0x0e, 0x0f, 0x73,
+  0x54, 0x53, 0x3f, 0x08, 0x22, 0x99, 0x29, 0xe8, 0xbb, 0x66, 0xa1, 0xd3,
+  0x34, 0xc4, 0x9b, 0x33, 0x97, 0xe3, 0xf8, 0xc6, 0x9f, 0x3d, 0xde, 0x71,
+  0xc4, 0xd0, 0x58, 0x33, 0x09, 0xfe, 0xef, 0xba, 0x93, 0xf7, 0xe6, 0xf1,
+  0xd9, 0xfb, 0xb9, 0xd3, 0xb7, 0x7a, 0xf6, 0x98, 0xe9, 0x54, 0x11, 0x88,
+  0x6f, 0x3c, 0x47, 0x0f, 0x82, 0xe8, 0x6c, 0x2b, 0x58, 0x87, 0x4f, 0x5b,
+  0xca, 0x78, 0x46, 0xd1, 0x9b, 0x5f, 0x6b, 0xd5, 0xb1, 0x19, 0x61, 0x81,
+  0x52, 0xe7, 0xe3, 0xcd, 0xb1, 0xb7, 0x12, 0x6b, 0xef, 0xf3, 0xf1, 0x88,
+  0xce, 0x88, 0x16, 0xc8, 0xd0, 0xfb, 0x64, 0xf6, 0x7f, 0xc3, 0x9b, 0x79,
+  0x04, 0x9f, 0x4a, 0x3f, 0xde, 0x9c, 0x66, 0x60, 0x88, 0xd2, 0x18, 0x8c,
+  0xef, 0xcf, 0x7a, 0x49, 0x3d, 0x36, 0x38, 0xd9, 0x17, 0x0c, 0x17, 0x03,
+  0x62, 0x43, 0x5c, 0x74, 0x16, 0xb9, 0x63, 0xe3, 0x6f, 0x11, 0x27, 0xa6,
+  0x4d, 0x83, 0xb1, 0xfc, 0x40, 0xd8, 0x8f, 0xf6, 0x06, 0xdb, 0xea, 0xb5,
+  0xe7, 0x8c, 0x58, 0x4f, 0x70, 0x1f, 0xc8, 0x42, 0xc7, 0x9b, 0xcb, 0x61,
+  0x98, 0xca, 0xf2, 0x11, 0x89, 0x69, 0x74, 0xf9, 0xfe, 0xff, 0x6c, 0x88,
+  0xec, 0x1e, 0x65, 0xec, 0x28, 0x17, 0x43, 0xb8, 0x66, 0x3e, 0x21, 0xd3,
+  0x2d, 0x80, 0x97, 0x93, 0x16, 0xdd, 0x78, 0x47, 0x08, 0xe0, 0xae, 0x25,
+  0xd7, 0x38, 0xc5, 0xec, 0xa6, 0x88, 0x6c, 0xe6, 0x4c, 0x8a, 0xf8, 0xc6,
+  0xde, 0x3c, 0x93, 0x3e, 0x0d, 0xaf, 0x2f, 0xbb, 0x76, 0x80, 0x7d, 0xb8,
+  0x62, 0xb3, 0xda, 0xcd, 0x19, 0xdf, 0x97, 0xc1, 0x0e, 0x5c, 0x7e, 0x3b,
+  0x2a, 0xf5, 0x96, 0x5c, 0xef, 0xad, 0xcb, 0x72, 0xf7, 0xf3, 0xd6, 0x65,
+  0xe9, 0xde, 0x59, 0x75, 0x4d, 0x0e, 0x33, 0xc6, 0xfa, 0xf8, 0x3e, 0x37,
+  0xbc, 0x04, 0x04, 0x05, 0x68, 0x6f, 0x15, 0x35, 0x02, 0xe3, 0x04, 0x4b,
+  0x4c, 0xaf, 0x76, 0x75, 0x00, 0x81, 0x69, 0x24, 0x92, 0x8b, 0x98, 0xb0,
+  0x49, 0x8c, 0xc0, 0x8b, 0x28, 0xf3, 0xc9, 0xa8, 0x2a, 0xef, 0x6b, 0x68,
+  0x4f, 0x6a, 0x4f, 0xa5, 0x8c, 0x2e, 0xbc, 0x49, 0xeb, 0x50, 0x31, 0x9c,
+  0x5a, 0x8a, 0xb0, 0xaf, 0x2f, 0xdf, 0x9f, 0x30, 0x0d, 0x2a, 0x67, 0x46,
+  0x51, 0x22, 0x87, 0xf4, 0x79, 0x31, 0x9a, 0x99, 0xf5, 0x37, 0x0a, 0x4a,
+  0xc3, 0xd2, 0x4c, 0x05, 0x64, 0x90, 0xbe, 0x85, 0xa8, 0x90, 0x04, 0x15,
+  0xe7, 0x31, 0x5f, 0xbf, 0xb8, 0x82, 0x5c, 0x34, 0x4d, 0x16, 0x17, 0xb9,
+  0x44, 0x6b, 0xc1, 0x1e, 0x51, 0x78, 0xc5, 0xf6, 0xa7, 0xfe, 0xfd, 0xfd,
+  0x7d, 0x9f, 0x7a, 0xe7, 0x14, 0x13, 0x32, 0xd9, 0x0e, 0x89, 0x45, 0x85,
+  0xed, 0x97, 0xfe, 0x3b, 0x5a, 0x0a, 0x7a, 0x24, 0x38, 0x7d, 0x9e, 0xa6,
+  0x06, 0xb6, 0x7e, 0xb0, 0x0d, 0x5a, 0x87, 0x02, 0x29, 0x5e, 0x96, 0xaa,
+  0x17, 0xe4, 0x14, 0x69, 0x5b, 0xd9, 0xea, 0x8a, 0x34, 0xa7, 0x7c, 0x39,
+  0xd2, 0x5d, 0x5f, 0xff, 0x22, 0x55, 0x84, 0x54, 0x22, 0x89, 0x49, 0x2c,
+  0x2a, 0xf2, 0x3f, 0xb1, 0x85, 0xd1, 0x8b, 0xc0, 0x99, 0x45, 0x27, 0x51,
+  0xbf, 0xbe, 0x8d, 0x8e, 0xb5, 0x2c, 0x13, 0x65, 0x17, 0xa5, 0xb6, 0xbd,
+  0xe3, 0x1b, 0xd1, 0x13, 0x99, 0x0a, 0x02, 0x20, 0x75, 0xac, 0xa6, 0xd9,
+  0x6c, 0xa6, 0x75, 0x90, 0xe7, 0xa7, 0xf0, 0xe7, 0x06, 0x1a, 0x5e, 0x54,
+  0xc7, 0x76, 0xd4, 0xbb, 0xb5, 0x63, 0x5b, 0x55, 0xf3, 0x0e, 0x8c, 0x18,
+  0xe0, 0xc0, 0x00, 0xdd, 0x6a, 0xd9, 0x76, 0xcf, 0xf4, 0x83, 0x08, 0xa2,
+  0xb8, 0x6b, 0x7a, 0x5e, 0xa4, 0x26, 0x27, 0x87, 0x89, 0x9f, 0x2f, 0xee,
+  0xa8, 0xe0, 0x66, 0x59, 0x75, 0xcd, 0x28, 0x21, 0xe6, 0x09, 0x8b, 0x66,
+  0x8d, 0xa6, 0x89, 0x47, 0x87, 0x92, 0x24, 0xff, 0xd6, 0xe7, 0x4b, 0x15,
+  0x9e, 0x95, 0x05, 0x25, 0x1a, 0x88, 0x0b, 0x78, 0xa3, 0x3f, 0x61, 0xb1,
+  0x32, 0x49, 0x0b, 0x33, 0x13, 0xe6, 0xc4, 0x86, 0x10, 0x8b, 0xe9, 0xf4,
+  0xcd, 0xb4, 0x5c, 0xd4, 0x0f, 0x1b, 0x89, 0x30, 0x5f, 0x0b, 0x59, 0x6c,
+  0xc3, 0x09, 0x7f, 0x58, 0x4b, 0xb3, 0xbe, 0x8b, 0xe2, 0x56, 0xef, 0x45,
+  0x02, 0x81, 0xd7, 0xec, 0x5b, 0xec, 0x34, 0xb7, 0xe1, 0x7d, 0xec, 0xdf,
+  0xfc, 0xb6, 0xa3, 0xb3, 0x0c, 0x4f, 0x24, 0xdb, 0x79, 0x4f, 0x33, 0xf4,
+  0x5c, 0x14, 0x21, 0x66, 0xe5, 0x25, 0xad, 0xa8, 0x8f, 0x6d, 0x90, 0xee,
+  0x0d, 0xe6, 0x66, 0x53, 0x2f, 0xb9, 0x0b, 0xff, 0x43, 0xde, 0x2c, 0xc1,
+  0xf5, 0xbb, 0x6a, 0x52, 0x8c, 0xeb, 0x77, 0x14, 0x35, 0x9c, 0x32, 0x6c,
+  0x99, 0xa2, 0xfd, 0x2c, 0xa2, 0x41, 0x72, 0x1e, 0x41, 0x64, 0x21, 0x20,
+  0x6a, 0x9b, 0x4b, 0x7d, 0xfe, 0x2b, 0xb9, 0xd6, 0x6c, 0x66, 0x25, 0x40,
+  0xbb, 0x8c, 0xc4, 0x4e, 0xac, 0x35, 0x19, 0x20, 0x3d, 0xd8, 0xb4, 0x04,
+  0xb6, 0x5f, 0xad, 0x4f, 0xeb, 0x29, 0x26, 0x0a, 0x4e, 0x4a, 0xa4, 0xa5,
+  0xe8, 0xb8, 0x1a, 0xd3, 0xec, 0x6b, 0x67, 0x37, 0x67, 0x70, 0x66, 0xbc,
+  0xd3, 0x4b, 0xf3, 0x01, 0x21, 0x60, 0xf9, 0x38, 0xe9, 0x26, 0xeb, 0x18,
+  0x5d, 0x9c, 0x0b, 0xea, 0xc4, 0x4a, 0x30, 0x58, 0x86, 0xe8, 0xad, 0x80,
+  0x34, 0xf9, 0x67, 0xdb, 0xbb, 0x6d, 0x9c, 0xd5, 0xd5, 0xbd, 0x82, 0x96,
+  0xfb, 0x0b, 0x1d, 0x8f, 0x99, 0x13, 0x81, 0xfc, 0xfa, 0xb1, 0x42, 0xa5,
+  0xa4, 0x35, 0xf1, 0x74, 0xf9, 0xa6, 0x5e, 0x36, 0xcd, 0xae, 0x79, 0x4c,
+  0xaf, 0x4f, 0x8e, 0xbe, 0x3d, 0x3a, 0x09, 0x2e, 0xb0, 0xaf, 0x86, 0xc3,
+  0xed, 0xdb, 0xac, 0x1a, 0xa1, 0xbe, 0x0f, 0xf9, 0xbc, 0x13, 0x3c, 0x67,
+  0xf1, 0x3a, 0x9e, 0x54, 0xbf, 0x77, 0xc9, 0xca, 0x82, 0x66, 0x0d, 0x8c,
+  0x7d, 0x22, 0xb4, 0xe7, 0x4f, 0x0a, 0x17, 0x27, 0xf2, 0x2a, 0x04, 0x18,
+  0x86, 0x5b, 0x6a, 0x5c, 0x65, 0x13, 0xae, 0x7f, 0x13, 0x42, 0xc2, 0x0a,
+  0x52, 0xf3, 0x93, 0xe4, 0x2d, 0x96, 0x92, 0xe1, 0xb2, 0x88, 0x7e, 0xd8,
+  0x41, 0x04, 0x6f, 0xcc, 0x4b, 0x73, 0x85, 0x3c, 0x24, 0x6f, 0xe5, 0x9b,
+  0x92, 0x5c, 0x47, 0xb3, 0xc1, 0x5c, 0x26, 0x6c, 0x32, 0x9c, 0x7d, 0xd3,
+  0x3f, 0x18, 0xf6, 0xdf, 0x1e, 0x9d, 0x1c, 0x7d, 0x75, 0x70, 0x79, 0xa4,
+  0x84, 0x93, 0xe4, 0xfe, 0x5f, 0xa2, 0x0c, 0xb1, 0xbc, 0xfb, 0x46, 0xa6,
+  0x05, 0xe3, 0x27, 0xc2, 0xd2, 0x26, 0x67, 0x1a, 0x61, 0xe5, 0x65, 0xe5,
+  0x22, 0x6d, 0x64, 0xa2, 0x00, 0x3e, 0x53, 0x5e, 0xc5, 0x9b, 0x33, 0xa7,
+  0x6f, 0x3a, 0x93, 0xae, 0x06, 0x23, 0x48, 0xa7, 0xf7, 0x54, 0x50, 0xe0,
+  0x43, 0x41, 0x78, 0xe1, 0xdc, 0xe6, 0xc5, 0xf1, 0xe8, 0xbd, 0xc9, 0xf7,
+  0x66, 0xb6, 0xb5, 0xc0, 0x20, 0x66, 0x5c, 0x62, 0xbc, 0x1f, 0x15, 0x5c,
+  0x11, 0x00, 0xc1, 0xc7, 0xb7, 0x78, 0xb2, 0x43, 0x00, 0x39, 0xb0, 0xee,
+  0x34, 0x3a, 0xea, 0xf2, 0xab, 0x48, 0xda, 0x36, 0x6d, 0xa0, 0x7a, 0x7c,
+  0x93, 0xcd, 0x44, 0xa3, 0xa4, 0x80, 0x33, 0x92, 0x1e, 0x39, 0x89, 0x4c,
+  0x32, 0xe5, 0xf9, 0xa0, 0x8f, 0x32, 0x08, 0x66, 0xc4, 0x73, 0xb0, 0x79,
+  0x63, 0xf4, 0x8a, 0xf7, 0x44, 0x0b, 0x4b, 0x4e, 0x7a, 0x82, 0x60, 0x20,
+  0x5b, 0x72, 0x00, 0xb4, 0x18, 0x83, 0xe7, 0x8b, 0x56, 0xe8, 0xd7, 0xca,
+  0x4b, 0xae, 0x7a, 0xd1, 0xbd, 0xfc, 0x2d, 0xbf, 0xa4, 0xc7, 0x0b, 0x47,
+  0x91, 0x1d, 0xfc, 0x08, 0x02, 0x53, 0x55, 0x5f, 0xea, 0xe4, 0x2f, 0xf4,
+  0x70, 0x0a, 0xbc, 0xd5, 0xe5, 0x8e, 0x25, 0xb0, 0x49, 0x43, 0xfc, 0xcb,
+  0x52, 0xd8, 0x97, 0xc4, 0xda, 0xa9, 0xbb, 0xda, 0x5f, 0xb6, 0xd1, 0x94,
+  0xfc, 0x92, 0x97, 0x32, 0x91, 0xb3, 0x2c, 0x8c, 0xb1, 0x4f, 0x14, 0x0c,
+  0x2d, 0x4a, 0x59, 0xa2, 0xf0, 0xd4, 0xbf, 0x86, 0xc4, 0xbf, 0x36, 0xa3,
+  0xa8, 0x9f, 0xcd, 0x03, 0x1e, 0xc5, 0xcd, 0x77, 0x4a, 0x92, 0x6a, 0xf5,
+  0x3c, 0xbf, 0x4a, 0x80, 0x47, 0xe9, 0x7d, 0x74, 0x7e, 0xc1, 0xa5, 0xfa,
+  0x4e, 0xe8, 0x2f, 0x12, 0xb4, 0xa9, 0x63, 0xdc, 0x2f, 0x42, 0xd2, 0x4c,
+  0x18, 0x83, 0x0c, 0x5e, 0x7f, 0x1b, 0x8b, 0x55, 0x60, 0x19, 0xc3, 0x09,
+  0x85, 0xff, 0x52, 0x0e, 0x44, 0x2c, 0x41, 0xcf, 0x2b, 0x2d, 0x43, 0x3d,
+  0xa1, 0x2e, 0x08, 0xdd, 0x1d, 0x3a, 0xc1, 0x90, 0x48, 0xf5, 0xad, 0x9f,
+  0xd1, 0x2f, 0x49, 0xf7, 0x53, 0xe0, 0xc0, 0x92, 0x69, 0x6c, 0x31, 0xd5,
+  0x52, 0xb3, 0x40, 0x61, 0x57, 0x28, 0x44, 0x94, 0x9a, 0xae, 0x0c, 0x3a,
+  0x43, 0x05, 0x95, 0x3c, 0x71, 0x4d, 0x85, 0xae, 0x74, 0x90, 0xe8, 0x8b,
+  0x5f, 0x4c, 0xe1, 0xb4, 0x34, 0x60, 0x05, 0x0f, 0xf7, 0x24, 0x44, 0x9d,
+  0xda, 0x70, 0x25, 0x8a, 0x18, 0x22, 0x76, 0x1d, 0x68, 0xdb, 0x02, 0xb6,
+  0xe6, 0x31, 0x50, 0xba, 0xb0, 0x44, 0x5d, 0x59, 0x39, 0xbb, 0x92, 0xc8,
+  0x56, 0x0a, 0x7a, 0x41, 0x98, 0x19, 0x23, 0xd6, 0x26, 0x00, 0xd2, 0xba,
+  0x49, 0x8b, 0xc8, 0xa9, 0x33, 0x13, 0x6f, 0xd9, 0xfc, 0x31, 0x4a, 0x59,
+  0xb6, 0x88, 0x42, 0x4d, 0x7b, 0xa3, 0x85, 0xf1, 0xa5, 0xa2, 0x6b, 0x9f,
+  0x48, 0x61, 0xcf, 0xc9, 0x25, 0x2e, 0x5d, 0xe1, 0x99, 0x21, 0x32, 0x09,
+  0xdd, 0x6f, 0x65, 0x6c, 0x57, 0x89, 0x78, 0x71, 0x8e, 0xfa, 0xd6, 0x16,
+  0x5c, 0xe2, 0x02, 0xce, 0x12, 0x8b, 0xe8, 0xa9, 0x91, 0x48, 0xe0, 0x11,
+  0xc9, 0x51, 0x75, 0xac, 0x76, 0xa6, 0x01, 0x96, 0x0f, 0xf7, 0x7a, 0x11,
+  0x60, 0xcf, 0x19, 0x4b, 0x6e, 0xbe, 0x8d, 0xee, 0x92, 0x57, 0xc6, 0x06,
+  0xf3, 0x68, 0xf3, 0x04, 0xdf, 0x7f, 0x8b, 0xce, 0xd1, 0x77, 0xf0, 0x02,
+  0x4e, 0xbe, 0xd1, 0x1f, 0xb8, 0xb8, 0x1a, 0x21, 0x76, 0x78, 0x2b, 0x8f,
+  0x32, 0xf3, 0xbd, 0x9c, 0xaa, 0x37, 0xf8, 0xd5, 0x4f, 0x42, 0xd4, 0x6a,
+  0x6d, 0x36, 0x20, 0xdd, 0x16, 0xa4, 0x88, 0x91, 0x14, 0xa2, 0x77, 0x29,
+  0x14, 0x9f, 0x25, 0x7e, 0xe9, 0x13, 0x6c, 0x08, 0x68, 0xef, 0xe7, 0x3d,
+  0x09, 0x85, 0x01, 0xac, 0x16, 0x44, 0x94, 0xcd, 0x04, 0x8e, 0x2d, 0xe7,
+  0x84, 0x3e, 0x99, 0xd6, 0x77, 0xf1, 0x13, 0x5e, 0xdf, 0x45, 0x4f, 0xf8,
+  0x13, 0xce, 0xb9, 0xb3, 0x7d, 0x8e, 0xce, 0x87, 0xdf, 0x26, 0x4b, 0x72,
+  0xe0, 0x99, 0x70, 0x9b, 0x8f, 0xb8, 0x1b, 0x1d, 0x6d, 0x7a, 0xff, 0x98,
+  0x2f, 0x3f, 0xe7, 0x51, 0x77, 0x7d, 0x70, 0xce, 0xcd, 0xf7, 0xe5, 0x70,
+  0x9f, 0x1f, 0x0c, 0xbf, 0xf5, 0x8e, 0xb5, 0xb7, 0x05, 0x62, 0x39, 0x67,
+  0x16, 0xa8, 0x4c, 0xf1, 0x45, 0xde, 0x3a, 0xd4, 0x58, 0x74, 0xbf, 0xd7,
+  0x77, 0x4f, 0xd9, 0xef, 0xa6, 0x27, 0xc1, 0x7e, 0x0f, 0xe6, 0x78, 0xd5,
+  0x7e, 0xf7, 0x17, 0xaa, 0x8d, 0x81, 0xf4, 0x76, 0x7b, 0xc1, 0xf5, 0xdf,
+  0x6e, 0x50, 0x4a, 0x34, 0xbe, 0xcd, 0x81, 0x84, 0xe5, 0xad, 0x1d, 0x42,
+  0xc4, 0xd0, 0xcf, 0x9f, 0xb7, 0xd1, 0xcd, 0x0b, 0xc1, 0x46, 0xd7, 0xf5,
+  0x8c, 0xef, 0xf4, 0x65, 0x1b, 0x5d, 0x11, 0xa2, 0x19, 0x6f, 0x72, 0x7f,
+  0x8f, 0x87, 0xfb, 0xdb, 0xdb, 0xb5, 0x7e, 0xb6, 0x6b, 0x38, 0x43, 0x0a,
+  0x54, 0x62, 0xc4, 0x11, 0xed, 0x12, 0x97, 0xbb, 0x1e, 0xe1, 0x4a, 0xd0,
+  0x4c, 0x74, 0xce, 0xfb, 0x0b, 0xbd, 0xeb, 0x36, 0x03, 0xb9, 0x05, 0x66,
+  0xaf, 0x54, 0x97, 0xc6, 0x2d, 0x8e, 0x6b, 0x1b, 0xa6, 0xba, 0x9f, 0x37,
+  0x7d, 0x15, 0x9c, 0xc8, 0x16, 0x99, 0x48, 0x16, 0x4d, 0xc2, 0xad, 0x33,
+  0x82, 0x08, 0x80, 0xc7, 0xa6, 0x75, 0x4e, 0x8b, 0xba, 0xef, 0xea, 0xf3,
+  0xbd, 0xb6, 0x7f, 0x0d, 0xb4, 0xf4, 0xb7, 0xa7, 0xc3, 0xce, 0x71, 0xad,
+  0x33, 0x46, 0xcc, 0x5f, 0xe3, 0xe8, 0x99, 0xdf, 0x27, 0x2e, 0xf7, 0xc7,
+  0xd6, 0xc3, 0x90, 0x26, 0x83, 0x7c, 0x17, 0xfa, 0x44, 0x37, 0xc1, 0x48,
+  0x32, 0x16, 0x51, 0x52, 0x12, 0xfe, 0x3e, 0xf2, 0xb9, 0x78, 0xbd, 0x93,
+  0xec, 0x57, 0xf2, 0xa4, 0x44, 0xa8, 0x8a, 0x24, 0x61, 0x87, 0xfa, 0xa9,
+  0xa5, 0xb9, 0x84, 0xc5, 0x53, 0xe8, 0x82, 0x2c, 0x95, 0x7f, 0x91, 0x78,
+  0x25, 0x09, 0x63, 0x91, 0x99, 0x4d, 0xb4, 0x57, 0x28, 0x64, 0x67, 0x6b,
+  0xa5, 0x36, 0xc5, 0x53, 0x38, 0xbf, 0x7b, 0xde, 0xa7, 0xc7, 0x55, 0x79,
+  0x92, 0x1f, 0xbe, 0xc4, 0x0f, 0x07, 0xdd, 0x89, 0x0e, 0x6c, 0x4d, 0xa9,
+  0x9f, 0x63, 0xbd, 0x8c, 0x8b, 0x62, 0x42, 0x7c, 0xc2, 0xd4, 0x6d, 0xad,
+  0x85, 0x7b, 0x9f, 0x3a, 0x1e, 0x64, 0x64, 0xa6, 0x33, 0x67, 0x89, 0xd9,
+  0x4b, 0xdd, 0xc9, 0x4d, 0x51, 0x14, 0xd7, 0xf3, 0x28, 0x3e, 0xeb, 0x86,
+  0xdf, 0x5a, 0x3d, 0x7e, 0x2d, 0xc3, 0x8c, 0x2f, 0x39, 0xaf, 0xb9, 0x67,
+  0xc9, 0x8f, 0x72, 0xa6, 0xf3, 0x7f, 0x9d, 0xcf, 0xfb, 0xfa, 0x26, 0x0b,
+  0xe1, 0x59, 0x7a, 0x2b, 0x57, 0xe3, 0x73, 0x5a, 0x86, 0xc8, 0x20, 0xb9,
+  0xdc, 0x96, 0x1f, 0xd8, 0xa1, 0x6d, 0x63, 0x77, 0x8d, 0xa8, 0x2c, 0x8d,
+  0xe5, 0xfc, 0x82, 0x79, 0xc3, 0xdf, 0x88, 0xa5, 0xc1, 0x28, 0x70, 0xd5,
+  0xf7, 0x59, 0x28, 0xe4, 0x1d, 0xbd, 0xb0, 0xef, 0x3e, 0xba, 0x7e, 0x6e,
+  0x3f, 0xac, 0x5a, 0x3f, 0x9d, 0xb3, 0xff, 0x1e, 0xeb, 0xf7, 0xf2, 0x37,
+  0x5b, 0xbf, 0x97, 0xff, 0x2d, 0xd6, 0xef, 0xe5, 0x3f, 0xbf, 0x7e, 0xcf,
+  0xbb, 0xeb, 0xf7, 0xf2, 0xbf, 0xcb, 0xfa, 0x69, 0x21, 0x09, 0x5d, 0xbd,
+  0x2c, 0x58, 0x3f, 0xf2, 0x84, 0xf0, 0x15, 0x02, 0xc2, 0x28, 0x68, 0x43,
+  0x34, 0xdd, 0xfa, 0x26, 0x07, 0x1e, 0x04, 0x6b, 0xc6, 0x9e, 0x5d, 0x85,
+  0x3c, 0x22, 0x1f, 0x3d, 0xce, 0xfb, 0x27, 0x15, 0x05, 0x94, 0x40, 0xeb,
+  0xf8, 0x3c, 0xb1, 0x1d, 0xf0, 0x96, 0xc1, 0x71, 0xef, 0x40, 0xc9, 0x89,
+  0xba, 0x5c, 0x6b, 0xf2, 0xc3, 0x99, 0x09, 0xe0, 0x64, 0xb3, 0xda, 0x25,
+  0x02, 0xc6, 0xc8, 0x75, 0xcc, 0xe4, 0xed, 0xbf, 0xa6, 0xf9, 0xea, 0xf3,
+  0xe3, 0x5f, 0x44, 0xf3, 0x7f, 0x50, 0xaf, 0xcb, 0x75, 0x29, 0xe6, 0x66,
+  0xf7, 0xa6, 0xee, 0xc9, 0xcb, 0xb6, 0xac, 0x90, 0x81, 0x2e, 0xe1, 0xb8,
+  0xff, 0xd8, 0x92, 0xbd, 0x85, 0x66, 0xb0, 0x98, 0xcd, 0x25, 0x2f, 0xf0,
+  0x91, 0xbc, 0x28, 0xe8, 0x9f, 0x5b, 0xc9, 0x77, 0xc8, 0x7a, 0x62, 0xcf,
+  0xaa, 0xe4, 0x0a, 0xd8, 0x62, 0xb3, 0x0a, 0xc4, 0xd6, 0xb0, 0xc5, 0x12,
+  0x56, 0x9f, 0x28, 0xc1, 0xca, 0x65, 0xdb, 0x5b, 0xc0, 0xa0, 0x76, 0x5b,
+  0xbd, 0x35, 0x2b, 0x7c, 0x0d, 0x49, 0x30, 0xd1, 0xbc, 0x91, 0xe4, 0xa3,
+  0x51, 0x1a, 0x42, 0xba, 0x16, 0x39, 0x51, 0x82, 0x3a, 0xcd, 0xf4, 0x58,
+  0xe6, 0x75, 0xd3, 0xd4, 0x40, 0xb2, 0x25, 0xbc, 0xda, 0xa7, 0xda, 0x7b,
+  0x30, 0x96, 0xc4, 0xa0, 0xc4, 0xaa, 0xca, 0xc0, 0x2e, 0x94, 0x5c, 0x74,
+  0x4b, 0x36, 0x52, 0xdc, 0x29, 0x70, 0x1e, 0x15, 0xcf, 0x7d, 0x6a, 0xee,
+  0xfe, 0x28, 0xcc, 0x80, 0x51, 0x18, 0x27, 0x8f, 0xf8, 0x77, 0xd8, 0xbf,
+  0x4b, 0x40, 0xdc, 0xac, 0x43, 0xf8, 0x76, 0x68, 0xb0, 0xe6, 0x3e, 0x44,
+  0x7c, 0xb0, 0xb6, 0x0a, 0xbe, 0xc9, 0xb8, 0xc0, 0x9b, 0xcc, 0xcf, 0x42,
+  0xb4, 0xbc, 0x66, 0xec, 0x10, 0x66, 0xe0, 0x91, 0x19, 0x9c, 0xa0, 0xd8,
+  0x02, 0x9a, 0x73, 0xe4, 0xba, 0xca, 0x6c, 0xad, 0x0b, 0x5b, 0xc8, 0x82,
+  0x21, 0x48, 0xc4, 0x6c, 0x36, 0x61, 0x46, 0x8b, 0x7f, 0x61, 0xd6, 0x9f,
+  0x87, 0xea, 0xf4, 0x45, 0x52, 0x76, 0xcd, 0xb1, 0xd0, 0x55, 0x08, 0xc2,
+  0x0e, 0xb1, 0x0f, 0x17, 0x20, 0xb3, 0xd4, 0x3e, 0x70, 0xc9, 0x14, 0x4d,
+  0x55, 0xce, 0x1f, 0x92, 0xaf, 0x52, 0x1a, 0x16, 0xd4, 0xc2, 0x34, 0x9b,
+  0x05, 0x39, 0x1f, 0x5c, 0x95, 0x4c, 0xb4, 0x34, 0xae, 0x50, 0xa6, 0x23,
+  0x84, 0x5e, 0xc9, 0xd3, 0x92, 0x50, 0x39, 0xf1, 0x09, 0xf9, 0xf3, 0x34,
+  0x77, 0x0c, 0xb0, 0xc9, 0xe1, 0xf0, 0x24, 0x54, 0xa6, 0x95, 0x4e, 0x7d,
+  0x65, 0x8e, 0x2f, 0x5a, 0xeb, 0xb7, 0x4f, 0x94, 0x19, 0x39, 0x37, 0xfe,
+  0x3a, 0x7a, 0x98, 0x65, 0xdc, 0xd9, 0x54, 0x73, 0xc1, 0x85, 0x88, 0x3a,
+  0x19, 0x57, 0x0f, 0x73, 0x32, 0xd0, 0xf8, 0x65, 0x39, 0x7b, 0xd4, 0x3f,
+  0x26, 0xe5, 0x5b, 0x99, 0x46, 0xf8, 0x01, 0x11, 0x32, 0x79, 0x15, 0x82,
+  0x98, 0x82, 0x99, 0x66, 0xba, 0x28, 0xb8, 0xaa, 0x82, 0x99, 0x64, 0xd6,
+  0x04, 0xac, 0x01, 0xae, 0xc2, 0x43, 0x40, 0x8d, 0x85, 0x92, 0x0d, 0x1d,
+  0x6a, 0x5e, 0xb8, 0x75, 0x90, 0x69, 0x49, 0xf4, 0xaf, 0xf0, 0x68, 0x6f,
+  0xe9, 0xc5, 0x20, 0x6f, 0x74, 0xaa, 0x4c, 0xaa, 0x08, 0xb6, 0xcc, 0xad,
+  0x29, 0x65, 0x4c, 0x17, 0x01, 0x65, 0x01, 0x87, 0xbc, 0x77, 0x77, 0x76,
+  0x1e, 0xe5, 0xa2, 0x10, 0xf7, 0xef, 0x4a, 0x4a, 0x0a, 0x92, 0x51, 0xec,
+  0x63, 0xb6, 0x49, 0xa2, 0x69, 0x2e, 0x09, 0x07, 0x5d, 0xf6, 0x1e, 0xf3,
+  0x49, 0x4b, 0x0d, 0xe1, 0x8e, 0x20, 0xcb, 0x3a, 0xa6, 0x6c, 0x01, 0x31,
+  0x85, 0x11, 0x61, 0x47, 0xe8, 0x63, 0xbd, 0xdf, 0x7a, 0x27, 0x5a, 0x7a,
+  0x8d, 0x3a, 0x44, 0x2f, 0x89, 0xf6, 0x32, 0x48, 0xbe, 0x7c, 0x70, 0x86,
+  0x93, 0x57, 0x3e, 0x1c, 0xbd, 0x62, 0x57, 0xab, 0x14, 0xfe, 0x5d, 0x45,
+  0x00, 0x12, 0xe7, 0x9b, 0xf8, 0x1d, 0x0b, 0x16, 0x34, 0x6b, 0x04, 0xd0,
+  0xbc, 0x46, 0xab, 0x48, 0x90, 0x8f, 0x7b, 0x0c, 0xec, 0x68, 0xcd, 0xed,
+  0xd5, 0xa5, 0x76, 0xf7, 0x58, 0xda, 0xf9, 0x52, 0x59, 0xc9, 0xaf, 0xd9,
+  0x66, 0x0f, 0x69, 0xa3, 0xf2, 0x3e, 0x6b, 0xab, 0x25, 0x94, 0xa9, 0xd8,
+  0x47, 0x3e, 0x62, 0x37, 0x0b, 0x9b, 0x52, 0x18, 0x51, 0x71, 0xf9, 0x13,
+  0xa3, 0x34, 0x9c, 0x09, 0x4c, 0xac, 0x35, 0x0c, 0x83, 0xd0, 0x5c, 0x89,
+  0x0e, 0x29, 0xa2, 0x2f, 0x58, 0x95, 0x02, 0x56, 0x4f, 0xba, 0x9f, 0x2c,
+  0x15, 0xa4, 0x46, 0xa9, 0x2d, 0xcd, 0xc6, 0x74, 0x84, 0x31, 0x29, 0xa8,
+  0xee, 0xae, 0xc9, 0x97, 0x08, 0x17, 0x43, 0x95, 0x60, 0xdd, 0xe3, 0xc3,
+  0xc5, 0x49, 0x2f, 0x91, 0xaa, 0x7d, 0x04, 0xf8, 0x34, 0x2b, 0x1d, 0xd7,
+  0x8d, 0x1c, 0x81, 0x0f, 0xf3, 0xb5, 0xf1, 0x58, 0x6a, 0x47, 0x3c, 0x44,
+  0x62, 0x1b, 0xce, 0x4f, 0xd3, 0x64, 0xad, 0x08, 0x99, 0xd0, 0x25, 0xc5,
+  0x4a, 0x1b, 0x09, 0x66, 0x7a, 0x70, 0x03, 0xa9, 0x84, 0x70, 0x1f, 0x6a,
+  0xa7, 0x2d, 0xd7, 0x8f, 0xa6, 0xed, 0x73, 0x32, 0x28, 0x39, 0x2b, 0x22,
+  0x29, 0xa5, 0x12, 0x8a, 0x24, 0x9a, 0xb0, 0x04, 0xcb, 0x83, 0x9c, 0xd2,
+  0x45, 0xe5, 0x05, 0x24, 0xd7, 0x6f, 0x72, 0xb3, 0xae, 0xc5, 0x3a, 0xee,
+  0xd3, 0x7a, 0x31, 0x62, 0x7a, 0xbb, 0x06, 0x1f, 0x8e, 0xc1, 0x83, 0x09,
+  0x5f, 0xe7, 0xbc, 0x63, 0xf1, 0x92, 0x7c, 0x2d, 0x10, 0x6c, 0x2f, 0x69,
+  0x1d, 0x0a, 0x55, 0x38, 0xb9, 0x6b, 0x2e, 0x9f, 0x35, 0xca, 0x21, 0xce,
+  0x3b, 0xc5, 0x25, 0xd3, 0xd0, 0xe9, 0x47, 0x4d, 0x80, 0x9e, 0xcf, 0xcb,
+  0xed, 0xbc, 0x7d, 0x7e, 0x2d, 0x70, 0x9a, 0xe8, 0xb8, 0xba, 0x52, 0xd9,
+  0x2c, 0xfb, 0x08, 0x4f, 0xa5, 0x60, 0x9d, 0xd2, 0x07, 0x64, 0x0d, 0xd8,
+  0x4f, 0x63, 0x87, 0x07, 0x64, 0x43, 0x44, 0xbc, 0x55, 0x42, 0x77, 0x94,
+  0xbd, 0x4c, 0x3c, 0x6e, 0xe3, 0x2a, 0x9f, 0x37, 0x1c, 0xfe, 0x0d, 0x0a,
+  0x36, 0xc7, 0xd5, 0xb0, 0xeb, 0x69, 0x39, 0x4a, 0xf9, 0x9c, 0x58, 0xb0,
+  0x87, 0xba, 0x9d, 0x5a, 0x24, 0x98, 0x28, 0x42, 0x6b, 0xb6, 0x67, 0x24,
+  0x51, 0xc7, 0x0c, 0xb9, 0xbf, 0x8f, 0x4a, 0x8a, 0x14, 0x8f, 0x5a, 0xf5,
+  0x41, 0xfb, 0x09, 0xa6, 0x9a, 0xea, 0x5f, 0xf5, 0xe4, 0x04, 0x6b, 0xc6,
+  0x23, 0xb0, 0x32, 0xb5, 0x77, 0xae, 0x02, 0x55, 0x08, 0x99, 0xc9, 0x93,
+  0x45, 0xd6, 0x86, 0xce, 0x6c, 0x48, 0xb4, 0x4e, 0x8a, 0x69, 0x00, 0xbe,
+  0x61, 0xab, 0x36, 0x4b, 0x54, 0x2c, 0x0a, 0x0b, 0x21, 0xd2, 0x49, 0x5b,
+  0xd7, 0x58, 0xab, 0x8b, 0x16, 0x74, 0x33, 0xb9, 0xce, 0x29, 0x22, 0xd1,
+  0x9b, 0x2b, 0x66, 0x83, 0xaf, 0x82, 0x02, 0x99, 0x57, 0xac, 0xa7, 0x01,
+  0xe7, 0xc9, 0x6b, 0xb2, 0x62, 0x66, 0xfc, 0x5a, 0xa3, 0x7b, 0x2d, 0xa9,
+  0x66, 0x3f, 0x1d, 0xbf, 0xa2, 0x20, 0xda, 0xb8, 0x94, 0xb4, 0x99, 0xc5,
+  0x4d, 0xaa, 0x4f, 0xcb, 0xd9, 0x2b, 0x29, 0xe2, 0xbf, 0xe0, 0x61, 0x53,
+  0xca, 0x58, 0x96, 0x06, 0xf1, 0xcc, 0x1a, 0x3a, 0x29, 0x52, 0x31, 0x17,
+  0x05, 0x42, 0xb1, 0xe6, 0xd0, 0x42, 0xc5, 0x71, 0xab, 0x1b, 0x2a, 0x6b,
+  0xc6, 0xde, 0x2f, 0x27, 0x59, 0x3a, 0x8d, 0x51, 0x37, 0x53, 0x87, 0xc9,
+  0xdb, 0xc8, 0xc2, 0x8d, 0x68, 0x40, 0x0b, 0xf1, 0x5b, 0x0b, 0xee, 0x94,
+  0x61, 0x57, 0x85, 0x64, 0x75, 0x6a, 0x0f, 0x71, 0xaa, 0x62, 0xd4, 0x3c,
+  0xd9, 0x34, 0xbf, 0x13, 0x7e, 0x05, 0x25, 0xce, 0x95, 0xa8, 0x93, 0x83,
+  0xd0, 0x43, 0xff, 0x7f, 0x7f, 0x62, 0x1f, 0xc0, 0x0e, 0x00, 0x46, 0xb8,
+  0xdb, 0x9c, 0x38, 0xe2, 0x38, 0xaf, 0x8b, 0x0b, 0x79, 0x0b, 0x94, 0x9d,
+  0x3a, 0xc6, 0x70, 0x03, 0x12, 0x93, 0x5b, 0x72, 0x0e, 0x11, 0xee, 0x16,
+  0xc9, 0x31, 0x0f, 0x57, 0xfa, 0x2e, 0x53, 0xa8, 0x08, 0xec, 0x0b, 0x5e,
+  0x80, 0xc6, 0xa6, 0xbb, 0x71, 0xd1, 0x77, 0xc8, 0x19, 0x16, 0x32, 0x7b,
+  0x7b, 0x4b, 0x8a, 0x89, 0x48, 0x2d, 0x41, 0xd9, 0x63, 0x38, 0xec, 0x75,
+  0x7a, 0x65, 0xcb, 0x7c, 0x8a, 0x00, 0x2f, 0xc7, 0x66, 0x0a, 0xb9, 0x04,
+  0x31, 0x7e, 0x56, 0x44, 0x72, 0x52, 0x58, 0x5c, 0x93, 0x94, 0xb4, 0xd7,
+  0x2e, 0x1d, 0x04, 0x85, 0x4f, 0xd6, 0xd3, 0x7c, 0x6e, 0x7d, 0x9c, 0x3d,
+  0x22, 0x17, 0x62, 0x18, 0x07, 0x05, 0x68, 0xef, 0x43, 0x06, 0xbd, 0x4e,
+  0xc9, 0x43, 0x21, 0x5b, 0x9c, 0x92, 0xfa, 0xbf, 0xd9, 0x69, 0xff, 0xf9,
+  0xce, 0x2e, 0xba, 0xfb, 0x7c, 0xe7, 0xb3, 0xad, 0xf6, 0xdd, 0x3c, 0xad,
+  0xb3, 0x3e, 0x70, 0x3c, 0x71, 0x1d, 0x95, 0xab, 0x65, 0x38, 0x3f, 0x0f,
+  0xf4, 0x51, 0x7a, 0x49, 0xc0, 0x3f, 0x93, 0x45, 0xa5, 0x88, 0x38, 0x2a,
+  0xa0, 0x42, 0x36, 0x63, 0x7d, 0x43, 0x1c, 0x5f, 0xc1, 0x5d, 0xef, 0xde,
+  0x81, 0x31, 0x05, 0x17, 0x3a, 0xcf, 0x94, 0xd9, 0x3d, 0xf4, 0xae, 0x2d,
+  0xbc, 0x21, 0x93, 0xc1, 0xe0, 0x22, 0xb2, 0x18, 0x43, 0xbe, 0x55, 0x9f,
+  0xc1, 0x88, 0x93, 0x10, 0x38, 0x8a, 0xd2, 0x2e, 0xc5, 0x65, 0x25, 0xcf,
+  0xbb, 0xbc, 0xc8, 0xeb, 0x1b, 0x94, 0xf0, 0xaa, 0xeb, 0xf4, 0x3a, 0x0b,
+  0xd3, 0x54, 0x8d, 0x48, 0x32, 0x86, 0x93, 0x14, 0xdd, 0x05, 0xdf, 0x31,
+  0x61, 0x71, 0xf8, 0x3c, 0x08, 0x8c, 0x5f, 0xca, 0x7c, 0x2c, 0x10, 0xa8,
+  0xb0, 0xc3, 0x5c, 0x52, 0x30, 0xd7, 0x15, 0x9f, 0x59, 0x56, 0x7b, 0x86,
+  0x0a, 0x22, 0x80, 0x78, 0x86, 0xa9, 0xea, 0x99, 0xab, 0x3e, 0x40, 0xec,
+  0x91, 0x1f, 0x61, 0x93, 0x16, 0xf7, 0x6c, 0x68, 0x84, 0xd0, 0x0e, 0x61,
+  0xa1, 0xa6, 0x29, 0x88, 0x5a, 0xcd, 0xdf, 0xcc, 0xcf, 0xbe, 0x37, 0x1a,
+  0xe9, 0xe0, 0x95, 0xfd, 0xf1, 0xd6, 0xd3, 0x8a, 0xd5, 0xec, 0x75, 0x34,
+  0x34, 0x82, 0x27, 0x8a, 0x3b, 0x1b, 0x06, 0xcb, 0x1b, 0xfe, 0xc7, 0xb2,
+  0xdc, 0x89, 0xa1, 0xe3, 0x10, 0x4d, 0x7c, 0xec, 0x8e, 0x9f, 0x5a, 0x83,
+  0x72, 0x3d, 0x40, 0xf4, 0x49, 0xc3, 0x61, 0x78, 0x41, 0x71, 0xaf, 0x93,
+  0x36, 0xab, 0x2f, 0xd4, 0xb8, 0x29, 0xd5, 0x25, 0xa0, 0x9d, 0x3f, 0x48,
+  0x4e, 0xa4, 0x24, 0xf4, 0xc6, 0x9f, 0x37, 0x30, 0x61, 0x1b, 0xaf, 0x99,
+  0xb0, 0x36, 0xf0, 0x8f, 0x81, 0xf4, 0x58, 0x09, 0xbe, 0x71, 0xe5, 0x6f,
+  0xfc, 0x89, 0xe0, 0x99, 0x6f, 0x36, 0x12, 0xed, 0x84, 0xcc, 0x3d, 0x77,
+  0x4c, 0xa2, 0xaa, 0x0a, 0x96, 0x0a, 0x6a, 0x15, 0x83, 0xd3, 0xaa, 0x8d,
+  0xde, 0xe0, 0x62, 0x70, 0xc4, 0xf0, 0xab, 0xc8, 0x4d, 0x1d, 0xbb, 0x26,
+  0x1f, 0x56, 0xd9, 0x06, 0xa4, 0x5e, 0x58, 0x08, 0x95, 0xe8, 0x2f, 0xa4,
+  0x68, 0x9e, 0x56, 0x3b, 0xb1, 0x93, 0xc3, 0x1d, 0x82, 0xab, 0x6b, 0x3c,
+  0xce, 0x49, 0x6f, 0xc1, 0xa9, 0x37, 0xbf, 0xbc, 0xbe, 0xce, 0x62, 0x54,
+  0xa1, 0x34, 0x19, 0x66, 0xd1, 0x69, 0x2e, 0xae, 0xb2, 0xb4, 0x81, 0xb6,
+  0x41, 0xb7, 0xfc, 0x72, 0x2c, 0xa9, 0xd3, 0xde, 0x23, 0xcf, 0x78, 0x8b,
+  0xf8, 0xda, 0x47, 0xec, 0xaf, 0x4a, 0x0d, 0x9a, 0x12, 0x6a, 0x5a, 0xcc,
+  0xa4, 0xc5, 0x14, 0x95, 0x09, 0x04, 0x98, 0xdb, 0x37, 0x33, 0x85, 0xb6,
+  0x98, 0x98, 0x79, 0xcc, 0xa8, 0x47, 0x42, 0x86, 0x74, 0x4d, 0x26, 0x72,
+  0x7e, 0x2a, 0xf5, 0xba, 0x84, 0xc6, 0x19, 0xb3, 0xdb, 0x06, 0xed, 0x8a,
+  0xd2, 0xa1, 0x16, 0x1d, 0x70, 0xc7, 0x91, 0x04, 0x2f, 0x87, 0xce, 0x05,
+  0x3b, 0x16, 0xc1, 0x73, 0x2f, 0xa9, 0x06, 0x80, 0x98, 0x03, 0x46, 0x9e,
+  0x6c, 0x63, 0xab, 0x33, 0x28, 0xdd, 0xcc, 0x74, 0x59, 0x31, 0xce, 0x9c,
+  0xf6, 0xf1, 0xc5, 0xbb, 0xc3, 0x2e, 0x4f, 0xe8, 0xb3, 0xcf, 0x3f, 0xb7,
+  0xc1, 0xa4, 0x4c, 0x20, 0x47, 0xb6, 0x04, 0x33, 0xac, 0x69, 0xc6, 0xc1,
+  0x31, 0xa8, 0xd0, 0x5c, 0xc1, 0x40, 0xd0, 0x72, 0x1c, 0x3b, 0xb2, 0x64,
+  0x32, 0xa7, 0x1b, 0x89, 0x46, 0xa1, 0x46, 0x99, 0x4d, 0x34, 0xe6, 0x7a,
+  0x0a, 0x8e, 0xda, 0x58, 0x3d, 0x20, 0x82, 0x19, 0x35, 0x97, 0xe8, 0x9f,
+  0x03, 0x54, 0xc6, 0xb5, 0xc0, 0x6a, 0x91, 0x30, 0x78, 0x9d, 0x35, 0x61,
+  0xaa, 0x84, 0x87, 0x59, 0x6c, 0x7d, 0x62, 0x39, 0x4b, 0x8a, 0x00, 0x92,
+  0x24, 0xd1, 0xe3, 0xb5, 0xf0, 0xe9, 0x4a, 0x99, 0xdd, 0x71, 0x66, 0xb9,
+  0xbb, 0xff, 0x8c, 0x53, 0xf6, 0xda, 0xd2, 0xc2, 0xc4, 0x0b, 0xf5, 0xfe,
+  0x59, 0x59, 0x78, 0x04, 0x37, 0x09, 0x4a, 0x98, 0xa6, 0x31, 0x4a, 0xaa,
+  0x93, 0x83, 0x00, 0xa9, 0x5a, 0xf6, 0x0f, 0x2d, 0xf8, 0x1c, 0x44, 0xe3,
+  0x73, 0x89, 0xe0, 0xbf, 0xb6, 0x2d, 0x0a, 0x13, 0x3d, 0x81, 0x84, 0xa9,
+  0x2f, 0x98, 0x05, 0x7c, 0xc1, 0xb2, 0x31, 0x37, 0x40, 0x72, 0x45, 0x25,
+  0x0f, 0x49, 0x28, 0xf7, 0xbe, 0x37, 0x4f, 0x11, 0xbe, 0x06, 0x10, 0x75,
+  0xee, 0x8b, 0x7b, 0x9e, 0xa2, 0x93, 0xa8, 0xa4, 0x36, 0x13, 0xde, 0xa7,
+  0xd4, 0x82, 0xdb, 0xf9, 0x36, 0xdb, 0x98, 0x57, 0x25, 0x35, 0xb4, 0x21,
+  0x2a, 0x68, 0x6c, 0x9e, 0x6d, 0xbe, 0x54, 0x45, 0x8e, 0x23, 0xea, 0x81,
+  0x25, 0xba, 0x22, 0x89, 0x5f, 0x19, 0x2b, 0x7e, 0xf0, 0xd7, 0xf9, 0xb5,
+  0x63, 0xda, 0x06, 0x35, 0xbc, 0x51, 0x5f, 0xc2, 0x5a, 0x0e, 0x38, 0x13,
+  0xfd, 0x77, 0x89, 0x7c, 0xf5, 0xcd, 0x9f, 0x5b, 0x0d, 0x28, 0x6f, 0xb3,
+  0x4f, 0x4b, 0x2a, 0x60, 0xca, 0xf1, 0x75, 0x1e, 0xc9, 0x44, 0x93, 0x0c,
+  0x7a, 0xde, 0x43, 0x0e, 0x41, 0xeb, 0x87, 0x02, 0x74, 0x3f, 0x21, 0xe6,
+  0xed, 0x22, 0xd7, 0xd3, 0x2c, 0x46, 0x66, 0x68, 0xcf, 0xcf, 0x35, 0x19,
+  0x16, 0xb0, 0x51, 0x90, 0x4a, 0xaf, 0xfb, 0x87, 0x7c, 0x9c, 0x4d, 0xb5,
+  0x18, 0x93, 0x32, 0xfa, 0xa1, 0x30, 0xbf, 0x6e, 0x16, 0x14, 0xe9, 0xa1,
+  0x2b, 0xb3, 0x89, 0xa4, 0x6f, 0x72, 0xdd, 0x32, 0xf1, 0xaf, 0x57, 0x72,
+  0x31, 0xb4, 0x99, 0xbc, 0x53, 0xbd, 0x53, 0xf2, 0x39, 0x48, 0xeb, 0xd5,
+  0xce, 0xea, 0x85, 0x68, 0x02, 0x57, 0xc6, 0x86, 0x5a, 0x58, 0x80, 0x61,
+  0xf7, 0xef, 0x99, 0xea, 0x12, 0x02, 0x2c, 0x62, 0x13, 0x0f, 0xda, 0x48,
+  0x78, 0xa9, 0xfe, 0xc5, 0x16, 0xb0, 0xe7, 0xb0, 0x51, 0xe3, 0x45, 0xc5,
+  0x98, 0xb2, 0xa1, 0x2d, 0x88, 0x68, 0x0b, 0xd1, 0xbc, 0x69, 0x89, 0xc0,
+  0xae, 0x88, 0xe0, 0xeb, 0xaa, 0xc7, 0xfe, 0x6d, 0x49, 0x69, 0x75, 0x89,
+  0x89, 0xcb, 0x57, 0x7f, 0xfd, 0x3e, 0x1b, 0xbd, 0xf9, 0x33, 0x99, 0xbd,
+  0x9f, 0x40, 0x63, 0xcb, 0xf7, 0x1e, 0xed, 0xf0, 0x6d, 0xb0, 0xda, 0x26,
+  0xde, 0x06, 0xe8, 0x36, 0x62, 0x4e, 0xc7, 0xd2, 0x66, 0x3d, 0x4c, 0xb8,
+  0xd7, 0xe4, 0x55, 0x59, 0xae, 0x6c, 0x51, 0xcd, 0x3a, 0xcc, 0x89, 0x07,
+  0x36, 0x61, 0x08, 0x86, 0xcb, 0x77, 0xe1, 0xad, 0x8f, 0x2d, 0x25, 0x42,
+  0x8f, 0xf7, 0x66, 0x2c, 0x05, 0x11, 0x55, 0x44, 0x59, 0x7d, 0xd7, 0x18,
+  0xc9, 0x9b, 0x1e, 0x43, 0xae, 0xa3, 0xc4, 0xe5, 0x6e, 0x0c, 0x7c, 0x2c,
+  0xc0, 0x6e, 0x40, 0x7f, 0xfd, 0x93, 0x7d, 0x9d, 0xfe, 0x63, 0x4e, 0x15,
+  0x58, 0x28, 0x57, 0x8c, 0x86, 0x50, 0x5b, 0xfa, 0xce, 0x36, 0x57, 0xe8,
+  0xd4, 0x62, 0x48, 0x1b, 0x3d, 0xbe, 0x85, 0xff, 0xb4, 0x01, 0x1f, 0x8f,
+  0x42, 0x01, 0x50, 0x33, 0x00, 0xb6, 0xe5, 0xa4, 0x5c, 0x74, 0x4f, 0x05,
+  0xa1, 0x65, 0xb8, 0xa8, 0x00, 0x7a, 0xbf, 0xa4, 0xe3, 0xd4, 0x73, 0xed,
+  0xfa, 0x8f, 0xeb, 0xb6, 0xf3, 0x3f, 0xae, 0xbb, 0xee, 0xff, 0xb8, 0xee,
+  0x06, 0xf0, 0xe3, 0xfa, 0x3a, 0xe8, 0x6b, 0xd3, 0x20, 0xa0, 0xf6, 0xf3,
+  0x17, 0x7d, 0x83, 0xbf, 0xea, 0x3e, 0xea, 0x7d, 0xd3, 0xfb, 0xe4, 0xfa,
+  0xc6, 0xaa, 0x49, 0xf3, 0x5d, 0xc7, 0x40, 0x2e, 0x77, 0xe7, 0xd0, 0xc8,
+  0x84, 0xd6, 0x34, 0xb9, 0x69, 0xe9, 0x45, 0xb4, 0x27, 0xff, 0x01, 0x9a,
+  0x71, 0x57, 0x20, 0xc1, 0xe3, 0xfe, 0xb5, 0xec, 0x51, 0xba, 0x0e, 0x5a,
+  0x97, 0x2a, 0x28, 0x56, 0x66, 0x5f, 0x8f, 0x6a, 0x49, 0x57, 0x8b, 0x8a,
+  0x2b, 0xe2, 0xf1, 0xf0, 0xd8, 0x5b, 0xa3, 0x58, 0x18, 0xf9, 0xd6, 0xfb,
+  0x83, 0xd3, 0x0f, 0x07, 0x27, 0x4f, 0x27, 0x12, 0x6d, 0x71, 0x36, 0xaf,
+  0x7c, 0xcd, 0x03, 0xbf, 0x76, 0xf2, 0xba, 0x1e, 0x47, 0xc5, 0x13, 0xf8,
+  0x88, 0xd4, 0x1a, 0xf2, 0x73, 0xc5, 0xd3, 0xba, 0x38, 0x80, 0x28, 0x56,
+  0xbe, 0x17, 0x80, 0x4a, 0x6b, 0xa1, 0x30, 0x5f, 0xd7, 0xf7, 0xe9, 0xf5,
+  0x75, 0x09, 0xa0, 0x5a, 0xc4, 0x71, 0x24, 0x05, 0xde, 0x82, 0xa4, 0xad,
+  0x03, 0x59, 0x4b, 0xbd, 0x08, 0xc2, 0x8b, 0xf3, 0xc5, 0x84, 0xf8, 0xa7,
+  0xbc, 0xba, 0xf2, 0x02, 0x73, 0x5d, 0x13, 0xe5, 0xf0, 0x70, 0x39, 0x74,
+  0xf3, 0xb7, 0x24, 0x6c, 0xe8, 0x04, 0xd2, 0x31, 0x8d, 0x54, 0x3e, 0x9e,
+  0x70, 0xda, 0x77, 0x19, 0x91, 0xd2, 0x62, 0x06, 0x5e, 0x4b, 0xdf, 0xe2,
+  0xb3, 0xca, 0xd9, 0x47, 0x9e, 0x4d, 0x4e, 0x5c, 0x09, 0xaa, 0x50, 0x11,
+  0x65, 0x3d, 0xa6, 0xeb, 0xfc, 0xc0, 0xd8, 0x7d, 0x8a, 0x2a, 0x16, 0x7f,
+  0x65, 0x00, 0x90, 0x85, 0x63, 0x01, 0x35, 0x4c, 0x65, 0x32, 0x12, 0x5b,
+  0x57, 0x41, 0x82, 0x52, 0xaa, 0xb5, 0x5e, 0x2e, 0x66, 0xe6, 0x60, 0x18,
+  0x95, 0x6c, 0x42, 0x66, 0xc7, 0xea, 0x4a, 0x90, 0xce, 0xa1, 0x53, 0xe2,
+  0xbf, 0x28, 0x50, 0xa9, 0x75, 0x20, 0x23, 0x35, 0x12, 0x7b, 0xd1, 0x3b,
+  0x6a, 0x7d, 0x78, 0x7c, 0x79, 0x94, 0x1c, 0x7c, 0xb8, 0xfc, 0x7a, 0x9d,
+  0x27, 0xb8, 0x9b, 0x4d, 0x81, 0x2c, 0x1e, 0xaa, 0x87, 0x70, 0x27, 0x5c,
+  0x8d, 0x34, 0x77, 0xac, 0xcd, 0xd2, 0x05, 0x1d, 0x31, 0x02, 0xbd, 0x6f,
+  0x0e, 0x56, 0xac, 0xd2, 0x8b, 0xc1, 0x8b, 0xee, 0x2a, 0x2d, 0x67, 0xcc,
+  0x01, 0x87, 0x0a, 0x48, 0x58, 0xb6, 0x74, 0xee, 0x64, 0xc7, 0x0b, 0x37,
+  0x0b, 0xf9, 0x80, 0xb7, 0x1d, 0xad, 0x22, 0x0c, 0x8c, 0x54, 0x0a, 0xb2,
+  0x85, 0x49, 0xd1, 0x36, 0x43, 0xdc, 0xda, 0xf5, 0x60, 0x8f, 0xb1, 0x19,
+  0x64, 0xa2, 0x02, 0x4a, 0xb9, 0xe0, 0x62, 0x42, 0xa5, 0xd2, 0x15, 0x5d,
+  0x18, 0x49, 0xa0, 0xd0, 0x90, 0x05, 0x31, 0xb5, 0x9a, 0x2d, 0xa0, 0x44,
+  0x8d, 0x2d, 0xd4, 0xa7, 0x2b, 0x0d, 0xa5, 0xca, 0x97, 0x83, 0x8f, 0xc6,
+  0xf9, 0x7c, 0x66, 0x39, 0x33, 0x74, 0x78, 0xc4, 0x34, 0x2b, 0x83, 0x38,
+  0x71, 0x0a, 0x1a, 0x9a, 0x57, 0x71, 0x79, 0xbd, 0xe6, 0x3f, 0xe3, 0xfb,
+  0x9d, 0x34, 0x9b, 0xaa, 0x94, 0xd2, 0xb5, 0xf2, 0x02, 0x87, 0xa2, 0x18,
+  0xef, 0x81, 0x7c, 0x40, 0x68, 0x94, 0xc4, 0xcc, 0xcf, 0x17, 0x3c, 0xb3,
+  0x99, 0x85, 0x6c, 0xbc, 0x9b, 0xe4, 0x6b, 0xe2, 0x49, 0x64, 0x93, 0x43,
+  0xda, 0x8b, 0x40, 0x79, 0x02, 0xbe, 0x81, 0x58, 0xc6, 0x96, 0x77, 0x7a,
+  0x43, 0xd5, 0x00, 0xc2, 0x78, 0x7c, 0x3f, 0x89, 0x27, 0xb5, 0x60, 0x08,
+  0xd0, 0x35, 0x2d, 0x68, 0xe8, 0xf0, 0xbb, 0xb7, 0x1e, 0x01, 0xa7, 0xfa,
+  0xd9, 0x35, 0x54, 0xcd, 0x39, 0xc4, 0xcb, 0x58, 0x03, 0xbc, 0xa4, 0x67,
+  0xb3, 0xe1, 0x06, 0x20, 0x5b, 0x9f, 0x64, 0xd9, 0xdc, 0xd2, 0x2b, 0xe5,
+  0x40, 0x9a, 0xe4, 0x35, 0x1c, 0x0e, 0x42, 0x6d, 0x35, 0x0b, 0x6f, 0x40,
+  0xc7, 0x1c, 0x08, 0xc9, 0xe1, 0xf2, 0x5b, 0x88, 0x51, 0xd8, 0xd8, 0xae,
+  0xc9, 0xee, 0x67, 0xcf, 0x3e, 0x4f, 0x6a, 0xca, 0x30, 0xc8, 0x3b, 0xb4,
+  0x2a, 0x4c, 0x47, 0xb2, 0x3c, 0x77, 0x5b, 0x0a, 0xa7, 0x6a, 0x94, 0x52,
+  0x60, 0xf9, 0x49, 0x4d, 0x79, 0x50, 0xb8, 0x48, 0x05, 0x24, 0x1b, 0x66,
+  0x35, 0x99, 0x49, 0x54, 0x7d, 0x05, 0x33, 0x06, 0xec, 0x2e, 0xcd, 0x16,
+  0xbb, 0xb9, 0x07, 0xde, 0x1e, 0x9e, 0x94, 0xa0, 0x58, 0xee, 0x25, 0x17,
+  0x47, 0x97, 0x17, 0xbd, 0x64, 0x78, 0x79, 0x76, 0xb1, 0x24, 0xe1, 0xbe,
+  0xe1, 0x74, 0x0f, 0x9a, 0x33, 0xf5, 0xb7, 0x49, 0x99, 0x44, 0x5f, 0xca,
+  0x20, 0xa0, 0xcb, 0x82, 0xa7, 0x8e, 0x26, 0x6f, 0x7a, 0x39, 0x9c, 0xde,
+  0x6c, 0x61, 0xdb, 0x98, 0xfb, 0x61, 0xe5, 0xc0, 0x78, 0xd9, 0x9f, 0xb0,
+  0x43, 0x68, 0x2f, 0xd2, 0x70, 0xad, 0x98, 0x47, 0x6f, 0x8d, 0xa9, 0x40,
+  0x66, 0xa8, 0x63, 0xd2, 0xd2, 0x6a, 0x2e, 0x4b, 0x88, 0x16, 0x38, 0xba,
+  0x58, 0xbb, 0x08, 0xa8, 0xd9, 0x72, 0xeb, 0x0a, 0x27, 0x5f, 0x47, 0x7d,
+  0xd4, 0xdb, 0xcc, 0x4b, 0x9d, 0x7e, 0x64, 0xff, 0xa6, 0x35, 0x79, 0xc8,
+  0xbd, 0x42, 0xd8, 0x75, 0x39, 0xcb, 0xd8, 0x18, 0x41, 0x90, 0x51, 0xe5,
+  0x53, 0x9d, 0x58, 0xbe, 0x91, 0x58, 0x5e, 0x85, 0x4d, 0x0b, 0xa5, 0x55,
+  0xde, 0xb0, 0xc8, 0x74, 0xad, 0x54, 0xc6, 0xeb, 0x62, 0xf4, 0xad, 0x69,
+  0x83, 0x7c, 0xdb, 0x0d, 0xed, 0x95, 0x97, 0x2f, 0xda, 0x16, 0xde, 0xbb,
+  0x5d, 0x21, 0x43, 0xe0, 0xfe, 0xa8, 0x64, 0x21, 0x8f, 0x9b, 0x42, 0xb4,
+  0xe1, 0x27, 0x56, 0xe2, 0x7a, 0xa8, 0x12, 0x3e, 0xb5, 0xfe, 0xb9, 0x02,
+  0xf3, 0xc5, 0x0d, 0x11, 0x88, 0x02, 0x88, 0x81, 0xa9, 0x2b, 0x4f, 0xab,
+  0x6b, 0xce, 0x50, 0xfb, 0x45, 0x57, 0xea, 0x76, 0x90, 0xf2, 0x5d, 0xa5,
+  0x59, 0x54, 0x33, 0x9f, 0x6b, 0xbd, 0x9b, 0xd5, 0xb0, 0x82, 0x0d, 0xf8,
+  0x57, 0xce, 0xc5, 0xa2, 0x52, 0x31, 0x92, 0x9f, 0x00, 0xea, 0x82, 0x02,
+  0x8e, 0xa7, 0x89, 0x9d, 0x39, 0xca, 0xce, 0x23, 0x3b, 0x1a, 0xf7, 0xd6,
+  0xa4, 0x44, 0xb8, 0x88, 0x06, 0x1d, 0x26, 0x72, 0x43, 0x5f, 0x06, 0xbe,
+  0x4a, 0x6f, 0x1a, 0x69, 0x4c, 0x3c, 0x4a, 0x15, 0x2a, 0x30, 0x74, 0x46,
+  0x8a, 0x6c, 0x81, 0x60, 0xa0, 0xe7, 0xfe, 0xb2, 0xb1, 0x44, 0x83, 0x11,
+  0xe0, 0x04, 0x41, 0xc3, 0xa0, 0x7d, 0x46, 0xe6, 0x6b, 0x74, 0x55, 0xd2,
+  0x23, 0x8a, 0x28, 0xe8, 0x8b, 0x53, 0x23, 0xb4, 0x76, 0x54, 0x2b, 0xe5,
+  0x40, 0x67, 0x72, 0xb0, 0x22, 0x61, 0xd5, 0xcf, 0x50, 0x68, 0x6d, 0xc9,
+  0x76, 0xc9, 0xf6, 0xf6, 0xe8, 0x96, 0xa2, 0x5f, 0x59, 0xa1, 0xb8, 0xa0,
+  0x85, 0xab, 0x2d, 0xaf, 0xac, 0xee, 0x2e, 0x2e, 0xdf, 0x67, 0xce, 0xfc,
+  0x36, 0xe1, 0x6d, 0x28, 0x15, 0x3b, 0x31, 0x37, 0xa4, 0xc6, 0xd5, 0x96,
+  0xd4, 0x2f, 0xb1, 0x7a, 0xa2, 0x69, 0xba, 0x45, 0x69, 0xeb, 0x33, 0x58,
+  0xa3, 0x70, 0x31, 0x27, 0x1f, 0x60, 0x6e, 0x07, 0x49, 0x2c, 0xa4, 0xcf,
+  0x04, 0x34, 0x0d, 0x62, 0x36, 0x6d, 0x8d, 0x4c, 0x4b, 0x16, 0x28, 0xc1,
+  0xa1, 0xab, 0x8a, 0xbd, 0xb1, 0xbc, 0xf6, 0x9f, 0x72, 0x4b, 0x42, 0xcd,
+  0x47, 0x29, 0x71, 0xf6, 0xc3, 0xb5, 0xce, 0x26, 0x2c, 0x87, 0xf6, 0xc7,
+  0x8c, 0xa1, 0xbe, 0x98, 0x87, 0xf7, 0xfc, 0xf1, 0xb9, 0x6b, 0x52, 0x58,
+  0x5c, 0x68, 0xaa, 0x51, 0x7e, 0xab, 0xf1, 0x3b, 0xd9, 0x94, 0x03, 0xb7,
+  0x00, 0xee, 0xea, 0xef, 0x9e, 0x46, 0x28, 0x02, 0xc1, 0xed, 0xbe, 0x0c,
+  0x0d, 0xaf, 0xbf, 0x1e, 0x18, 0xe1, 0x6a, 0x94, 0x8b, 0x9d, 0x75, 0xbf,
+  0x90, 0x1b, 0xfb, 0xde, 0xec, 0xab, 0xa4, 0x4b, 0xb7, 0x7a, 0x1b, 0x9e,
+  0x19, 0x75, 0x4c, 0x7a, 0x85, 0xa5, 0x37, 0xa9, 0x74, 0x13, 0x57, 0x26,
+  0x5e, 0x0b, 0x87, 0x2e, 0x6d, 0xad, 0xe8, 0xd5, 0xee, 0xab, 0xbd, 0xc1,
+  0xee, 0xcb, 0xcf, 0x07, 0xbb, 0x3b, 0x83, 0xdd, 0xf5, 0x4e, 0xad, 0x71,
+  0x29, 0xc1, 0xe0, 0xb5, 0x13, 0x29, 0xa6, 0x91, 0x2c, 0x27, 0x69, 0xc1,
+  0x07, 0x66, 0x0f, 0x03, 0x7a, 0x6c, 0xc0, 0xb4, 0x9e, 0xc1, 0x27, 0x66,
+  0x46, 0xa9, 0xa1, 0x6a, 0x7f, 0x5d, 0xa4, 0xa4, 0x5e, 0xa4, 0x8e, 0xdb,
+  0x65, 0x9e, 0xd3, 0x2e, 0x52, 0xe6, 0x04, 0xd7, 0x29, 0x5b, 0xb5, 0x44,
+  0x29, 0x16, 0x17, 0x61, 0x79, 0x57, 0x17, 0x87, 0xb7, 0xfe, 0x6a, 0xd2,
+  0x22, 0x9d, 0x54, 0xb7, 0xdf, 0xff, 0x27, 0x2c, 0x3e, 0x95, 0x90, 0x6f,
+  0x73, 0x17, 0x52, 0xb3, 0xd5, 0xc3, 0x13, 0x9b, 0x06, 0x86, 0x5c, 0xc1,
+  0x6e, 0xba, 0x99, 0x64, 0x0f, 0xb1, 0xf0, 0xeb, 0x64, 0x6c, 0x79, 0x57,
+  0xcc, 0x91, 0x97, 0x1e, 0xea, 0xbb, 0x47, 0xd1, 0xa6, 0xfa, 0xf7, 0xba,
+  0x19, 0x81, 0xf2, 0x1a, 0xae, 0x2b, 0x96, 0xcf, 0xda, 0x1c, 0xbd, 0xf6,
+  0xc7, 0x3f, 0x3a, 0x79, 0xc4, 0x35, 0x88, 0x98, 0x4d, 0xf0, 0x45, 0x4f,
+  0x08, 0x17, 0xd8, 0xd3, 0xc8, 0x74, 0x6f, 0xc9, 0xfa, 0xfe, 0x0f, 0xf0,
+  0x4a, 0xfe, 0xd4, 0xff, 0xc1, 0xfc, 0xfb, 0xa7, 0x75, 0x0b, 0x97, 0xe4,
+  0x14, 0x4f, 0xd6, 0x91, 0xd7, 0xda, 0x47, 0xb9, 0xd7, 0x2e, 0x57, 0x01,
+  0xad, 0xe0, 0xf2, 0xf0, 0x9c, 0x0f, 0x62, 0xc5, 0xde, 0x39, 0x8c, 0x94,
+  0x04, 0x11, 0xd4, 0x7a, 0x92, 0xe0, 0x4c, 0xf6, 0x60, 0x76, 0x8a, 0x9d,
+  0x4b, 0x65, 0xfd, 0x65, 0xb3, 0x12, 0x2f, 0xf6, 0x1c, 0x1f, 0x02, 0x29,
+  0x8e, 0x5c, 0x11, 0xda, 0x68, 0xb9, 0xd7, 0xe4, 0x4a, 0x61, 0x74, 0xb6,
+  0x11, 0xbf, 0xaa, 0x52, 0xf3, 0x0f, 0xb4, 0x39, 0x4a, 0x17, 0xad, 0xc9,
+  0x23, 0x7b, 0x6f, 0xba, 0xd6, 0x13, 0x62, 0x13, 0x06, 0x79, 0x68, 0x21,
+  0x71, 0x33, 0x1d, 0x55, 0x96, 0x2a, 0xb3, 0x4b, 0x95, 0xd7, 0xb7, 0x34,
+  0x42, 0x41, 0x2c, 0x41, 0x65, 0x73, 0x27, 0x9e, 0xc3, 0x0a, 0x15, 0x93,
+  0x48, 0x4a, 0x06, 0x94, 0x85, 0x21, 0x7a, 0x53, 0xec, 0x2e, 0x09, 0x5d,
+  0x7c, 0x85, 0xf9, 0x47, 0xb3, 0x38, 0xe5, 0xb1, 0x2a, 0x8b, 0x27, 0x17,
+  0xfb, 0x29, 0x11, 0x9a, 0xc7, 0x94, 0x26, 0xe7, 0x46, 0xdf, 0xb5, 0xdb,
+  0xc4, 0xcb, 0xf5, 0x4b, 0x36, 0xe9, 0x07, 0x74, 0x09, 0x6e, 0x75, 0x2f,
+  0x2f, 0xe2, 0xca, 0x4c, 0x73, 0xdf, 0x3d, 0x63, 0xd6, 0x8d, 0x4e, 0x2c,
+  0xa1, 0x40, 0x2a, 0xd3, 0x87, 0x49, 0xcf, 0x26, 0x17, 0x28, 0x9c, 0x8a,
+  0xd0, 0x06, 0xaa, 0xd8, 0xad, 0x45, 0x4d, 0x06, 0xc1, 0xb9, 0x3a, 0xad,
+  0x14, 0x98, 0x50, 0xb3, 0x1a, 0x76, 0xe2, 0xe9, 0x4f, 0xc8, 0x6d, 0x42,
+  0x1a, 0xdd, 0x17, 0xa8, 0x9e, 0x12, 0xda, 0x35, 0xe8, 0xfc, 0x2c, 0xc6,
+  0xbe, 0xe2, 0xdd, 0xad, 0x7b, 0x3b, 0xa1, 0x47, 0x85, 0x4a, 0xc2, 0x60,
+  0x92, 0xfb, 0xf9, 0xfc, 0xf1, 0xec, 0x6c, 0xcd, 0x1a, 0xa5, 0xb5, 0x6c,
+  0x09, 0x18, 0x7b, 0xd1, 0xd4, 0x8b, 0xeb, 0x6b, 0xe4, 0x87, 0x04, 0x5d,
+  0x24, 0xfc, 0xa5, 0x43, 0x58, 0x08, 0x5d, 0x9d, 0x91, 0xe9, 0xe8, 0xba,
+  0x4e, 0x87, 0x43, 0x79, 0x8a, 0xe8, 0x71, 0xa4, 0x3f, 0x4b, 0x81, 0xc0,
+  0x04, 0x98, 0xe1, 0x83, 0xee, 0xd7, 0x6d, 0xee, 0x43, 0x9c, 0x78, 0xac,
+  0x46, 0xad, 0xab, 0x23, 0x88, 0x63, 0x78, 0xb2, 0xb1, 0x5e, 0x21, 0x06,
+  0x07, 0x2b, 0x2b, 0xc2, 0x91, 0xb3, 0x8d, 0xc8, 0x3a, 0x39, 0x3b, 0x2d,
+  0xbf, 0x92, 0xb4, 0x70, 0xce, 0xeb, 0xad, 0x6c, 0x9e, 0xa4, 0x9f, 0xc6,
+  0x11, 0x56, 0x1f, 0xa7, 0xf9, 0x58, 0xe5, 0x20, 0x70, 0x22, 0xd1, 0x57,
+  0x9b, 0x9e, 0x0f, 0xf6, 0x82, 0xa5, 0xa5, 0xb2, 0xe1, 0xe3, 0x71, 0x1f,
+  0x0a, 0xc1, 0x6b, 0xd6, 0x53, 0xb6, 0x45, 0x4b, 0x88, 0x6b, 0x50, 0xc3,
+  0x4c, 0xe6, 0xfb, 0xf0, 0xf0, 0x50, 0x14, 0x9a, 0xcb, 0x9b, 0x8e, 0x66,
+  0x61, 0x13, 0x18, 0x45, 0xad, 0x8a, 0xc2, 0xc3, 0xea, 0x9b, 0x45, 0x33,
+  0x41, 0xa5, 0x14, 0x92, 0x1a, 0x2a, 0x87, 0x2d, 0xe6, 0xb7, 0x43, 0x34,
+  0x51, 0x9a, 0xe5, 0xe0, 0x64, 0x75, 0x6d, 0x3c, 0x00, 0x45, 0xce, 0x99,
+  0xe0, 0x12, 0x2f, 0x4a, 0xdb, 0xdd, 0x52, 0x0c, 0xdc, 0x57, 0x3f, 0x17,
+  0x54, 0x7b, 0x58, 0x47, 0xbc, 0x5b, 0xb6, 0x15, 0x7c, 0x36, 0xcd, 0x9b,
+  0x5a, 0x8a, 0x9a, 0xf2, 0xb7, 0xba, 0x6d, 0x3f, 0xb2, 0x1e, 0x32, 0xd5,
+  0xed, 0x25, 0x79, 0xb9, 0x74, 0x49, 0xe2, 0x92, 0x8a, 0x0c, 0x2c, 0xcc,
+  0x7c, 0xb2, 0x79, 0x08, 0x9e, 0x0a, 0xe2, 0xa3, 0xc2, 0xa9, 0x38, 0xbc,
+  0xa1, 0xa0, 0xd3, 0xd4, 0x2c, 0x90, 0xe9, 0x75, 0x0d, 0x39, 0xc0, 0x44,
+  0xf0, 0xc3, 0x93, 0xed, 0xcb, 0x93, 0x6e, 0xf2, 0x16, 0x55, 0x09, 0xa9,
+  0xc4, 0x47, 0xdc, 0xf6, 0x7c, 0xf2, 0x14, 0xf9, 0x85, 0x84, 0xed, 0x0e,
+  0xe7, 0x2f, 0x44, 0x93, 0x7f, 0x16, 0x85, 0x82, 0x7a, 0x9c, 0xef, 0xb6,
+  0xc8, 0x0a, 0xa0, 0xe2, 0xb3, 0x89, 0x28, 0xc7, 0x40, 0x77, 0xd7, 0xc9,
+  0xe9, 0xc1, 0x25, 0x21, 0x75, 0x1a, 0xc9, 0x76, 0xb9, 0x2a, 0x03, 0x08,
+  0xa6, 0x12, 0x8d, 0x58, 0x6a, 0x86, 0x74, 0xec, 0xc8, 0x2e, 0x55, 0x65,
+  0xe7, 0xe5, 0xab, 0x75, 0xe7, 0xad, 0x9a, 0x7e, 0x33, 0xa5, 0x72, 0x3f,
+  0x74, 0xf7, 0x7c, 0x77, 0x35, 0x76, 0xa3, 0xab, 0xc1, 0x13, 0x10, 0x5d,
+  0x91, 0x0b, 0x91, 0xe6, 0x32, 0xcd, 0x76, 0xeb, 0xc2, 0x89, 0x39, 0x2d,
+  0xaf, 0x73, 0x20, 0x65, 0x79, 0xa9, 0x20, 0xc6, 0x6d, 0x91, 0xa8, 0xae,
+  0x0c, 0xe6, 0xc9, 0x21, 0x4c, 0x39, 0xee, 0xc5, 0x36, 0x46, 0x8c, 0x0f,
+  0x09, 0xdd, 0x15, 0x76, 0x52, 0x85, 0xe5, 0x4c, 0xe1, 0x9c, 0x91, 0xea,
+  0xbb, 0x46, 0xc6, 0xe4, 0x63, 0x63, 0x29, 0x8c, 0x1f, 0x06, 0x8c, 0xd9,
+  0xae, 0xdb, 0xa1, 0xd1, 0xbc, 0x95, 0xe5, 0x6d, 0x3d, 0xa5, 0x14, 0xa6,
+  0x8d, 0xc2, 0x99, 0x64, 0x8c, 0x2b, 0x1d, 0xf2, 0x2f, 0x5b, 0xd7, 0xc7,
+  0x57, 0x64, 0x9a, 0x5d, 0x07, 0xd7, 0x2e, 0x7b, 0x75, 0x49, 0xc4, 0xf5,
+  0xba, 0xd4, 0xba, 0x8e, 0x4e, 0x92, 0x7c, 0x44, 0x4c, 0x5f, 0xdb, 0x29,
+  0x1a, 0x31, 0xe9, 0x45, 0xc9, 0xd6, 0x7a, 0x5d, 0xfe, 0xb2, 0x2a, 0xa4,
+  0x38, 0x6a, 0xa5, 0xc8, 0xd9, 0x0c, 0xa7, 0x4e, 0x73, 0x5f, 0x99, 0x7b,
+  0xdf, 0x92, 0xe3, 0x75, 0x32, 0xe9, 0x5a, 0xc4, 0x79, 0x5c, 0xa3, 0x8b,
+  0x22, 0x4e, 0xf7, 0x54, 0x16, 0xe2, 0x3e, 0x6e, 0xed, 0xb0, 0x42, 0x7b,
+  0xe9, 0xa8, 0xb6, 0xf8, 0x78, 0x28, 0x1f, 0xa1, 0x8a, 0x2c, 0xaa, 0x7c,
+  0x2a, 0x94, 0xdb, 0x1b, 0xff, 0xb1, 0xe1, 0xd8, 0x5f, 0x07, 0x4b, 0x12,
+  0xcf, 0x63, 0x8c, 0x34, 0x88, 0x34, 0x49, 0xa8, 0x49, 0xd3, 0xcd, 0xd1,
+  0x63, 0x61, 0x73, 0x8c, 0x30, 0xe8, 0xe9, 0xf8, 0x56, 0xf7, 0xe8, 0xeb,
+  0xa3, 0x83, 0xb7, 0x36, 0x31, 0xe2, 0x67, 0xf0, 0x23, 0x77, 0x55, 0x7e,
+  0xb8, 0x49, 0x5c, 0xb2, 0x00, 0xaa, 0xee, 0xd6, 0x4b, 0xe6, 0x8b, 0xdd,
+  0x7e, 0xa3, 0x8c, 0x39, 0xfe, 0x16, 0xe2, 0x31, 0x49, 0xb1, 0x3c, 0xba,
+  0x55, 0xb1, 0x51, 0x8c, 0xbe, 0x46, 0xf5, 0x46, 0xc1, 0x66, 0xbc, 0x94,
+  0xeb, 0x6e, 0xa9, 0x93, 0xc4, 0x73, 0x38, 0xab, 0xef, 0x9a, 0xb4, 0x66,
+  0xc6, 0x8b, 0x79, 0x5b, 0xf9, 0x1a, 0x5b, 0x79, 0x5a, 0x8e, 0xca, 0xab,
+  0xab, 0x15, 0x41, 0x40, 0x66, 0x1c, 0x00, 0xa6, 0x8b, 0x77, 0xcc, 0x3a,
+  0x4d, 0x23, 0xbd, 0x37, 0x42, 0x71, 0xea, 0xb4, 0x32, 0xc7, 0x6d, 0x7d,
+  0xc0, 0x47, 0x40, 0x0a, 0x75, 0x45, 0xca, 0x79, 0xdb, 0x58, 0xc2, 0x83,
+  0x44, 0xe4, 0xd5, 0xdc, 0x43, 0xa2, 0x01, 0x3b, 0x66, 0x38, 0x96, 0xed,
+  0xd1, 0xb6, 0x99, 0x59, 0xff, 0xaf, 0x7f, 0xfc, 0xf0, 0x53, 0x84, 0xbc,
+  0x0e, 0x04, 0xcf, 0x37, 0x0c, 0x93, 0x34, 0xcf, 0xcf, 0x24, 0x11, 0xcd,
+  0x72, 0x8c, 0xb9, 0x82, 0x79, 0xa4, 0x82, 0x65, 0xd3, 0xab, 0x81, 0xa3,
+  0x60, 0x0d, 0x2f, 0xc6, 0xda, 0x7d, 0x10, 0xd4, 0xd9, 0x84, 0x6b, 0x67,
+  0x2c, 0x32, 0xb1, 0x41, 0x81, 0x03, 0xd6, 0x81, 0x78, 0x2c, 0x57, 0x8c,
+  0xac, 0x44, 0x90, 0x11, 0xe7, 0x88, 0x5a, 0x2d, 0xac, 0xcb, 0x6e, 0xc0,
+  0x63, 0xeb, 0xf3, 0xf4, 0x56, 0xc2, 0x46, 0x53, 0xa3, 0x99, 0x96, 0x24,
+  0x78, 0xa9, 0x9e, 0xf4, 0x56, 0xf2, 0x0e, 0x95, 0x85, 0xfd, 0xec, 0x44,
+  0xda, 0x7e, 0xbf, 0xc3, 0x91, 0xb7, 0x39, 0xa3, 0x82, 0xc1, 0x8b, 0xd6,
+  0x18, 0xe1, 0x8b, 0x15, 0x7b, 0x9f, 0xdd, 0x0c, 0x58, 0x19, 0x46, 0xd1,
+  0x97, 0x00, 0x2c, 0x69, 0xc1, 0x03, 0xf5, 0xbc, 0x4b, 0x26, 0x11, 0x25,
+  0x2a, 0x84, 0x1c, 0xe6, 0x8c, 0xa2, 0x1e, 0xf8, 0xe2, 0x0f, 0x4c, 0x3b,
+  0x2e, 0xba, 0x45, 0xfd, 0x16, 0x8c, 0x0e, 0xbb, 0xaa, 0xb9, 0x9e, 0x57,
+  0x1d, 0xcd, 0xa1, 0x20, 0x0c, 0x39, 0x81, 0x5e, 0x90, 0xe3, 0x40, 0x66,
+  0x34, 0xd7, 0x52, 0x91, 0x6b, 0x18, 0x29, 0x56, 0x34, 0x5e, 0x6f, 0xe2,
+  0xbc, 0x3a, 0x96, 0xc9, 0x6b, 0xfe, 0x73, 0x09, 0x4c, 0xf0, 0x08, 0x54,
+  0xf2, 0xf2, 0xa8, 0x19, 0xab, 0x16, 0x17, 0x91, 0xed, 0xa6, 0x02, 0x10,
+  0x9a, 0xb8, 0xe0, 0x7c, 0xa3, 0xa2, 0x94, 0x02, 0x9d, 0xa9, 0x8b, 0x0f,
+  0xfd, 0x45, 0x28, 0x21, 0x75, 0x33, 0x13, 0x95, 0x9a, 0x2b, 0x4d, 0x99,
+  0x79, 0x1f, 0xad, 0xa3, 0xdc, 0xab, 0x6c, 0x52, 0x0a, 0x55, 0x3d, 0x9f,
+  0x6b, 0x2a, 0xed, 0x99, 0x9a, 0xd9, 0xaa, 0x1b, 0xa3, 0x8c, 0x69, 0x87,
+  0xe9, 0xb1, 0x1b, 0xc1, 0x37, 0x41, 0xb1, 0x67, 0xce, 0xad, 0x3a, 0xe2,
+  0x87, 0x72, 0x59, 0x26, 0xce, 0xe5, 0x0c, 0x0a, 0x77, 0xb6, 0x13, 0x34,
+  0x1e, 0xd6, 0xe3, 0x32, 0xe9, 0xc4, 0xb2, 0x54, 0x71, 0x26, 0x73, 0x78,
+  0x6e, 0xe5, 0xeb, 0x7e, 0xec, 0xba, 0x7b, 0x7d, 0xd8, 0x6f, 0x94, 0x36,
+  0x27, 0x45, 0x94, 0xa2, 0x50, 0x70, 0xd1, 0xdc, 0xb1, 0xeb, 0x06, 0x35,
+  0x76, 0x08, 0x52, 0x3a, 0xbe, 0xcd, 0xe9, 0xa2, 0xae, 0x9b, 0x05, 0x84,
+  0x4b, 0x5a, 0xf8, 0xbd, 0xb4, 0x34, 0x36, 0x93, 0x12, 0x33, 0x1d, 0x97,
+  0x83, 0x74, 0x58, 0x49, 0x7d, 0xa5, 0xd4, 0x78, 0xed, 0x0d, 0x8f, 0xc6,
+  0x9e, 0x12, 0x2b, 0x30, 0xa8, 0x90, 0x21, 0xb3, 0xe8, 0x44, 0x08, 0x3b,
+  0x32, 0x14, 0x22, 0x80, 0xf5, 0x79, 0x2f, 0xe9, 0x7b, 0x54, 0x3f, 0x0b,
+  0x52, 0x7a, 0x60, 0xd4, 0xa2, 0x59, 0x89, 0xf2, 0xa9, 0x6e, 0xc8, 0x32,
+  0x3d, 0x46, 0xce, 0x5c, 0xe7, 0x77, 0xd1, 0xd0, 0x9f, 0x76, 0x0c, 0x71,
+  0x43, 0xed, 0x85, 0x42, 0xda, 0x10, 0x81, 0xe4, 0x2c, 0x50, 0x78, 0x49,
+  0x50, 0x27, 0xc2, 0x2e, 0x5f, 0x70, 0x76, 0xa7, 0x24, 0x3c, 0x09, 0x29,
+  0x56, 0xec, 0x9b, 0x8d, 0x9f, 0xac, 0x7f, 0x5d, 0xd6, 0xcd, 0xfe, 0xba,
+  0xa5, 0x8b, 0x91, 0x48, 0x7d, 0xd6, 0xd9, 0x39, 0x52, 0x4a, 0xa1, 0x1f,
+  0x25, 0x38, 0xe5, 0x2b, 0xc4, 0x88, 0x34, 0x79, 0x58, 0xc1, 0x2a, 0x9c,
+  0xba, 0xe5, 0x92, 0xe3, 0x09, 0x57, 0x38, 0xcb, 0xa5, 0x0b, 0x94, 0x3a,
+  0x70, 0x13, 0x02, 0xd8, 0xa8, 0x4b, 0xdf, 0xf7, 0x0f, 0xf1, 0xf1, 0xfe,
+  0xd7, 0x68, 0xef, 0x4f, 0xeb, 0xd6, 0xf9, 0xd0, 0xfd, 0xd5, 0x7e, 0x58,
+  0xc4, 0xcd, 0x4f, 0xbe, 0xe2, 0x5d, 0x52, 0x2f, 0x2a, 0x05, 0xee, 0x20,
+  0xc8, 0x29, 0xbd, 0x44, 0x5a, 0xe5, 0x64, 0xb2, 0x6d, 0x17, 0x9d, 0xf1,
+  0x1c, 0xcb, 0xd8, 0xf0, 0xe7, 0x15, 0x45, 0xb5, 0xa8, 0xfa, 0x65, 0xbf,
+  0xbc, 0xea, 0xa3, 0xe2, 0xcd, 0x2c, 0xad, 0x6e, 0x29, 0x44, 0xee, 0x9d,
+  0x3a, 0xc0, 0xee, 0x41, 0x8a, 0x32, 0x99, 0xc4, 0x2e, 0x89, 0x94, 0x23,
+  0xf2, 0x95, 0xb5, 0x21, 0xa4, 0x33, 0xb2, 0x98, 0xfb, 0xe2, 0x24, 0xc2,
+  0xeb, 0x96, 0x4c, 0x93, 0x32, 0xde, 0x56, 0x72, 0x6f, 0xf6, 0xf8, 0x22,
+  0xc1, 0xa0, 0xa1, 0x49, 0xcc, 0xd8, 0xb1, 0x00, 0x57, 0xc8, 0x62, 0x0e,
+  0x9d, 0x97, 0xd2, 0xd3, 0x97, 0x5a, 0x02, 0x60, 0xce, 0x39, 0x50, 0x72,
+  0x3e, 0x29, 0x54, 0x0f, 0xc3, 0x20, 0x43, 0xed, 0x53, 0xa9, 0x10, 0x2f,
+  0x49, 0x4b, 0x61, 0x3b, 0xe4, 0xb4, 0x13, 0x30, 0xfa, 0x67, 0x83, 0x67,
+  0x9f, 0x51, 0x6d, 0x71, 0xcb, 0x25, 0xa4, 0x9c, 0x79, 0x4e, 0x68, 0x62,
+  0x29, 0xbd, 0xfd, 0xd5, 0xdd, 0x55, 0x74, 0xd6, 0xb4, 0x24, 0x94, 0x18,
+  0x96, 0x68, 0x62, 0x29, 0x90, 0x75, 0x09, 0xf0, 0x0b, 0x5b, 0xe9, 0x1d,
+  0x29, 0x54, 0xfd, 0x53, 0x23, 0xe7, 0xf6, 0x93, 0xff, 0x2c, 0xb3, 0xf5,
+  0x44, 0x6a, 0xdc, 0xfb, 0xf8, 0xd1, 0x20, 0x07, 0xf3, 0xe0, 0xe2, 0xf4,
+  0xf8, 0xf4, 0xab, 0x7d, 0xaf, 0x0a, 0x1c, 0xaa, 0x07, 0x3b, 0x7a, 0xba,
+  0x8e, 0x5e, 0x0e, 0x07, 0x2d, 0x3d, 0x42, 0xca, 0xf3, 0x74, 0xba, 0x84,
+  0x10, 0x24, 0xe9, 0x27, 0xcb, 0xaa, 0x82, 0xb9, 0x22, 0x07, 0x3d, 0x65,
+  0x5d, 0x65, 0xba, 0xae, 0xa6, 0x0c, 0x34, 0x03, 0xd1, 0x68, 0x4f, 0xa0,
+  0xd1, 0x6a, 0x65, 0x3d, 0x0b, 0x2b, 0x2f, 0x8c, 0xae, 0x91, 0x5a, 0x55,
+  0x55, 0x65, 0x0b, 0xb4, 0x1a, 0xc0, 0x95, 0xc2, 0x10, 0x20, 0x90, 0x61,
+  0x37, 0xa8, 0x1b, 0x01, 0xd1, 0xd9, 0xe2, 0xc4, 0x63, 0x5e, 0xab, 0x1a,
+  0x8b, 0x56, 0xe7, 0x50, 0x06, 0xdd, 0x9c, 0x2c, 0xd1, 0x5b, 0x5c, 0xc1,
+  0x62, 0x2d, 0x08, 0x27, 0xc9, 0x70, 0xf2, 0x53, 0x57, 0x54, 0xc1, 0xce,
+  0xc1, 0x6a, 0xd7, 0x10, 0x7b, 0x89, 0xd5, 0x09, 0xde, 0x81, 0x9e, 0x49,
+  0x1d, 0x6b, 0x3d, 0xc7, 0xdb, 0x15, 0x24, 0x6c, 0x0c, 0x20, 0x41, 0xaf,
+  0xe8, 0x2d, 0xea, 0x2e, 0xff, 0x1b, 0xbe, 0xfc, 0xa7, 0xf3, 0x20, 0xb7,
+  0x93, 0xe0, 0xd0, 0xf4, 0x0b, 0x99, 0x5b, 0x72, 0x2e, 0x4a, 0x4d, 0x5d,
+  0x86, 0xcc, 0xc4, 0x2a, 0xbb, 0xd6, 0x16, 0xe0, 0x1e, 0x5e, 0x33, 0x94,
+  0x5c, 0x94, 0x71, 0x7a, 0x1b, 0xbc, 0x61, 0xd6, 0x4a, 0xa3, 0x49, 0x9e,
+  0x2f, 0x46, 0xb3, 0xc9, 0x8b, 0xe4, 0xb5, 0xf9, 0x4f, 0xa0, 0x7b, 0x0c,
+  0x19, 0xf9, 0x73, 0x48, 0x8e, 0x0e, 0xd4, 0xed, 0x4c, 0x35, 0xcb, 0x42,
+  0x74, 0x5d, 0xfa, 0xeb, 0xb3, 0x3d, 0xd3, 0xd9, 0x4f, 0xa9, 0xe6, 0x53,
+  0x4f, 0xcc, 0x02, 0x36, 0x75, 0xac, 0xa8, 0xae, 0xbc, 0xea, 0xf0, 0x27,
+  0xb4, 0xe0, 0xbb, 0x7b, 0x9f, 0x27, 0xa3, 0xbc, 0x49, 0xde, 0xbf, 0x7d,
+  0x91, 0x18, 0x35, 0x7d, 0x7c, 0x5b, 0x2f, 0x66, 0x2a, 0xa3, 0xb4, 0x3a,
+  0x14, 0x36, 0xc3, 0x46, 0x57, 0x59, 0x30, 0x1d, 0x9f, 0xe6, 0xe3, 0xe4,
+  0x36, 0x7b, 0xe8, 0xb5, 0x7c, 0x88, 0x57, 0xea, 0xeb, 0x74, 0x0e, 0x40,
+  0x27, 0x4d, 0x11, 0xdb, 0xe1, 0xf8, 0x67, 0xc4, 0xbf, 0x64, 0xe6, 0xc0,
+  0x7c, 0xbe, 0xe6, 0x82, 0x12, 0x2b, 0xad, 0xea, 0xcf, 0x5a, 0x8e, 0x89,
+  0x1d, 0x2c, 0xa5, 0x39, 0xdf, 0xbb, 0x83, 0x9d, 0x25, 0x69, 0x1e, 0x08,
+  0x24, 0xaa, 0x47, 0x96, 0x7a, 0x08, 0xdd, 0x58, 0x2a, 0xde, 0x24, 0xe6,
+  0x3d, 0x5f, 0x33, 0x51, 0x5c, 0x5f, 0xac, 0x6c, 0xb2, 0xd5, 0x10, 0xd8,
+  0x20, 0xa2, 0xc2, 0x4c, 0x7e, 0x53, 0x4f, 0x05, 0x44, 0x4a, 0x77, 0x77,
+  0xc5, 0x0d, 0x43, 0xff, 0x6a, 0x39, 0xbe, 0xe4, 0xd7, 0xbf, 0x70, 0x34,
+  0xbb, 0x8f, 0x9c, 0x2b, 0xd7, 0x11, 0x4c, 0x9e, 0x9b, 0x3d, 0xcb, 0x77,
+  0xca, 0x1d, 0x72, 0x93, 0xde, 0x69, 0x2e, 0xa4, 0xec, 0xc1, 0x0b, 0x46,
+  0xe4, 0xe7, 0x65, 0xd5, 0x27, 0x3d, 0x69, 0x9a, 0x4d, 0x82, 0x6b, 0x2b,
+  0xda, 0x7d, 0xae, 0xf4, 0x27, 0xae, 0x6e, 0x72, 0xe8, 0x20, 0x83, 0x8e,
+  0xd3, 0x36, 0x1d, 0x5d, 0x5a, 0x0c, 0xbf, 0x47, 0xcf, 0x6c, 0xef, 0x79,
+  0x06, 0x1d, 0x7e, 0x40, 0x93, 0x9a, 0x7c, 0x98, 0x5f, 0x57, 0x29, 0x62,
+  0xcb, 0xc7, 0x8d, 0xa3, 0xc1, 0x41, 0xef, 0x92, 0x65, 0xbd, 0xb3, 0xc9,
+  0x5e, 0xd6, 0x2b, 0x0f, 0x70, 0x7e, 0xad, 0xdf, 0xa9, 0x29, 0x19, 0x01,
+  0x9a, 0x16, 0x73, 0x8e, 0xe2, 0xe7, 0x1e, 0xa7, 0x5b, 0x8c, 0xa6, 0xc0,
+  0xbc, 0xc4, 0xf9, 0xec, 0xa5, 0xb6, 0xd2, 0xc2, 0xd5, 0x11, 0x01, 0x0b,
+  0xab, 0x58, 0x4a, 0x02, 0xeb, 0x08, 0x70, 0x82, 0x1c, 0x50, 0x5e, 0x5c,
+  0xb1, 0x38, 0x3a, 0x29, 0x8a, 0x81, 0x03, 0x28, 0xba, 0x1c, 0x4f, 0x26,
+  0x04, 0xea, 0xca, 0x76, 0xd0, 0x03, 0xd1, 0x0d, 0x2e, 0xf9, 0x0a, 0x3c,
+  0x96, 0xc1, 0xd3, 0x36, 0xf7, 0x4e, 0x2f, 0xda, 0x3b, 0xda, 0x6d, 0xfe,
+  0xe6, 0x6f, 0xa5, 0xf5, 0xbd, 0x8a, 0x6c, 0xae, 0x5f, 0x74, 0x16, 0xf6,
+  0x56, 0xb9, 0x41, 0x8d, 0x62, 0x9b, 0x4e, 0xe7, 0xc5, 0x40, 0xbf, 0xf0,
+  0xa4, 0xf9, 0xe9, 0x2e, 0xb3, 0xa5, 0x4f, 0xfa, 0x65, 0xf3, 0xd3, 0x9d,
+  0x1b, 0x5f, 0x96, 0xf9, 0xf3, 0xd3, 0x5d, 0xcb, 0x95, 0xfc, 0x59, 0xcc,
+  0xce, 0xa0, 0x65, 0x3b, 0xfa, 0xd3, 0xac, 0xb8, 0x0e, 0x32, 0xa8, 0x01,
+  0x2b, 0x95, 0x1c, 0x6f, 0x73, 0x2a, 0xe8, 0x6f, 0xbd, 0xe4, 0x98, 0x69,
+  0x1d, 0xb8, 0x00, 0x34, 0xbf, 0x7c, 0x82, 0x97, 0x6d, 0x21, 0x68, 0x8b,
+  0xc6, 0x8a, 0xa4, 0x36, 0xe4, 0xe3, 0x05, 0x97, 0xd5, 0xa2, 0x75, 0xb0,
+  0x75, 0xfc, 0x2c, 0x1b, 0xd5, 0xa2, 0xc0, 0x85, 0x75, 0x30, 0xa7, 0xac,
+  0x29, 0x23, 0xa5, 0x3e, 0xf5, 0xbc, 0xba, 0xc5, 0x61, 0xf4, 0x82, 0x26,
+  0x92, 0xaa, 0x15, 0x33, 0x66, 0xa7, 0xd3, 0x1d, 0x6a, 0x98, 0x93, 0xd5,
+  0xa6, 0x84, 0x51, 0xab, 0x12, 0xd6, 0x61, 0x92, 0x3d, 0x82, 0x28, 0x5e,
+  0x07, 0xc4, 0x32, 0xa3, 0x87, 0x26, 0x82, 0x20, 0xa5, 0x71, 0xc3, 0xd5,
+  0xb0, 0x89, 0xa0, 0x2b, 0x6d, 0xbc, 0x97, 0x83, 0x9d, 0xad, 0x1e, 0x15,
+  0x24, 0x98, 0x63, 0x12, 0x08, 0xe2, 0x67, 0xaf, 0x7b, 0xf2, 0xcd, 0xe7,
+  0xd7, 0x64, 0x55, 0x08, 0x74, 0x2c, 0x00, 0xdb, 0xb9, 0x94, 0x1b, 0x0d,
+  0x3b, 0x4a, 0xaa, 0x6d, 0x9b, 0x52, 0x27, 0xef, 0x81, 0xb6, 0x11, 0x2e,
+  0x84, 0xae, 0xef, 0x50, 0x1c, 0x0b, 0x5a, 0x95, 0xbb, 0xef, 0xb8, 0x58,
+  0xa0, 0x9f, 0x31, 0x2f, 0x11, 0xbc, 0xa7, 0xfe, 0xaf, 0xd5, 0x21, 0x11,
+  0xde, 0xaa, 0xb0, 0x05, 0x58, 0xb5, 0x94, 0x6a, 0xb2, 0x64, 0xfb, 0xf7,
+  0xc8, 0x01, 0x6a, 0xd1, 0xa7, 0x2e, 0xe3, 0x1d, 0x6d, 0xea, 0xd9, 0x09,
+  0x77, 0x27, 0xa1, 0xee, 0x06, 0x83, 0x15, 0x47, 0xea, 0xae, 0xe7, 0x0a,
+  0xb2, 0x7b, 0x03, 0xbe, 0xe5, 0x01, 0xd7, 0x31, 0x50, 0x37, 0xa7, 0x67,
+  0x3b, 0x6e, 0x99, 0x1e, 0x29, 0xcb, 0xd5, 0x43, 0x02, 0x12, 0x21, 0xa7,
+  0x42, 0xe0, 0x84, 0x33, 0x8c, 0x28, 0xaf, 0x39, 0x3b, 0x3a, 0x8f, 0x21,
+  0xdb, 0x58, 0x23, 0xa7, 0xef, 0x0c, 0xda, 0x97, 0xaf, 0xf8, 0x15, 0x6c,
+  0x6d, 0x94, 0xaa, 0x1c, 0x67, 0x52, 0x1f, 0x57, 0x59, 0x51, 0x48, 0x4b,
+  0x8f, 0x84, 0x0d, 0xe4, 0x3e, 0xf0, 0x58, 0x94, 0x3c, 0x27, 0xb7, 0xa3,
+  0xb6, 0x4a, 0x74, 0x80, 0xd1, 0x72, 0xcf, 0x41, 0x23, 0xad, 0x61, 0x8c,
+  0x1e, 0x94, 0x5c, 0xd0, 0x9a, 0xad, 0x96, 0x5c, 0x39, 0xd0, 0xbc, 0x3c,
+  0x90, 0x79, 0xe2, 0x32, 0x78, 0x7c, 0x5f, 0x80, 0xa5, 0x54, 0x97, 0x0f,
+  0xd4, 0x5e, 0xc2, 0x7e, 0x40, 0x5e, 0xe3, 0x55, 0x82, 0xa1, 0xf2, 0x9c,
+  0xe0, 0xff, 0x8a, 0x2e, 0x31, 0xfb, 0x61, 0x0b, 0x68, 0xbd, 0x46, 0x48,
+  0x96, 0x0b, 0x72, 0x19, 0xe3, 0x20, 0x4a, 0x9a, 0x89, 0x64, 0x96, 0xec,
+  0x77, 0xcd, 0x32, 0xcd, 0xdd, 0xa3, 0xb9, 0x1f, 0xdc, 0xa4, 0x9f, 0x3e,
+  0x0d, 0xea, 0x6c, 0xdb, 0x6c, 0xba, 0x7a, 0xbb, 0xae, 0xa7, 0xf4, 0xd1,
+  0x1a, 0xa9, 0x5e, 0xcb, 0x05, 0x35, 0x5b, 0x92, 0x3a, 0xbf, 0x22, 0x16,
+  0xc7, 0x29, 0xbd, 0xda, 0x12, 0x7b, 0x8e, 0xa7, 0x95, 0xc9, 0xaa, 0xba,
+  0x01, 0x7f, 0x4e, 0x7f, 0x27, 0x2f, 0x8c, 0x0f, 0x97, 0xe7, 0x33, 0xea,
+  0xa2, 0x2a, 0xb6, 0x19, 0x8f, 0xd6, 0x83, 0x12, 0xde, 0xab, 0x65, 0xf8,
+  0x2c, 0x4e, 0x10, 0xec, 0xf9, 0xe0, 0x28, 0x32, 0xde, 0x2d, 0x90, 0xc9,
+  0xc8, 0xea, 0x42, 0x73, 0x70, 0x98, 0x11, 0x0e, 0xd5, 0x4b, 0x22, 0x55,
+  0x92, 0x97, 0x99, 0xb4, 0xde, 0xd0, 0x08, 0xf1, 0xb5, 0xbf, 0x6b, 0xe7,
+  0xf4, 0xfe, 0xfe, 0x7e, 0xb0, 0xca, 0xa6, 0xfd, 0xed, 0x88, 0xd2, 0xda,
+  0xbc, 0x92, 0xde, 0x3a, 0x3c, 0xc7, 0x69, 0x9f, 0xdf, 0x3d, 0x5f, 0xa1,
+  0x0a, 0x37, 0xad, 0x6b, 0x9b, 0x76, 0xd3, 0xf4, 0x8e, 0xdd, 0x92, 0x30,
+  0xec, 0x7c, 0x72, 0x52, 0xd2, 0x52, 0xc9, 0xbb, 0xd1, 0x8b, 0xa4, 0xec,
+  0x80, 0xc6, 0xa2, 0xb4, 0x09, 0x4e, 0x80, 0x64, 0x12, 0x31, 0xe6, 0x6a,
+  0x42, 0x4c, 0xbd, 0x7e, 0xbb, 0xca, 0xee, 0x32, 0x25, 0xb9, 0xff, 0x32,
+  0x54, 0x61, 0x88, 0x2a, 0xd3, 0x1b, 0xf3, 0x4b, 0x19, 0xf3, 0xcb, 0x7f,
+  0x6a, 0xcc, 0x2f, 0xff, 0x89, 0x31, 0x3f, 0xff, 0x97, 0x8f, 0xf9, 0xaf,
+  0x34, 0xe6, 0xbf, 0x2e, 0x8a, 0xdb, 0x7e, 0x4d, 0x05, 0x55, 0x8d, 0xea,
+  0x2e, 0xac, 0x81, 0x71, 0x4d, 0xad, 0xc5, 0x70, 0x45, 0xfe, 0x0d, 0x5b,
+  0x25, 0xa7, 0x53, 0xe7, 0x9a, 0x73, 0x0c, 0xd8, 0xed, 0xdf, 0x2c, 0xaf,
+  0xd1, 0xec, 0xfb, 0xfa, 0x28, 0x51, 0x60, 0x92, 0xd7, 0x63, 0x52, 0xaa,
+  0xc9, 0x52, 0x5f, 0x97, 0x1e, 0x69, 0xd3, 0xeb, 0x03, 0x57, 0xdc, 0x2d,
+  0xc8, 0xa0, 0xab, 0x8d, 0x28, 0x25, 0x8b, 0x0e, 0x2c, 0x0a, 0xd6, 0x45,
+  0xee, 0x38, 0xe9, 0x73, 0x4a, 0xeb, 0x2c, 0xb2, 0xfb, 0x44, 0x1b, 0x65,
+  0x2c, 0x3a, 0x39, 0xbf, 0x42, 0xbc, 0xee, 0xe5, 0xc3, 0x9c, 0x9a, 0x4b,
+  0xb4, 0x08, 0x58, 0x6d, 0xeb, 0x87, 0xd8, 0x0e, 0x26, 0x9d, 0xce, 0xb1,
+  0xcb, 0x87, 0x5c, 0x79, 0x1b, 0xc1, 0xed, 0x38, 0x9e, 0x96, 0x74, 0x5c,
+  0x49, 0x9d, 0x58, 0x71, 0x14, 0x47, 0x8e, 0xeb, 0x91, 0x85, 0x63, 0x87,
+  0xfc, 0xd1, 0x17, 0x92, 0xb7, 0x59, 0x36, 0x4f, 0xa7, 0x48, 0x06, 0xa3,
+  0x90, 0xc8, 0x32, 0x86, 0xba, 0x56, 0x0c, 0x4f, 0x21, 0x2e, 0x78, 0x23,
+  0xf5, 0x71, 0x44, 0x89, 0xe4, 0x1d, 0x4b, 0x0d, 0x23, 0x14, 0x66, 0x4f,
+  0xf2, 0x49, 0x90, 0x94, 0x2f, 0x6a, 0x91, 0x0d, 0x8e, 0xd8, 0x5e, 0xd0,
+  0x45, 0x3c, 0x92, 0xcc, 0x44, 0xfb, 0x09, 0xcd, 0xcd, 0xcf, 0xcd, 0xc3,
+  0x77, 0xf9, 0x64, 0x11, 0x50, 0x5a, 0x74, 0x5f, 0x1f, 0x90, 0x9d, 0xd7,
+  0x22, 0x2b, 0xe1, 0xe5, 0xa3, 0x27, 0x4a, 0x2b, 0xed, 0x51, 0xce, 0x93,
+  0x98, 0x5f, 0x83, 0x2d, 0x45, 0xac, 0x00, 0x8e, 0x63, 0xf3, 0xf2, 0xf0,
+  0xfc, 0xe3, 0x37, 0x47, 0x47, 0xe7, 0xc7, 0x6f, 0x4f, 0x8e, 0xe4, 0xc0,
+  0xd8, 0x1f, 0x9d, 0x5e, 0x7e, 0x7b, 0xa2, 0x04, 0x8d, 0xc9, 0x92, 0x52,
+  0xaa, 0x9b, 0xc2, 0xb8, 0x91, 0x9c, 0xe4, 0xc5, 0xe2, 0x53, 0x0f, 0x3c,
+  0x74, 0x45, 0x93, 0x1c, 0x1c, 0x7f, 0x6f, 0x34, 0xac, 0xf3, 0xfe, 0x87,
+  0xef, 0x03, 0x02, 0x20, 0x0f, 0x0b, 0xb5, 0xb4, 0x3a, 0x82, 0xd9, 0x86,
+  0x30, 0x59, 0xdc, 0xd8, 0x2d, 0x64, 0xfc, 0xb7, 0xad, 0x54, 0x4f, 0x11,
+  0xf6, 0xc2, 0x5e, 0x8f, 0x52, 0xd5, 0x57, 0x48, 0xb6, 0x58, 0x67, 0x83,
+  0xfc, 0x7a, 0xb9, 0xa3, 0xfc, 0x85, 0x2b, 0x5d, 0x37, 0xed, 0xe2, 0x7d,
+  0x66, 0x34, 0x0f, 0xa8, 0x3c, 0x97, 0xbc, 0xa6, 0xff, 0x2e, 0xab, 0xcc,
+  0x9d, 0xdf, 0x91, 0xb2, 0x63, 0x9e, 0xe5, 0x38, 0x1f, 0x3d, 0x3a, 0xb0,
+  0x6c, 0x9b, 0x12, 0x8b, 0xa4, 0x46, 0x10, 0x94, 0x42, 0xa3, 0x49, 0xac,
+  0xf0, 0x33, 0x92, 0x39, 0xe9, 0x37, 0xdc, 0x1e, 0x1a, 0x34, 0xd3, 0x33,
+  0x48, 0xde, 0x1e, 0x5d, 0xf4, 0xa8, 0xd6, 0x37, 0x23, 0xaa, 0x8e, 0x4e,
+  0xbf, 0x62, 0x02, 0x52, 0xe5, 0x95, 0x44, 0x98, 0x24, 0x84, 0x58, 0x79,
+  0x73, 0x42, 0x75, 0xc2, 0x29, 0x78, 0x55, 0xd7, 0x46, 0x93, 0xfe, 0x0d,
+  0x53, 0x3e, 0x79, 0x6c, 0xaf, 0xcd, 0x7f, 0x62, 0x53, 0x65, 0x94, 0xe6,
+  0xaf, 0x23, 0xd3, 0x25, 0x3a, 0x88, 0x0d, 0xac, 0x89, 0xfe, 0x8b, 0x6a,
+  0xe7, 0x98, 0x31, 0x33, 0x21, 0x61, 0x88, 0x47, 0x27, 0x08, 0xa6, 0x07,
+  0xa2, 0x24, 0x4c, 0x79, 0xcc, 0xd6, 0x0c, 0x8c, 0x27, 0xf3, 0xb9, 0x1e,
+  0xed, 0x4b, 0x70, 0x19, 0xb8, 0xc9, 0x88, 0xe1, 0xf9, 0xab, 0x5c, 0x00,
+  0xaf, 0xce, 0x0b, 0x6c, 0x14, 0xab, 0x49, 0x3e, 0x41, 0xc2, 0x90, 0xf9,
+  0x46, 0x59, 0x51, 0x60, 0xe7, 0xb7, 0x9c, 0xb8, 0x6a, 0x94, 0xbc, 0x9e,
+  0x9a, 0x17, 0xa7, 0x71, 0x20, 0x1f, 0x97, 0x62, 0x72, 0x25, 0xa5, 0x3a,
+  0xa4, 0x54, 0x52, 0x73, 0x80, 0x6d, 0x2f, 0x34, 0xc3, 0x01, 0xaf, 0x10,
+  0xe0, 0x02, 0x5d, 0x51, 0x4c, 0x8b, 0x20, 0xdb, 0x6f, 0x03, 0xd8, 0xa7,
+  0x8d, 0x5e, 0xb2, 0x41, 0xcc, 0x5b, 0xf4, 0x27, 0x8a, 0x10, 0x48, 0xc1,
+  0xad, 0x8d, 0x5e, 0x58, 0x4d, 0x64, 0x43, 0xb6, 0xeb, 0x86, 0xd9, 0xf1,
+  0xdc, 0x1a, 0x2d, 0x21, 0xd2, 0x28, 0xa4, 0x1f, 0x92, 0x9c, 0x5e, 0x0b,
+  0xb7, 0xa9, 0x1f, 0xc6, 0xad, 0x03, 0x86, 0x28, 0xdb, 0x5c, 0x3b, 0x23,
+  0x73, 0x99, 0xbe, 0xf7, 0x2b, 0xcb, 0x12, 0x5e, 0x86, 0x9f, 0xcb, 0x4c,
+  0xed, 0x5c, 0x2b, 0x9d, 0xe6, 0x74, 0xb1, 0xfc, 0x75, 0xd6, 0xd7, 0xa3,
+  0x44, 0xbd, 0x07, 0x0c, 0x39, 0xf7, 0x87, 0x44, 0x71, 0x04, 0xaa, 0xb4,
+  0x48, 0x50, 0x0b, 0xc2, 0x49, 0x09, 0x92, 0xd6, 0x27, 0xd7, 0x94, 0x4b,
+  0x20, 0x8c, 0x49, 0xb3, 0x0e, 0x02, 0x32, 0x18, 0xed, 0x76, 0x9f, 0x0d,
+  0x8a, 0xc3, 0x44, 0x0c, 0x24, 0xe0, 0xac, 0xee, 0xab, 0xbc, 0x21, 0x2e,
+  0x38, 0x09, 0xcf, 0xb0, 0x10, 0x8b, 0xe7, 0xe6, 0x72, 0x8e, 0x84, 0x99,
+  0x9e, 0xbb, 0x74, 0x2a, 0xac, 0x8f, 0x1a, 0x4f, 0xae, 0xb4, 0x5b, 0x7d,
+  0x89, 0x3c, 0xa8, 0x0d, 0x43, 0xef, 0xfd, 0xee, 0x9f, 0x5c, 0x39, 0xaf,
+  0x9c, 0x6d, 0xb4, 0xe6, 0xc3, 0x93, 0x53, 0xd0, 0x3b, 0xa0, 0xc1, 0x69,
+  0x3e, 0xcb, 0x9b, 0x3e, 0x04, 0xc7, 0x6b, 0x23, 0x23, 0xb2, 0x20, 0x07,
+  0xb7, 0x4d, 0x9a, 0x3c, 0x13, 0x4a, 0x5c, 0x87, 0xca, 0x4b, 0xf0, 0x6e,
+  0xbb, 0x64, 0xa2, 0x16, 0x2a, 0x89, 0x30, 0xe2, 0x80, 0x94, 0xc5, 0xa1,
+  0xbe, 0x71, 0x6c, 0x41, 0x2f, 0xa0, 0xb9, 0x93, 0x8a, 0x70, 0xe1, 0x09,
+  0x21, 0x37, 0x95, 0x20, 0x28, 0xb8, 0xf0, 0x68, 0x60, 0x95, 0x99, 0xee,
+  0x2b, 0x09, 0x0b, 0x35, 0x46, 0x71, 0xfd, 0x09, 0x3b, 0x54, 0xb0, 0x24,
+  0xb6, 0x9f, 0x28, 0x62, 0xc3, 0xfd, 0x62, 0x6c, 0x84, 0x39, 0xd1, 0x81,
+  0x3e, 0x37, 0x32, 0x4d, 0xdc, 0xe7, 0x13, 0x54, 0x0d, 0x2b, 0x59, 0x79,
+  0x35, 0xba, 0x6b, 0x2d, 0x79, 0x06, 0xe4, 0xc2, 0xca, 0x63, 0x10, 0xba,
+  0xa8, 0x4b, 0x81, 0x57, 0x0c, 0x73, 0x9a, 0x70, 0xd6, 0x2d, 0xf9, 0x0e,
+  0xb0, 0x0c, 0xf0, 0x77, 0x6d, 0xf3, 0x75, 0x6c, 0x13, 0xce, 0x8c, 0x8d,
+  0xbb, 0xb8, 0x22, 0xe2, 0xa4, 0xd0, 0x7b, 0xa7, 0x50, 0xb7, 0x81, 0x3d,
+  0x22, 0x5c, 0xb9, 0xf3, 0x96, 0x59, 0x41, 0xbe, 0xd9, 0x50, 0xd6, 0xdd,
+  0x45, 0x21, 0x55, 0x7e, 0x19, 0xa5, 0x62, 0x4e, 0xe8, 0x6d, 0x3e, 0x2d,
+  0xa3, 0xee, 0x36, 0x23, 0xda, 0x66, 0x78, 0xfd, 0xfd, 0x86, 0x3a, 0x6e,
+  0x28, 0x0d, 0xe3, 0x3a, 0x95, 0xdf, 0x72, 0x06, 0xd6, 0xc6, 0x35, 0x7f,
+  0xe2, 0xab, 0x0d, 0x65, 0x58, 0x0a, 0x71, 0xe6, 0xe4, 0xd1, 0x63, 0x0f,
+  0x9e, 0x86, 0x7e, 0xeb, 0xfd, 0x64, 0x6f, 0x67, 0xe7, 0x9b, 0x5e, 0xf2,
+  0x8c, 0xcb, 0xa8, 0xed, 0x7e, 0xb5, 0xbc, 0xb6, 0x27, 0x54, 0x64, 0x5b,
+  0xd2, 0xf5, 0x2f, 0xa4, 0x19, 0x63, 0xce, 0x78, 0x67, 0x5a, 0x60, 0x19,
+  0x83, 0x17, 0x5d, 0x0d, 0x9f, 0xee, 0x05, 0x46, 0x4b, 0xc5, 0x15, 0xc4,
+  0x41, 0x1f, 0x05, 0x0d, 0x0e, 0xce, 0x16, 0x0a, 0xec, 0xcd, 0x25, 0xc9,
+  0x86, 0xb6, 0x2a, 0xb7, 0x0b, 0x65, 0x73, 0x4a, 0x0f, 0x18, 0x2b, 0x2e,
+  0x74, 0x53, 0x51, 0x7c, 0x11, 0x5a, 0xac, 0x65, 0xf8, 0xf3, 0xba, 0x44,
+  0x30, 0xd9, 0x31, 0x52, 0x49, 0x08, 0x3b, 0xf2, 0xdb, 0x5d, 0x89, 0xd3,
+  0x1e, 0xce, 0x67, 0xdd, 0xf4, 0xc9, 0xd6, 0x8c, 0xd2, 0x0e, 0x9c, 0x9f,
+  0x9d, 0x3f, 0xdb, 0xb2, 0x68, 0x6b, 0x06, 0x6a, 0x49, 0xb6, 0x85, 0xa5,
+  0x21, 0xb0, 0x89, 0x18, 0x42, 0x93, 0xc1, 0x90, 0xbf, 0x58, 0x4d, 0xac,
+  0x5a, 0x38, 0x8d, 0xf0, 0x3d, 0xa3, 0x8d, 0x65, 0xf7, 0x0e, 0xd8, 0xe8,
+  0x51, 0x44, 0xba, 0x63, 0xe9, 0x68, 0x17, 0xd6, 0xc2, 0x6c, 0xb5, 0x5a,
+  0x31, 0x41, 0x48, 0xf6, 0xea, 0x03, 0x4a, 0x98, 0xf8, 0xd4, 0x61, 0x20,
+  0x92, 0xeb, 0x76, 0xb2, 0x9d, 0x60, 0xe3, 0x13, 0xf8, 0x31, 0x64, 0xcf,
+  0x3d, 0x48, 0xfd, 0xb3, 0xc8, 0x4a, 0xbe, 0x6f, 0x6d, 0xe4, 0x86, 0xfc,
+  0x37, 0xb4, 0x6f, 0xc9, 0x9f, 0x94, 0x36, 0x83, 0xa5, 0x2c, 0xf9, 0x96,
+  0xd6, 0xa7, 0xa5, 0x36, 0x0b, 0x0b, 0x5c, 0x9a, 0x9c, 0x9e, 0x0c, 0x2f,
+  0x7d, 0xff, 0x32, 0x2a, 0x4b, 0x04, 0x60, 0x94, 0x76, 0xbe, 0xb8, 0x17,
+  0xa8, 0x3c, 0x39, 0x8e, 0x14, 0x3a, 0x27, 0x9c, 0xd8, 0x7e, 0x32, 0x2c,
+  0x67, 0x3e, 0x2f, 0x7f, 0x2d, 0xbc, 0xe9, 0x48, 0xcb, 0x65, 0xc7, 0xb9,
+  0xa6, 0x61, 0xe7, 0x95, 0x4f, 0x19, 0x1e, 0xec, 0x54, 0xea, 0xe2, 0x9f,
+  0x18, 0x68, 0x22, 0x20, 0x15, 0x05, 0xbf, 0xd5, 0x8b, 0x51, 0xdf, 0x23,
+  0x68, 0x60, 0x7d, 0x07, 0x74, 0x6b, 0x66, 0xf7, 0x9a, 0x1b, 0xea, 0x36,
+  0x34, 0x04, 0x36, 0x65, 0x3f, 0xf1, 0x46, 0x12, 0x72, 0x8d, 0x96, 0xff,
+  0x6d, 0x9c, 0x90, 0x11, 0x29, 0x4c, 0xa7, 0xf4, 0xf4, 0x93, 0x36, 0x15,
+  0x4d, 0x44, 0x67, 0x1e, 0x85, 0xeb, 0xb2, 0x8d, 0x39, 0x23, 0x7f, 0xfe,
+  0xcf, 0x8c, 0x61, 0x08, 0x28, 0x1c, 0xb4, 0x29, 0xbc, 0xeb, 0x98, 0x82,
+  0x9f, 0xdd, 0x02, 0xb6, 0xd7, 0xe6, 0xd0, 0x05, 0x24, 0xa9, 0x04, 0x24,
+  0xc8, 0x27, 0xcc, 0xaf, 0x51, 0xb7, 0x09, 0x36, 0x38, 0x85, 0x82, 0x44,
+  0x0e, 0xa2, 0x06, 0x94, 0x16, 0x56, 0x2f, 0x59, 0x49, 0xf6, 0x9b, 0xb4,
+  0x90, 0x14, 0xfd, 0xef, 0x19, 0x9e, 0x83, 0xc0, 0x63, 0x2f, 0x96, 0xf6,
+  0x1d, 0xcb, 0x57, 0xb4, 0xa9, 0x5c, 0x45, 0xf2, 0xc1, 0x98, 0xb6, 0xdd,
+  0x94, 0x3f, 0xa9, 0x5b, 0x23, 0x43, 0xd5, 0x4a, 0xd5, 0xd0, 0x46, 0x68,
+  0x45, 0x02, 0x37, 0xf4, 0xa2, 0xc8, 0xcd, 0xf7, 0x13, 0x56, 0x5d, 0xaf,
+  0x08, 0x88, 0x57, 0xa1, 0xaa, 0x81, 0x86, 0x62, 0x72, 0x4a, 0xc8, 0x55,
+  0x9e, 0x52, 0x72, 0x0a, 0xf8, 0x10, 0xbe, 0x30, 0x7a, 0xb2, 0x0c, 0x4d,
+  0xed, 0xe7, 0x62, 0xed, 0xb6, 0x79, 0x53, 0xc0, 0xeb, 0x24, 0x59, 0xce,
+  0xe6, 0x42, 0xda, 0x46, 0xf6, 0x5e, 0xb4, 0x4a, 0x4c, 0x9a, 0x78, 0xf1,
+  0xfa, 0x56, 0xe2, 0x1e, 0x1d, 0x62, 0x4e, 0x17, 0xdc, 0x7c, 0x77, 0x71,
+  0xf6, 0xbe, 0x7f, 0x79, 0x86, 0x62, 0x00, 0x68, 0x3a, 0x89, 0x68, 0x9c,
+  0x5a, 0xcc, 0xc5, 0xab, 0x68, 0xd0, 0x06, 0x3b, 0x6c, 0xd6, 0x5b, 0x5a,
+  0x70, 0x80, 0xeb, 0xb0, 0xfa, 0x25, 0x60, 0x02, 0xfe, 0xa6, 0x82, 0x75,
+  0x11, 0x98, 0x9b, 0x66, 0x37, 0x8d, 0x53, 0x52, 0x19, 0xad, 0x73, 0x1d,
+  0x0d, 0xa8, 0xf0, 0x1e, 0x2d, 0xea, 0x07, 0xa2, 0xa3, 0x60, 0xf4, 0x0b,
+  0xa0, 0x39, 0x4d, 0x58, 0x40, 0x41, 0x59, 0x00, 0x6c, 0x0a, 0x24, 0x71,
+  0x26, 0x30, 0x28, 0xb7, 0x29, 0xcd, 0xf9, 0x4d, 0xab, 0xaa, 0xbc, 0xd7,
+  0x9b, 0x0b, 0x48, 0x72, 0xb3, 0x90, 0xb6, 0x08, 0xdd, 0xd2, 0x7c, 0x31,
+  0xc9, 0x84, 0x56, 0x5e, 0xf5, 0x95, 0x0a, 0xe0, 0x8b, 0x76, 0x0e, 0x8f,
+  0x42, 0x95, 0xfa, 0x4d, 0x65, 0xec, 0xa5, 0x6c, 0xb2, 0x84, 0x8a, 0xf5,
+  0x04, 0xe8, 0xa7, 0x0e, 0xbc, 0x49, 0xeb, 0x08, 0x52, 0x4a, 0x1f, 0x4a,
+  0x21, 0xa8, 0xff, 0xc8, 0x32, 0xaf, 0xfd, 0x31, 0x38, 0xc3, 0x42, 0xe2,
+  0x44, 0x6a, 0xfd, 0x74, 0xea, 0x00, 0x4e, 0x12, 0xdb, 0xa7, 0xda, 0x2d,
+  0xb4, 0xb7, 0x15, 0x82, 0x84, 0x14, 0x6d, 0xc8, 0x03, 0xfa, 0x69, 0xa0,
+  0x4d, 0x6a, 0xde, 0x65, 0x4e, 0x19, 0x2f, 0x93, 0xc5, 0x18, 0xab, 0x44,
+  0x51, 0x08, 0x62, 0x3f, 0x1d, 0x31, 0x23, 0x8c, 0xa6, 0x8d, 0x50, 0xd3,
+  0x0e, 0xdd, 0xc5, 0x76, 0x76, 0x57, 0xcf, 0xe2, 0xa7, 0x2c, 0x47, 0x22,
+  0x29, 0x93, 0x44, 0xd6, 0x97, 0xb1, 0x62, 0x59, 0x05, 0x4c, 0xc8, 0xc5,
+  0x55, 0x69, 0xe9, 0xa4, 0x23, 0x02, 0x6b, 0x9a, 0x92, 0x03, 0xfe, 0x53,
+  0xa3, 0xf1, 0x41, 0xa2, 0xcc, 0xa0, 0xed, 0x8b, 0x18, 0xf8, 0x97, 0x5c,
+  0x70, 0xb6, 0xd5, 0xe2, 0xd6, 0x0a, 0x2f, 0xa2, 0xad, 0xd2, 0xeb, 0xad,
+  0xde, 0x49, 0xcf, 0x5b, 0x8d, 0x25, 0x2b, 0xa7, 0xc5, 0x40, 0x6d, 0x05,
+  0x18, 0x86, 0x4d, 0xd8, 0x39, 0x97, 0x93, 0x0d, 0x42, 0x87, 0x6b, 0x2e,
+  0xcf, 0x40, 0x50, 0xad, 0x88, 0x78, 0x4a, 0x2d, 0x41, 0x67, 0x93, 0xe8,
+  0x47, 0x93, 0x4d, 0xf2, 0x02, 0x8e, 0x7d, 0x38, 0xe9, 0x89, 0xfc, 0x6a,
+  0x5f, 0x71, 0x6e, 0x24, 0xc5, 0xba, 0x8a, 0xfb, 0xb3, 0xef, 0xbf, 0x4f,
+  0xda, 0xe4, 0xd4, 0x5b, 0x91, 0x42, 0x8d, 0x90, 0x46, 0x30, 0x29, 0xcc,
+  0xca, 0x95, 0x7e, 0x77, 0x03, 0x6c, 0x34, 0xef, 0x39, 0xa3, 0x12, 0x00,
+  0x6f, 0x36, 0xb0, 0x89, 0x27, 0x4d, 0x69, 0xec, 0xbf, 0x1b, 0x05, 0xcb,
+  0x22, 0xba, 0xeb, 0xc2, 0xbb, 0x09, 0x88, 0x1b, 0xfb, 0xc7, 0x11, 0x0c,
+  0x04, 0xe7, 0xa4, 0x58, 0x54, 0x9d, 0xa4, 0x1c, 0x93, 0x3d, 0xd9, 0x9e,
+  0x30, 0xaf, 0xaa, 0xfa, 0x0d, 0xb9, 0x81, 0x71, 0x21, 0x3c, 0x4a, 0xa0,
+  0xcd, 0xc9, 0x44, 0x18, 0x19, 0x2e, 0x7d, 0xae, 0x57, 0x44, 0x20, 0x1b,
+  0xaf, 0xbc, 0x37, 0x4b, 0xe4, 0x18, 0xdb, 0x08, 0x25, 0x01, 0x4e, 0x19,
+  0xf9, 0x35, 0xc0, 0x0a, 0xa7, 0xde, 0x89, 0x71, 0x64, 0x0e, 0x9d, 0x35,
+  0x63, 0xd4, 0x60, 0x58, 0xb1, 0x03, 0xd5, 0xc2, 0x29, 0xa3, 0x06, 0xc9,
+  0xe8, 0x25, 0x47, 0xce, 0x84, 0x61, 0x99, 0xef, 0x9b, 0x3f, 0xda, 0xe2,
+  0xcf, 0xed, 0xb0, 0x05, 0xed, 0x82, 0x58, 0x95, 0x18, 0x15, 0x26, 0x58,
+  0x18, 0x22, 0x0e, 0xa2, 0xdc, 0x58, 0x25, 0x65, 0x24, 0x8f, 0x9e, 0x46,
+  0xee, 0x58, 0xa3, 0x46, 0x62, 0x0b, 0x57, 0x4d, 0x08, 0x18, 0xac, 0xdc,
+  0x91, 0xe5, 0xe4, 0x3b, 0x12, 0x33, 0x36, 0xeb, 0x1d, 0x36, 0x43, 0xdf,
+  0x18, 0xa5, 0x7d, 0x3c, 0x56, 0x2f, 0xa3, 0x45, 0x71, 0xc1, 0x0d, 0x6e,
+  0xa1, 0xf6, 0x27, 0x4c, 0x7d, 0xdb, 0x36, 0x87, 0x4a, 0xb0, 0xc2, 0x7c,
+  0x7e, 0x91, 0x60, 0xd5, 0x3d, 0x5a, 0x7e, 0x80, 0x07, 0x19, 0x4b, 0xe6,
+  0xdf, 0xe7, 0x1f, 0x2e, 0xb7, 0x5c, 0x05, 0x0e, 0xd9, 0xad, 0x3e, 0xa8,
+  0x52, 0x92, 0x10, 0x42, 0xb6, 0x7c, 0x4e, 0x12, 0x12, 0x39, 0x05, 0xd9,
+  0x60, 0x0f, 0x06, 0x39, 0x59, 0x9e, 0xed, 0xec, 0x1a, 0x4b, 0x6a, 0x67,
+  0x0f, 0x54, 0xdc, 0xcf, 0x76, 0x9e, 0x0d, 0xb4, 0xde, 0xa9, 0x3e, 0x15,
+  0x5c, 0x0b, 0xb4, 0xb1, 0x51, 0xef, 0x8d, 0x3c, 0x27, 0x02, 0x25, 0x4d,
+  0x9e, 0x7d, 0xfa, 0x84, 0x5f, 0xb5, 0xf1, 0x80, 0x7d, 0x0b, 0x2d, 0xb7,
+  0x5d, 0x8d, 0xdf, 0xfc, 0xde, 0x8c, 0x23, 0x00, 0xb3, 0x28, 0x38, 0x81,
+  0x03, 0x64, 0xe7, 0x94, 0x87, 0x34, 0x58, 0xc6, 0xce, 0xd9, 0x74, 0xd3,
+  0xad, 0x7d, 0x7a, 0x4e, 0xb3, 0x57, 0x5a, 0x09, 0x6c, 0x9a, 0xd4, 0x14,
+  0x0a, 0x67, 0x3c, 0xc6, 0x20, 0x5d, 0x52, 0x18, 0x9e, 0xed, 0x7c, 0xf2,
+  0x15, 0xe3, 0xd6, 0x96, 0x30, 0x97, 0x9d, 0x88, 0x24, 0x85, 0x7f, 0xc6,
+  0xa9, 0x79, 0xf7, 0x29, 0x78, 0x6d, 0x0e, 0x05, 0x66, 0x58, 0xff, 0xba,
+  0x27, 0x01, 0x6c, 0xfe, 0xd7, 0xb3, 0xf6, 0x5d, 0x79, 0x9d, 0x17, 0x7d,
+  0x6d, 0xf3, 0xb5, 0xfc, 0x25, 0xf0, 0x57, 0x1e, 0xbf, 0x3f, 0x38, 0x87,
+  0x72, 0x9c, 0x0c, 0xdf, 0x23, 0x07, 0xd9, 0xe3, 0xbe, 0x40, 0x13, 0xb6,
+  0x5b, 0xa2, 0xa6, 0x08, 0xb9, 0xbd, 0x88, 0xe8, 0x95, 0xc2, 0x63, 0x05,
+  0x33, 0xac, 0xcb, 0x0e, 0xe7, 0x8f, 0x38, 0xec, 0xab, 0xc7, 0xbf, 0x61,
+  0x0b, 0xb8, 0xa9, 0x6a, 0x1c, 0x0d, 0xdf, 0xc9, 0xf5, 0xc0, 0x75, 0x96,
+  0x58, 0x8e, 0x4a, 0x1f, 0x3b, 0xbd, 0x49, 0x0e, 0x50, 0xca, 0x5e, 0x4a,
+  0xd5, 0x87, 0x66, 0x2a, 0x4d, 0x45, 0x8f, 0xed, 0x54, 0x26, 0xa1, 0x7f,
+  0x4f, 0x36, 0x8f, 0xe0, 0xb0, 0x5a, 0x73, 0xc1, 0x2e, 0x6b, 0x10, 0x47,
+  0xd1, 0xb5, 0x4a, 0x76, 0x5b, 0x78, 0xa7, 0xa5, 0x23, 0xa5, 0x85, 0x6a,
+  0xcf, 0xa3, 0x39, 0x87, 0x74, 0xb5, 0x92, 0xde, 0x4f, 0x14, 0x65, 0x7b,
+  0xcf, 0x3e, 0x7f, 0xde, 0xc3, 0xdf, 0x5e, 0xec, 0xbc, 0xda, 0x13, 0xf7,
+  0xe0, 0xf1, 0xd1, 0xe5, 0xbb, 0xae, 0x43, 0xaf, 0x32, 0xfb, 0x89, 0xff,
+  0x4b, 0x85, 0x83, 0x6e, 0x8c, 0x81, 0x41, 0xd9, 0x97, 0xfd, 0x7a, 0xd6,
+  0xcc, 0xfb, 0x3b, 0x3b, 0x83, 0xe6, 0x53, 0xf3, 0x2f, 0x64, 0x87, 0x7c,
+  0xf6, 0xbc, 0x1d, 0x7b, 0x21, 0xb5, 0xbe, 0x4f, 0xf3, 0xbd, 0x9c, 0x24,
+  0x88, 0xf7, 0x97, 0xf3, 0xd1, 0xa5, 0xca, 0x29, 0x66, 0x4b, 0x10, 0xba,
+  0xc0, 0xaa, 0x5f, 0x98, 0x59, 0x76, 0x43, 0xc4, 0xcc, 0xee, 0xba, 0xd5,
+  0x05, 0x2f, 0xb1, 0xc9, 0x76, 0x44, 0xf3, 0xb0, 0xc5, 0xbe, 0xeb, 0x54,
+  0x09, 0xd4, 0x21, 0xe4, 0xc5, 0x8a, 0x88, 0xa6, 0x3f, 0xd5, 0x02, 0x73,
+  0xaf, 0x32, 0x4a, 0xe2, 0x66, 0xc5, 0xaf, 0x60, 0x91, 0xf4, 0x78, 0x22,
+  0x3a, 0xa6, 0xa0, 0x1a, 0xcf, 0x25, 0xed, 0x81, 0xff, 0x4d, 0x57, 0x71,
+  0x0b, 0x5f, 0xb7, 0xf7, 0x22, 0x32, 0x71, 0xb8, 0xb0, 0x7f, 0xc6, 0xc4,
+  0xb5, 0xe7, 0xcd, 0xa9, 0x47, 0xec, 0xc6, 0x83, 0xd1, 0x2b, 0xd1, 0x82,
+  0x30, 0x41, 0xb8, 0x56, 0x12, 0xeb, 0x9f, 0x3d, 0x16, 0x9a, 0xee, 0xc1,
+  0x2a, 0x42, 0x0b, 0xf7, 0xd6, 0x23, 0x63, 0xd1, 0xa1, 0x74, 0x47, 0xd2,
+  0x73, 0xa4, 0xaa, 0x74, 0x7f, 0x50, 0x7b, 0xec, 0xc5, 0x57, 0xf4, 0x4b,
+  0xa7, 0xb9, 0x8b, 0x6c, 0x9e, 0x61, 0xe8, 0x7e, 0x80, 0xd9, 0xdb, 0xdc,
+  0xd6, 0x4e, 0x6d, 0xbc, 0xea, 0x57, 0xe6, 0x1e, 0xcd, 0xe7, 0x44, 0xf2,
+  0x54, 0x47, 0x7d, 0x2d, 0xed, 0xca, 0x16, 0x98, 0x4b, 0xf5, 0xcb, 0xf6,
+  0xb4, 0xbe, 0x24, 0xbf, 0xaf, 0x73, 0x6c, 0x53, 0xee, 0xc2, 0xd4, 0x26,
+  0x32, 0xd9, 0xd1, 0x84, 0x5d, 0xaa, 0xd2, 0xe5, 0x47, 0x71, 0xdb, 0x65,
+  0x5c, 0x01, 0xf0, 0x7b, 0x51, 0x78, 0xcc, 0x19, 0x0c, 0xc3, 0x52, 0x42,
+  0x80, 0xcd, 0x6f, 0x2f, 0xde, 0xfd, 0xc5, 0xe6, 0x53, 0x6e, 0xf5, 0xe2,
+  0xd6, 0xb0, 0xf6, 0xd7, 0x2f, 0x3a, 0x6a, 0x21, 0x4a, 0x92, 0xcb, 0xd7,
+  0x9a, 0x78, 0xf7, 0x8f, 0x10, 0xb8, 0xc7, 0x3c, 0x49, 0xc9, 0xa6, 0x79,
+  0x8f, 0xb2, 0x99, 0x86, 0x62, 0xd4, 0x3d, 0x1b, 0xbc, 0x80, 0x57, 0xe4,
+  0xdd, 0xe1, 0x8b, 0x67, 0x7b, 0xbb, 0xc6, 0x6e, 0xdd, 0xec, 0x48, 0x8b,
+  0xad, 0x47, 0x87, 0xd9, 0x5e, 0xef, 0xec, 0xd3, 0x9c, 0xf6, 0xde, 0xe6,
+  0xd1, 0xf7, 0xe7, 0xa7, 0xde, 0x00, 0xed, 0x0a, 0x04, 0x69, 0x6e, 0xfe,
+  0x08, 0x19, 0xbb, 0x67, 0xc7, 0xe8, 0x6e, 0xdb, 0x60, 0x4b, 0xf5, 0x90,
+  0x45, 0x16, 0x26, 0x30, 0xae, 0xbf, 0xab, 0x72, 0xd2, 0x73, 0xd7, 0x69,
+  0x3e, 0xd6, 0x4f, 0xca, 0x62, 0x62, 0x6e, 0xff, 0x33, 0xca, 0xfa, 0xcf,
+  0xd6, 0x8d, 0x1a, 0xfb, 0xe8, 0xe8, 0x96, 0x1f, 0x93, 0xf7, 0x3d, 0x1c,
+  0x95, 0x22, 0x84, 0x22, 0xbc, 0xc7, 0x0f, 0xc1, 0xb5, 0x44, 0xb9, 0xa9,
+  0x9c, 0xe6, 0xb0, 0x90, 0x14, 0x12, 0x50, 0xf3, 0xb7, 0x4f, 0xdb, 0x27,
+  0x14, 0x58, 0x84, 0xd7, 0xe7, 0x35, 0x9c, 0xda, 0xcb, 0xe2, 0x21, 0x3c,
+  0x72, 0x8e, 0x86, 0xe0, 0xf1, 0x4d, 0x75, 0xec, 0x6f, 0x39, 0xf2, 0x7a,
+  0xd6, 0xe0, 0x35, 0xdc, 0x01, 0x55, 0x3d, 0x56, 0x6b, 0x0d, 0x8f, 0x3a,
+  0xb3, 0x22, 0xb7, 0xb0, 0x59, 0xc9, 0xfc, 0x21, 0x2c, 0x22, 0xe5, 0xf4,
+  0xf5, 0xda, 0x84, 0x08, 0x11, 0x3f, 0x38, 0x42, 0xbd, 0x28, 0x68, 0x93,
+  0x16, 0x6d, 0xf2, 0x18, 0x14, 0x20, 0x82, 0x0d, 0x84, 0x2a, 0x78, 0x50,
+  0x12, 0x5f, 0x3e, 0x0b, 0x9d, 0x5a, 0x67, 0x97, 0x47, 0xfb, 0x88, 0x5f,
+  0xb8, 0x94, 0x5d, 0x55, 0x88, 0x19, 0x28, 0x43, 0x18, 0xe7, 0x42, 0xc0,
+  0xfa, 0xfe, 0xe8, 0x7a, 0xb1, 0x52, 0x72, 0x00, 0x68, 0xd2, 0x66, 0x60,
+  0xa7, 0x66, 0xd3, 0x41, 0x53, 0x38, 0x66, 0x19, 0xa4, 0x60, 0x89, 0x0a,
+  0xcc, 0xf1, 0xb7, 0x58, 0x99, 0x9a, 0x2b, 0xce, 0xf5, 0x43, 0xfa, 0x1c,
+  0x5f, 0x2b, 0xc1, 0x44, 0x49, 0xa0, 0x0c, 0x86, 0x85, 0xf5, 0x25, 0x8e,
+  0xcb, 0x62, 0x9c, 0x55, 0x01, 0x12, 0x04, 0xc1, 0x28, 0xf2, 0xc2, 0x22,
+  0x71, 0xfa, 0x52, 0xe9, 0x3b, 0xa2, 0x45, 0xe5, 0x3c, 0x49, 0xee, 0x62,
+  0x66, 0xdd, 0xbd, 0x23, 0x56, 0x08, 0xb9, 0xbb, 0x96, 0xd6, 0xb4, 0x21,
+  0x87, 0x97, 0x0d, 0xa3, 0x89, 0x97, 0x8b, 0x76, 0x8c, 0xda, 0x23, 0x64,
+  0x3e, 0x59, 0x5d, 0x5c, 0x12, 0x6e, 0xc3, 0x48, 0x2d, 0x4e, 0x7a, 0xdb,
+  0xfe, 0x77, 0x76, 0xa5, 0x57, 0xa3, 0x90, 0xf8, 0x23, 0x6d, 0x7d, 0x2a,
+  0xb1, 0x62, 0xe3, 0x14, 0x26, 0xd0, 0x40, 0xbd, 0x4e, 0xd4, 0xc9, 0x3a,
+  0xe5, 0xcd, 0x8d, 0xea, 0x45, 0x35, 0x59, 0xcc, 0xd6, 0x07, 0x2d, 0x10,
+  0x30, 0x14, 0x1c, 0xd8, 0x6e, 0x80, 0x1e, 0x44, 0x5c, 0xe2, 0x2f, 0x76,
+  0x5a, 0x8d, 0x0d, 0x30, 0xf0, 0x4e, 0x60, 0xb7, 0xbf, 0x8b, 0x5b, 0x44,
+  0xc2, 0x6c, 0x8b, 0x42, 0xa2, 0x79, 0xbf, 0x61, 0x4c, 0x65, 0xd6, 0x93,
+  0x95, 0x62, 0x74, 0x15, 0xfd, 0xf7, 0x8b, 0x40, 0x62, 0x3c, 0xa9, 0xea,
+  0x27, 0x0e, 0xee, 0xfd, 0x4d, 0x39, 0xcd, 0x12, 0x2f, 0xd4, 0x1b, 0x9a,
+  0x2d, 0x64, 0x8e, 0x0f, 0x3c, 0x06, 0x5c, 0xf1, 0x5b, 0xd3, 0xc1, 0x90,
+  0xb5, 0xa1, 0x89, 0x87, 0x77, 0x69, 0x44, 0x89, 0x55, 0xc9, 0x5f, 0xcb,
+  0x91, 0x60, 0xed, 0xc8, 0x4c, 0x8a, 0x65, 0x1e, 0x5f, 0x01, 0xbd, 0xba,
+  0x30, 0x1b, 0x4d, 0xaa, 0xdf, 0x51, 0x80, 0x32, 0x29, 0xb2, 0x86, 0xe9,
+  0xcd, 0xa8, 0x46, 0x13, 0xb9, 0xf7, 0x93, 0x6b, 0x26, 0xed, 0x04, 0x3a,
+  0x4d, 0x99, 0xde, 0xc2, 0x4c, 0xa1, 0x3d, 0xca, 0x0b, 0xf5, 0xa7, 0x37,
+  0x5e, 0x03, 0xb4, 0x67, 0x59, 0x03, 0xd2, 0x71, 0xb3, 0x90, 0x59, 0xef,
+  0xf6, 0xae, 0x54, 0x77, 0xa0, 0x79, 0x17, 0x2c, 0x6a, 0x48, 0xbd, 0x1c,
+  0x9b, 0xcd, 0x97, 0x8e, 0x1f, 0xf4, 0x5a, 0x74, 0x77, 0x88, 0xd6, 0x61,
+  0xb5, 0x9c, 0x6b, 0xc1, 0x60, 0x6d, 0x27, 0x28, 0xb6, 0x97, 0xd7, 0xbf,
+  0x9c, 0xf2, 0xf4, 0x17, 0x41, 0x68, 0xbb, 0xd5, 0x47, 0xfd, 0xd3, 0x9e,
+  0x35, 0x29, 0xcd, 0xf2, 0xe3, 0x09, 0x92, 0x2d, 0xf3, 0x97, 0xa3, 0x60,
+  0xe0, 0xb9, 0x24, 0x84, 0x3b, 0xc2, 0xbe, 0x4a, 0xda, 0x7c, 0x1c, 0xde,
+  0x98, 0xef, 0xe5, 0x2b, 0x2c, 0x12, 0x37, 0x21, 0xaf, 0x14, 0xff, 0xcf,
+  0x06, 0xd5, 0xf3, 0x64, 0x93, 0xec, 0x9c, 0xe4, 0xc5, 0xe7, 0x2f, 0x9e,
+  0x6f, 0x49, 0x3d, 0x67, 0x0b, 0x8c, 0xda, 0x8a, 0xe0, 0x53, 0xf9, 0xb8,
+  0x49, 0xb1, 0x46, 0x5c, 0x62, 0x39, 0x57, 0x09, 0x05, 0x93, 0xe8, 0x44,
+  0xeb, 0x1c, 0x00, 0x38, 0x6e, 0x2e, 0x76, 0x30, 0xb8, 0x6b, 0x01, 0xd1,
+  0xb0, 0x50, 0xbc, 0x96, 0x18, 0xdd, 0x94, 0x1b, 0xdf, 0xc9, 0x6f, 0x87,
+  0xcc, 0x67, 0x62, 0x3c, 0xa8, 0x23, 0xca, 0x8d, 0xb7, 0x85, 0xd4, 0xaf,
+  0x28, 0x5a, 0x83, 0x5d, 0x4b, 0x5c, 0x5f, 0x8d, 0xaf, 0xc7, 0x1b, 0x2a,
+  0xbf, 0x50, 0x7a, 0x57, 0x03, 0x3b, 0x01, 0x38, 0x35, 0x82, 0xef, 0x9e,
+  0x18, 0xc9, 0x93, 0xd1, 0x4b, 0x11, 0x93, 0xa6, 0xbb, 0xac, 0x3d, 0x8f,
+  0xcc, 0x19, 0x42, 0x3b, 0x45, 0xdf, 0x17, 0x38, 0x90, 0xac, 0x09, 0x99,
+  0x34, 0x41, 0x4e, 0xdd, 0x2c, 0x9b, 0x29, 0xc5, 0x32, 0x5f, 0xb2, 0x65,
+  0xe5, 0x6a, 0x0b, 0x71, 0x3c, 0x82, 0x6f, 0x4c, 0x40, 0x18, 0x97, 0x25,
+  0x45, 0xab, 0xc5, 0x9f, 0x6a, 0xf6, 0x66, 0xab, 0x67, 0x4b, 0xf1, 0xe5,
+  0xba, 0xdb, 0x34, 0x4d, 0xba, 0x0b, 0x2b, 0xd7, 0xbf, 0xdb, 0x5d, 0x19,
+  0x16, 0xdc, 0xe1, 0xaf, 0x76, 0x26, 0x62, 0x49, 0xef, 0xb9, 0xe6, 0x0e,
+  0xe8, 0x3d, 0xe0, 0x2f, 0xe8, 0x87, 0x7c, 0x05, 0xc9, 0x26, 0x3a, 0xbc,
+  0xbd, 0xbd, 0xf5, 0x78, 0xa7, 0xe5, 0xc9, 0xc7, 0x3a, 0x79, 0xce, 0x46,
+  0xbc, 0xc7, 0xc6, 0x78, 0xe5, 0xf5, 0x81, 0xbe, 0x49, 0x2b, 0xc6, 0x8c,
+  0x89, 0x8c, 0x73, 0x64, 0x98, 0x08, 0xc8, 0xc0, 0x8d, 0x6a, 0x12, 0x21,
+  0xa4, 0x80, 0x4b, 0x24, 0x95, 0x01, 0xb6, 0xc7, 0x2e, 0xe6, 0x1d, 0x13,
+  0x8f, 0x88, 0x08, 0x21, 0x1c, 0x10, 0xf8, 0x20, 0x0e, 0xa6, 0x41, 0xd1,
+  0xc8, 0x56, 0xb7, 0xbc, 0xc1, 0xc1, 0x98, 0xeb, 0x38, 0x95, 0x71, 0x0a,
+  0x99, 0x30, 0x45, 0xdd, 0xcf, 0x11, 0xb8, 0xb6, 0x3e, 0xad, 0xd2, 0x88,
+  0xd3, 0xc2, 0x22, 0x64, 0x42, 0xfc, 0x24, 0x1d, 0x20, 0x75, 0x47, 0xe7,
+  0x45, 0x44, 0x8d, 0x74, 0x4e, 0x43, 0x34, 0x68, 0x24, 0xea, 0xad, 0x1b,
+  0x33, 0x33, 0xf9, 0x70, 0xc5, 0x52, 0xc9, 0x1f, 0xb6, 0xbe, 0xed, 0xb4,
+  0x0a, 0x3d, 0xcc, 0xe8, 0x9b, 0xdd, 0xdf, 0x98, 0x31, 0x2d, 0x92, 0x89,
+  0x9f, 0xb6, 0x26, 0xb3, 0xc7, 0x67, 0x14, 0x19, 0xca, 0x31, 0xad, 0x14,
+  0xa5, 0x07, 0xc2, 0x2c, 0x48, 0x3b, 0x87, 0x2b, 0xf1, 0x66, 0x16, 0x70,
+  0xc6, 0x2e, 0x4d, 0x86, 0x9c, 0x85, 0xf7, 0xac, 0x3a, 0x95, 0xb4, 0xd1,
+  0xb6, 0x55, 0xdd, 0x29, 0x15, 0x6d, 0x13, 0x3a, 0x97, 0xf0, 0xc9, 0x48,
+  0x0d, 0xb6, 0x53, 0x7d, 0xcc, 0x18, 0xd9, 0xe7, 0xa7, 0x47, 0x5f, 0x9d,
+  0x6d, 0x3d, 0xe6, 0x8d, 0x6b, 0xcb, 0x7f, 0x3b, 0x2e, 0xc0, 0xcf, 0x2a,
+  0x82, 0xaf, 0x71, 0xf7, 0xa1, 0x87, 0x7f, 0x35, 0x1c, 0xf6, 0x0f, 0xce,
+  0x8f, 0x51, 0x27, 0x62, 0x68, 0xfe, 0x5c, 0xc2, 0x63, 0x26, 0x05, 0xd7,
+  0xbf, 0x95, 0xdc, 0xad, 0x5a, 0xd4, 0x8c, 0x04, 0xde, 0x2e, 0xa0, 0x30,
+  0xa0, 0x3c, 0x88, 0x86, 0x67, 0xd3, 0x62, 0xd1, 0x7c, 0xd7, 0x80, 0x3a,
+  0x3f, 0xde, 0xc6, 0xa7, 0xe8, 0x93, 0x18, 0x50, 0xdc, 0x50, 0x0e, 0xf9,
+  0xca, 0x99, 0x39, 0x02, 0x88, 0x4a, 0x08, 0x68, 0xc5, 0xa7, 0x1a, 0x33,
+  0x87, 0xae, 0x13, 0x17, 0x9c, 0x8a, 0x67, 0x03, 0x90, 0xd3, 0x87, 0xe0,
+  0xde, 0x69, 0x93, 0xc5, 0xbc, 0x4c, 0x30, 0x46, 0x98, 0xca, 0x83, 0x0a,
+  0x31, 0x9a, 0x2b, 0x58, 0x10, 0x4e, 0x5d, 0xf3, 0x7f, 0xa3, 0xbf, 0x48,
+  0x92, 0xfd, 0x0d, 0x46, 0x53, 0x66, 0x05, 0x95, 0x2f, 0x05, 0x7b, 0x47,
+  0xc7, 0xdc, 0x6e, 0x95, 0x8b, 0xb1, 0xbc, 0x87, 0xa6, 0x93, 0xc1, 0x16,
+  0xc4, 0x3b, 0xaa, 0xf7, 0x54, 0x19, 0x05, 0x42, 0x58, 0xbd, 0x61, 0x9c,
+  0xcb, 0xe4, 0x5f, 0x42, 0xb0, 0xbe, 0x42, 0x03, 0x19, 0x71, 0x90, 0x10,
+  0x0e, 0xa3, 0xa2, 0x99, 0xce, 0xe4, 0xaf, 0x69, 0xf1, 0x00, 0xc7, 0xa0,
+  0x78, 0xaa, 0x91, 0x7f, 0x65, 0xf7, 0x74, 0x7b, 0xa3, 0x37, 0xd5, 0x18,
+  0x26, 0x2d, 0x03, 0x2e, 0x39, 0xf1, 0x6a, 0xd5, 0x9e, 0x25, 0x7d, 0xde,
+  0x16, 0x02, 0x4b, 0xfa, 0x45, 0x4f, 0x5b, 0xe9, 0xb5, 0xca, 0x6e, 0x32,
+  0xe9, 0x18, 0x36, 0x41, 0x44, 0x14, 0xa1, 0x8e, 0xc2, 0xa6, 0xb1, 0x1d,
+  0xca, 0xe9, 0x82, 0x0b, 0x29, 0x91, 0xfb, 0x8f, 0xf0, 0xfe, 0x5b, 0x1a,
+  0xd3, 0xa2, 0xd4, 0x04, 0xd3, 0xaa, 0x42, 0x1a, 0x19, 0x24, 0x7b, 0x18,
+  0x42, 0x93, 0x5d, 0x91, 0x8f, 0x81, 0x0b, 0x29, 0x70, 0xcc, 0x4c, 0x2c,
+  0x71, 0x9a, 0x59, 0x6e, 0x0b, 0x4d, 0xcd, 0x01, 0xc2, 0xb9, 0x53, 0x06,
+  0x8e, 0x70, 0xfd, 0x74, 0xad, 0x5a, 0xb3, 0xa3, 0x9e, 0x64, 0x12, 0xdd,
+  0x7e, 0x5d, 0x21, 0x4f, 0x6b, 0x8c, 0xa6, 0xa7, 0x2c, 0xc3, 0xe5, 0x6a,
+  0x58, 0x7c, 0x44, 0xa7, 0x84, 0x8a, 0x3f, 0xcb, 0xc7, 0xf8, 0x3b, 0x29,
+  0x80, 0x2b, 0x56, 0x11, 0x7e, 0x2a, 0x2d, 0x81, 0x5b, 0x8c, 0xc1, 0x2a,
+  0xe0, 0x45, 0xfb, 0x4b, 0x9d, 0xa6, 0xbf, 0xa5, 0xec, 0x4d, 0xbb, 0xc4,
+  0x5c, 0x59, 0xd5, 0x5f, 0x64, 0xd6, 0xf2, 0xbb, 0xdc, 0xf0, 0x34, 0x11,
+  0x03, 0x3c, 0x11, 0x6c, 0x60, 0x0a, 0x1a, 0xdb, 0x51, 0xa9, 0x7a, 0x44,
+  0x9e, 0xa5, 0x94, 0x6b, 0x52, 0xf0, 0xcb, 0xde, 0x37, 0xfc, 0x12, 0xe0,
+  0x2b, 0xf3, 0xbf, 0xed, 0xea, 0x0c, 0x9e, 0x30, 0x21, 0x6e, 0xfc, 0xee,
+  0x87, 0x81, 0x65, 0x67, 0x23, 0xa3, 0xf5, 0x58, 0x28, 0x55, 0x06, 0xb2,
+  0x0b, 0x37, 0x3f, 0xca, 0x5f, 0xe8, 0x0c, 0x7c, 0x97, 0x17, 0x46, 0x33,
+  0xac, 0xb7, 0x74, 0x73, 0x0a, 0x14, 0x2b, 0x3c, 0xbb, 0x54, 0xf3, 0xf7,
+  0x86, 0xa0, 0x5c, 0x0e, 0x96, 0x46, 0x8a, 0x33, 0x07, 0x27, 0x02, 0x51,
+  0xe4, 0x55, 0x07, 0x79, 0x98, 0x07, 0x90, 0xfe, 0xb1, 0x15, 0x3a, 0x68,
+  0x03, 0x1c, 0x6b, 0xc6, 0x2c, 0x28, 0xf2, 0x4f, 0x2e, 0x98, 0x8d, 0x7b,
+  0x83, 0x73, 0xc1, 0x9d, 0x6f, 0x47, 0x4a, 0x86, 0x46, 0x7a, 0x17, 0x44,
+  0x6b, 0x68, 0x76, 0x31, 0xce, 0xcd, 0x17, 0x5b, 0xc9, 0x55, 0x33, 0xdf,
+  0xdc, 0xdd, 0xc2, 0xc7, 0xb4, 0xe8, 0x98, 0x57, 0x19, 0x24, 0x74, 0xe4,
+  0x10, 0x92, 0x0e, 0x27, 0xd4, 0x11, 0xe6, 0xa2, 0xb0, 0x07, 0xb9, 0x2e,
+  0xa1, 0x53, 0xd0, 0x09, 0xe6, 0x09, 0xb3, 0xdc, 0x9c, 0x00, 0xed, 0xc6,
+  0x1c, 0xa8, 0x40, 0xb8, 0xcc, 0x89, 0x8a, 0xaa, 0xe6, 0x62, 0xd6, 0x9b,
+  0x79, 0xe3, 0x93, 0x7e, 0x11, 0xd1, 0x5e, 0xce, 0x71, 0xfb, 0xb2, 0x9a,
+  0x4e, 0xfa, 0x24, 0x43, 0xae, 0xab, 0xd2, 0x5c, 0x91, 0x55, 0x84, 0x9b,
+  0x48, 0x6c, 0x0a, 0x52, 0xf5, 0xb3, 0xe2, 0x2e, 0xaf, 0xca, 0x02, 0xa4,
+  0x5c, 0x77, 0x69, 0x95, 0x23, 0xa8, 0xbd, 0xfe, 0xf5, 0xd9, 0xfb, 0xa3,
+  0x75, 0xdf, 0x2f, 0x72, 0x95, 0x8b, 0xc7, 0x18, 0xeb, 0xd7, 0xf5, 0xc7,
+  0xea, 0x6a, 0x86, 0xe1, 0x9a, 0x24, 0x31, 0x57, 0xba, 0xd1, 0x72, 0xd8,
+  0x96, 0xba, 0xd3, 0xc3, 0x44, 0xaa, 0xbd, 0x8d, 0x08, 0x1b, 0x75, 0x52,
+  0x62, 0xde, 0x52, 0xa0, 0x40, 0x77, 0x59, 0x08, 0x38, 0x81, 0x2b, 0x41,
+  0x8d, 0x43, 0xf0, 0xc7, 0x96, 0x3e, 0x45, 0x7e, 0xe2, 0xd1, 0xe8, 0x93,
+  0xa2, 0xcf, 0x1b, 0x00, 0x4b, 0x1b, 0x03, 0x81, 0x6f, 0xcc, 0x1e, 0xc8,
+  0xb2, 0xd9, 0x68, 0x5f, 0x80, 0x1b, 0x35, 0x19, 0xe3, 0xcd, 0x86, 0x4e,
+  0x2f, 0xc0, 0x91, 0x2b, 0x8a, 0x3d, 0x2e, 0xfb, 0x36, 0xef, 0x6a, 0xfe,
+  0x84, 0x6b, 0x9d, 0x1b, 0x77, 0xa7, 0xcf, 0x16, 0xb9, 0xef, 0x8a, 0xb4,
+  0x80, 0x09, 0x22, 0x75, 0x39, 0x2b, 0xed, 0xa2, 0x47, 0xed, 0xc0, 0x39,
+  0xd1, 0x33, 0x86, 0x8e, 0x45, 0xf3, 0xf9, 0x72, 0xcc, 0x94, 0x1c, 0x2e,
+  0x82, 0x28, 0x57, 0x99, 0xe4, 0x92, 0x33, 0xbe, 0xd8, 0x15, 0x53, 0x55,
+  0xb9, 0x9f, 0x50, 0x93, 0x4b, 0xc8, 0xa0, 0xa8, 0x18, 0x3a, 0x4a, 0x2e,
+  0x29, 0xa9, 0x14, 0xf0, 0x97, 0xe4, 0xf0, 0xb4, 0x50, 0x42, 0xf9, 0x5a,
+  0xcf, 0xcf, 0xf2, 0xec, 0x85, 0x05, 0xd8, 0x61, 0x0d, 0x3b, 0xec, 0x85,
+  0x55, 0x4e, 0x98, 0x38, 0x8c, 0x69, 0xb6, 0x2c, 0x81, 0x8a, 0x96, 0x7a,
+  0x0a, 0x95, 0x64, 0x3b, 0x9d, 0xea, 0xc7, 0x25, 0x3e, 0x2b, 0x82, 0xa1,
+  0xb0, 0x4d, 0x63, 0x43, 0xbc, 0xd8, 0x8e, 0xac, 0x75, 0x10, 0x7b, 0xa7,
+  0xf2, 0x02, 0x46, 0x4d, 0x6c, 0x7b, 0x28, 0xcd, 0xd8, 0xd8, 0xb9, 0x43,
+  0x69, 0xed, 0x77, 0xc8, 0xc6, 0x13, 0x02, 0x6b, 0x46, 0xc3, 0xba, 0x45,
+  0x89, 0x43, 0x03, 0x20, 0xd8, 0x5d, 0x0f, 0x73, 0x29, 0xb1, 0x0a, 0x51,
+  0xf3, 0x15, 0xf7, 0xc2, 0x76, 0xd0, 0x9a, 0x3b, 0xc4, 0x42, 0xc0, 0xaa,
+  0x6c, 0x80, 0x4b, 0x2f, 0x6b, 0x10, 0x9b, 0x35, 0x55, 0x3a, 0x76, 0x7f,
+  0xe9, 0xa7, 0xf5, 0x38, 0xcf, 0x95, 0x10, 0x99, 0xc2, 0x61, 0x19, 0x21,
+  0x40, 0xe3, 0x74, 0x11, 0xba, 0x1e, 0x89, 0x65, 0x22, 0x9d, 0x94, 0xec,
+  0xe6, 0x65, 0x90, 0x45, 0xca, 0x5c, 0xf9, 0x04, 0xd9, 0x40, 0xe9, 0x53,
+  0x89, 0x95, 0xc5, 0x38, 0xa2, 0x95, 0x42, 0x6a, 0x89, 0x7d, 0x6b, 0x4c,
+  0xf0, 0x5d, 0xdf, 0x06, 0xd7, 0x49, 0xe8, 0x4f, 0x50, 0x69, 0x98, 0xed,
+  0xc9, 0xfb, 0xfb, 0xbd, 0xc1, 0x8a, 0xe2, 0x95, 0x7e, 0xc0, 0xe3, 0x65,
+  0xc7, 0x42, 0x61, 0xf2, 0x93, 0x98, 0x7d, 0x32, 0xdc, 0x6a, 0x55, 0x8e,
+  0x38, 0x38, 0x39, 0x3f, 0x95, 0xc2, 0xf6, 0xc4, 0xf7, 0x58, 0xc0, 0x49,
+  0x96, 0xc8, 0x8f, 0x5d, 0x45, 0x69, 0x0a, 0xe0, 0x04, 0xd5, 0x2e, 0x85,
+  0x9b, 0x1a, 0x56, 0x44, 0x98, 0xd7, 0xc3, 0x78, 0xae, 0x02, 0x5c, 0x0f,
+  0x6a, 0xbf, 0x40, 0xca, 0xab, 0x91, 0xd1, 0x1d, 0x8e, 0xf9, 0xe4, 0x80,
+  0x3f, 0xac, 0x92, 0x76, 0xf4, 0xe0, 0x52, 0x6f, 0xda, 0xef, 0x5a, 0xc6,
+  0x9d, 0x32, 0x11, 0x7e, 0x9d, 0x40, 0xa8, 0x37, 0x99, 0x25, 0xf7, 0x11,
+  0xe3, 0xce, 0xd5, 0x8d, 0x66, 0xd7, 0x92, 0x80, 0x12, 0x90, 0x6d, 0xaf,
+  0x79, 0xbb, 0xf5, 0xea, 0x4c, 0x6b, 0x33, 0xb1, 0xc5, 0xbc, 0x08, 0x12,
+  0xad, 0xed, 0x8c, 0x47, 0xb2, 0x9f, 0x02, 0x64, 0xed, 0x93, 0x72, 0xa1,
+  0x68, 0x49, 0x06, 0x2b, 0x96, 0xf8, 0xb4, 0xc7, 0x1f, 0x1d, 0x2d, 0x48,
+  0x46, 0x74, 0xbe, 0x21, 0x0b, 0xcc, 0xba, 0x13, 0x3f, 0x21, 0xa5, 0xc0,
+  0x1d, 0xcf, 0x08, 0x51, 0x1e, 0x65, 0xe9, 0x8c, 0x6a, 0x05, 0x28, 0x3a,
+  0x9e, 0x1c, 0xc0, 0x84, 0x61, 0xec, 0x4e, 0xe5, 0x22, 0x15, 0x99, 0xd5,
+  0x22, 0x62, 0xec, 0x80, 0xe6, 0xf9, 0x33, 0x04, 0x9a, 0xf1, 0x9b, 0x8f,
+  0x25, 0x42, 0xe1, 0x75, 0x9b, 0x8f, 0x2d, 0x11, 0x1c, 0x2d, 0xa0, 0xc1,
+  0x7c, 0x87, 0xdc, 0x84, 0xad, 0xa5, 0x45, 0xf4, 0xcf, 0x37, 0x8b, 0xe2,
+  0xd6, 0x74, 0x21, 0x4c, 0xd4, 0x54, 0x7c, 0x6b, 0x4e, 0xd2, 0x0b, 0xf5,
+  0x67, 0xe8, 0x2f, 0xc2, 0xb4, 0xa7, 0x2d, 0x10, 0xd5, 0xe2, 0x1d, 0xf9,
+  0xf3, 0xc2, 0x12, 0x86, 0xb1, 0xde, 0x4d, 0xec, 0x09, 0x49, 0x1b, 0x37,
+  0x81, 0x51, 0x0c, 0xb7, 0xae, 0xb3, 0x2b, 0xdc, 0x66, 0xf6, 0xa3, 0x87,
+  0x1e, 0x92, 0x0a, 0xe9, 0x4a, 0xc3, 0x82, 0x34, 0x1c, 0x45, 0xdd, 0x04,
+  0x02, 0x71, 0x51, 0x73, 0xea, 0x93, 0x2c, 0x2b, 0xed, 0x07, 0x9f, 0xbe,
+  0x39, 0xd2, 0x93, 0x76, 0xd6, 0xf0, 0xb2, 0x7d, 0xd0, 0xae, 0x27, 0xe3,
+  0x92, 0x8c, 0x05, 0x7a, 0x61, 0x55, 0x37, 0x2a, 0xb2, 0xe2, 0xd7, 0x76,
+  0x88, 0x48, 0x2e, 0x97, 0xbf, 0xa4, 0xb5, 0xe6, 0x99, 0x63, 0xd9, 0x86,
+  0x77, 0xfe, 0x85, 0xb3, 0xe4, 0x06, 0xe2, 0x4d, 0x94, 0xfd, 0x61, 0x67,
+  0x92, 0x8a, 0x27, 0xc9, 0xc3, 0x53, 0x23, 0x7e, 0x48, 0x1a, 0x7a, 0xc2,
+  0xf0, 0x94, 0x25, 0x92, 0x0a, 0x42, 0x37, 0xd2, 0xae, 0xdb, 0xeb, 0xea,
+  0x97, 0x48, 0x41, 0x6a, 0x9e, 0x30, 0xe5, 0xe7, 0xa7, 0xdd, 0xe6, 0x2c,
+  0xaf, 0xf8, 0x08, 0x10, 0x93, 0xc7, 0xe4, 0xa0, 0xb5, 0xe0, 0xe5, 0x67,
+  0x4b, 0x3c, 0x5c, 0xbf, 0x5c, 0x08, 0xb6, 0x89, 0xb5, 0xe2, 0x32, 0xb0,
+  0x68, 0x89, 0x40, 0xd1, 0xea, 0x7f, 0x33, 0x21, 0x48, 0x5f, 0x94, 0x2e,
+  0xe7, 0x93, 0x68, 0x76, 0xb9, 0x5d, 0x5b, 0xa9, 0xad, 0x22, 0x91, 0x0b,
+  0x5a, 0x0d, 0xe5, 0xb5, 0x38, 0x7e, 0x6b, 0x36, 0x19, 0xe9, 0xac, 0xd7,
+  0x66, 0x10, 0x5f, 0x2e, 0x5b, 0x5c, 0x14, 0x71, 0xd4, 0xf0, 0x2e, 0xec,
+  0x7c, 0xaa, 0x57, 0xe9, 0xf3, 0xeb, 0x10, 0xf1, 0x95, 0xc7, 0x24, 0x2e,
+  0x29, 0x70, 0xca, 0x9a, 0x1d, 0xf7, 0x4b, 0x80, 0x0e, 0x89, 0x73, 0x4c,
+  0x93, 0x9b, 0x05, 0x15, 0x29, 0xa2, 0x2b, 0x8f, 0x8b, 0x39, 0x09, 0x37,
+  0x78, 0x95, 0x51, 0x9f, 0xdb, 0x1d, 0x0e, 0x6a, 0xf1, 0xb2, 0x37, 0xbb,
+  0xce, 0xcc, 0x41, 0xe4, 0x04, 0x99, 0x51, 0x55, 0xde, 0x66, 0xbc, 0xeb,
+  0x60, 0x5e, 0xd0, 0xa1, 0x62, 0x29, 0xae, 0x4e, 0x59, 0x23, 0xe7, 0x26,
+  0x16, 0xa7, 0x17, 0xd1, 0x67, 0xa9, 0xce, 0x83, 0xa4, 0x93, 0x3b, 0x69,
+  0x98, 0xbb, 0x6c, 0x6e, 0x25, 0xa0, 0xe5, 0xe5, 0x1a, 0x13, 0xdf, 0xd2,
+  0x60, 0x55, 0x79, 0xed, 0x46, 0x0b, 0x3d, 0x2e, 0x3b, 0xfc, 0xfe, 0xd9,
+  0x17, 0x4f, 0xcd, 0xf2, 0x93, 0x6f, 0x57, 0xdd, 0x3f, 0xf9, 0x91, 0x15,
+  0x7d, 0x7a, 0xf5, 0x06, 0xb3, 0x97, 0xe0, 0x09, 0x4b, 0x5e, 0x9b, 0x4d,
+  0xc5, 0x3e, 0x31, 0x8a, 0x69, 0x75, 0xdd, 0x5d, 0xa8, 0x40, 0xd2, 0x57,
+  0xd3, 0x63, 0x22, 0x99, 0x57, 0x57, 0x92, 0x8a, 0xc0, 0x58, 0xfe, 0x89,
+  0xab, 0x0b, 0x24, 0x2c, 0xb7, 0x3d, 0x56, 0x92, 0xcc, 0x8e, 0x89, 0x1c,
+  0x72, 0xe7, 0xc8, 0xe1, 0xd4, 0x4f, 0xe8, 0xe1, 0xb4, 0x3c, 0x20, 0x14,
+  0xc9, 0xbd, 0x0a, 0xaf, 0xff, 0x4e, 0xe0, 0x57, 0xa3, 0xd5, 0x36, 0x84,
+  0x7c, 0xc2, 0xb7, 0x02, 0xb5, 0x93, 0xf9, 0xf8, 0x6d, 0x72, 0x04, 0x73,
+  0x1e, 0x58, 0xbe, 0x0c, 0x22, 0xcc, 0xf6, 0x75, 0x03, 0xa6, 0xe0, 0x4d,
+  0x8e, 0xc8, 0x68, 0x89, 0x58, 0x84, 0xec, 0xb9, 0xc8, 0x6b, 0x4e, 0x0b,
+  0x44, 0x6f, 0xf9, 0x0b, 0x00, 0x29, 0x89, 0x85, 0x9d, 0x2a, 0x00, 0x89,
+  0x07, 0x6f, 0x39, 0xab, 0xc2, 0x53, 0x4f, 0x3d, 0x62, 0x84, 0x8f, 0x98,
+  0x69, 0xfa, 0x03, 0xcb, 0xc3, 0xff, 0xce, 0x33, 0x8a, 0x12, 0x36, 0x52,
+  0xa0, 0x1d, 0x73, 0xae, 0x6c, 0x6c, 0xb0, 0x89, 0xf7, 0x98, 0xff, 0xca,
+  0xfe, 0xe7, 0x3b, 0x9a, 0xd9, 0x4d, 0xe1, 0x2e, 0xff, 0x19, 0xd4, 0x4e,
+  0x08, 0xf5, 0x08, 0x7a, 0xcc, 0xfc, 0xd4, 0x3e, 0x19, 0xca, 0x40, 0xe1,
+  0x91, 0x7b, 0xf1, 0x8c, 0x62, 0xde, 0x71, 0x9f, 0x12, 0x5f, 0xb4, 0xbe,
+  0x17, 0xc1, 0xba, 0x11, 0xea, 0x18, 0xc0, 0xd1, 0x3b, 0x5b, 0x76, 0x35,
+  0x8e, 0x25, 0x5e, 0xba, 0x41, 0x59, 0x77, 0x71, 0x8f, 0xc4, 0x24, 0xaf,
+  0x23, 0x4e, 0x0c, 0xc6, 0x6c, 0xc9, 0x86, 0xb3, 0xb5, 0x14, 0xc0, 0xdc,
+  0xcf, 0x5b, 0x1b, 0xab, 0x68, 0x0e, 0xcc, 0x3a, 0xd8, 0xb7, 0x6d, 0x9d,
+  0xd0, 0x7c, 0x65, 0x62, 0xd6, 0xee, 0xab, 0xc1, 0xf3, 0xd6, 0x39, 0x69,
+  0xa6, 0xb3, 0xfe, 0xfd, 0xe8, 0x91, 0xd8, 0xc7, 0xe5, 0xc9, 0xfb, 0x64,
+  0xb6, 0x40, 0xb5, 0x42, 0xa1, 0xc5, 0x7c, 0x98, 0x66, 0xea, 0x86, 0x26,
+  0x07, 0x0f, 0xfb, 0x0a, 0x6f, 0x40, 0xd1, 0x16, 0xc2, 0x96, 0x31, 0x8d,
+  0x1d, 0x3f, 0xbf, 0x4b, 0x95, 0x14, 0xbb, 0x5f, 0x6a, 0x9f, 0x50, 0x93,
+  0xec, 0xcf, 0x9e, 0xcf, 0xa7, 0x79, 0x34, 0x9b, 0x45, 0xc1, 0xa4, 0xd9,
+  0xa7, 0x6c, 0xbc, 0x40, 0x9c, 0x9a, 0xd4, 0x43, 0x62, 0xb7, 0x59, 0xed,
+  0x40, 0xf7, 0x9c, 0xe6, 0xe2, 0x26, 0x37, 0x3f, 0xe8, 0x4e, 0x46, 0x77,
+  0xec, 0x3c, 0xf8, 0xc0, 0x7b, 0x86, 0xb3, 0x1d, 0xfd, 0x5d, 0x10, 0x2b,
+  0x06, 0x86, 0x9d, 0x2e, 0x44, 0xb3, 0xa5, 0xf2, 0xeb, 0x82, 0x95, 0x8e,
+  0xf7, 0xf9, 0xb8, 0x2a, 0xeb, 0xf2, 0x8a, 0xc1, 0x59, 0x9e, 0x89, 0x74,
+  0x7c, 0x3c, 0x4c, 0xee, 0xb3, 0x91, 0x26, 0x83, 0x0e, 0x42, 0x67, 0x32,
+  0x64, 0x08, 0x45, 0x48, 0xaa, 0x3c, 0x6b, 0x68, 0xca, 0x34, 0x26, 0x4a,
+  0xf4, 0x35, 0x28, 0x11, 0xda, 0xcf, 0x8a, 0x6b, 0x63, 0xad, 0x42, 0x81,
+  0xa7, 0xe2, 0x18, 0x53, 0xbe, 0x98, 0xe6, 0x59, 0x19, 0x09, 0x8c, 0x73,
+  0x07, 0xf4, 0x5a, 0x91, 0xf2, 0x2c, 0x74, 0x87, 0x8f, 0x52, 0xea, 0x12,
+  0xeb, 0x92, 0x39, 0x4a, 0xf2, 0x90, 0x8e, 0x22, 0x8e, 0xcb, 0x5b, 0xf2,
+  0x99, 0x05, 0x09, 0x1a, 0xb6, 0xfa, 0x78, 0xc7, 0x7b, 0x57, 0x4c, 0xca,
+  0x0a, 0x68, 0x24, 0x8f, 0x88, 0x1d, 0xc5, 0x33, 0x16, 0x15, 0x32, 0x0e,
+  0xc1, 0x23, 0x18, 0xca, 0xd3, 0xfb, 0x1b, 0x8e, 0xdb, 0xea, 0x2a, 0xd0,
+  0xe5, 0x84, 0xe4, 0x52, 0xce, 0x66, 0x11, 0x5e, 0x63, 0xae, 0x1d, 0xa7,
+  0xd7, 0x8d, 0xb7, 0x1a, 0xb1, 0x6c, 0x14, 0x5d, 0x0f, 0x97, 0x49, 0x29,
+  0xee, 0x99, 0xb7, 0xf9, 0xf5, 0x92, 0x0a, 0x31, 0x96, 0xcf, 0x00, 0x97,
+  0x13, 0x4e, 0x2c, 0x7a, 0x23, 0x57, 0x66, 0xc5, 0x67, 0x34, 0x2c, 0x7b,
+  0x14, 0x2b, 0xbf, 0xcc, 0xf7, 0x5d, 0x6c, 0xf7, 0x79, 0xb9, 0xf0, 0xbf,
+  0x76, 0x45, 0x9a, 0xa5, 0x47, 0xa2, 0xdd, 0x15, 0x7b, 0x02, 0x62, 0x2a,
+  0x9f, 0xaf, 0xe5, 0x05, 0xbc, 0x0b, 0x5e, 0x4c, 0x36, 0xae, 0xf4, 0x2d,
+  0x63, 0x57, 0x45, 0x48, 0x2b, 0x02, 0x4c, 0xf1, 0xa2, 0xb2, 0x13, 0x5b,
+  0x1e, 0x91, 0xd6, 0xa7, 0x1d, 0xf3, 0xf2, 0xcf, 0x6e, 0x49, 0x3f, 0xd8,
+  0xeb, 0x8f, 0xb2, 0x94, 0x78, 0xf0, 0x5f, 0x37, 0xa4, 0x31, 0xfd, 0xac,
+  0x6c, 0x8c, 0x2f, 0xf9, 0xcd, 0x4b, 0xa8, 0x5a, 0xb4, 0xb6, 0x67, 0x07,
+  0x1f, 0x2e, 0xbf, 0x4e, 0x92, 0x3d, 0xe2, 0x5a, 0x7e, 0x4a, 0x36, 0x06,
+  0x44, 0x42, 0xab, 0x15, 0x57, 0x0c, 0x8f, 0x2e, 0xd2, 0xbf, 0x2e, 0x8a,
+  0x36, 0xc7, 0x76, 0xcc, 0x4b, 0x8f, 0x0b, 0x54, 0xee, 0x5e, 0xce, 0x0f,
+  0x6e, 0x41, 0x89, 0xb5, 0x30, 0x01, 0x2f, 0x49, 0xbf, 0x8f, 0x79, 0x47,
+  0xde, 0xda, 0xea, 0x80, 0x66, 0x1d, 0xa5, 0xa5, 0xd0, 0xde, 0x4a, 0x77,
+  0x95, 0x38, 0x47, 0x23, 0xa7, 0x55, 0x26, 0xae, 0xfe, 0xa6, 0x5b, 0xe2,
+  0xe6, 0xe2, 0xdd, 0x61, 0xa7, 0xb9, 0x97, 0x9f, 0xbd, 0xd8, 0xf9, 0x0d,
+  0xb1, 0x7a, 0x25, 0x39, 0x48, 0xc4, 0x91, 0x10, 0x65, 0x8b, 0xf9, 0xae,
+  0xa2, 0x6c, 0x4d, 0x75, 0x35, 0x94, 0xf2, 0x90, 0x9f, 0x50, 0x5e, 0x37,
+  0x13, 0xc2, 0x6d, 0xe9, 0x89, 0xa6, 0xd1, 0xb1, 0xbe, 0xff, 0x5f, 0xff,
+  0x08, 0x93, 0x49, 0x7f, 0xf8, 0x89, 0xbd, 0xc5, 0x57, 0x28, 0xc4, 0xe3,
+  0xc0, 0xed, 0x2a, 0x67, 0x6a, 0x77, 0x25, 0xd3, 0x91, 0xde, 0xf8, 0xfd,
+  0x86, 0x2d, 0x0f, 0x00, 0xa5, 0x3f, 0x9a, 0x8a, 0xac, 0xb7, 0xa7, 0xf4,
+  0x4d, 0x17, 0xb6, 0x92, 0xba, 0xa7, 0x56, 0x1f, 0x70, 0x05, 0x0b, 0x84,
+  0x31, 0x7f, 0xb2, 0xac, 0xe4, 0x85, 0xd2, 0xdc, 0x0b, 0x61, 0xbc, 0x3a,
+  0xcc, 0xc9, 0x4d, 0xce, 0x28, 0x2b, 0xf4, 0x9f, 0x74, 0x51, 0xe4, 0xec,
+  0xe6, 0xc5, 0x12, 0x07, 0xa6, 0x40, 0x89, 0xfe, 0xcb, 0xac, 0x40, 0xaf,
+  0xb9, 0x2f, 0xff, 0xd1, 0x76, 0x66, 0x1a, 0x15, 0x83, 0x7a, 0xfc, 0xf1,
+  0xf7, 0xbb, 0x94, 0x05, 0xb3, 0xde, 0x6d, 0x82, 0x01, 0xed, 0x76, 0x55,
+  0xad, 0x86, 0xb4, 0x8a, 0x26, 0x53, 0x3f, 0x48, 0x39, 0xb6, 0x3d, 0x52,
+  0x1c, 0xff, 0x81, 0x2a, 0xc1, 0x3f, 0xec, 0xf6, 0x5f, 0xfc, 0x64, 0x3f,
+  0xfa, 0xfb, 0xdd, 0x8f, 0xbf, 0xdf, 0x5b, 0x8f, 0x26, 0x39, 0xb9, 0x9c,
+  0x77, 0x0f, 0xab, 0x48, 0xfa, 0x6c, 0xf1, 0x20, 0xa9, 0x09, 0x12, 0x6b,
+  0x74, 0x35, 0x7a, 0x50, 0x7e, 0x2a, 0xe4, 0x05, 0x22, 0xd7, 0x55, 0x47,
+  0x55, 0xd5, 0x32, 0x3d, 0x2a, 0x1c, 0xee, 0x4b, 0x7e, 0x59, 0xdc, 0x2a,
+  0x52, 0x70, 0x53, 0x30, 0xf3, 0x81, 0x30, 0x2c, 0xb2, 0xf6, 0xde, 0x20,
+  0x96, 0x10, 0xa5, 0x96, 0x08, 0x67, 0x43, 0x00, 0x52, 0xe6, 0x3a, 0x4b,
+  0x93, 0xce, 0xa4, 0x8f, 0x46, 0xf6, 0x27, 0x45, 0x16, 0x24, 0x1f, 0x41,
+  0x19, 0x46, 0x77, 0xd8, 0x80, 0xb3, 0x52, 0xc1, 0xbc, 0x69, 0x03, 0xd8,
+  0x12, 0xd7, 0x42, 0xef, 0x5d, 0xe1, 0x31, 0xaa, 0x7f, 0xd5, 0x95, 0x16,
+  0x7f, 0x5d, 0x68, 0x55, 0x38, 0x77, 0xa3, 0x98, 0x96, 0x72, 0x57, 0x2d,
+  0x94, 0x7f, 0x26, 0x11, 0x18, 0x4a, 0x6a, 0x4f, 0xb8, 0x48, 0x4c, 0x34,
+  0x2d, 0x35, 0x1d, 0x51, 0x0d, 0x9d, 0x56, 0xf5, 0x05, 0x9a, 0x0f, 0xdc,
+  0x3a, 0x23, 0x47, 0xb2, 0x94, 0xd6, 0x4b, 0x26, 0xc4, 0x9f, 0x0a, 0x6f,
+  0x12, 0x64, 0xa2, 0x30, 0x39, 0x2b, 0x3c, 0xbb, 0x9c, 0x0a, 0x4a, 0x38,
+  0xd2, 0x26, 0xeb, 0x7b, 0xb9, 0xa0, 0x48, 0x3d, 0xc5, 0x4f, 0x3d, 0xac,
+  0x9b, 0x04, 0xf8, 0xfa, 0x41, 0x54, 0xd2, 0x6c, 0xa2, 0xc9, 0x83, 0x91,
+  0x84, 0xcc, 0x39, 0x69, 0x49, 0xec, 0xd4, 0x45, 0x20, 0xb2, 0xc6, 0xec,
+  0xb3, 0x8d, 0xfe, 0x46, 0xb2, 0xe9, 0xd2, 0xad, 0x92, 0x49, 0x5a, 0xdf,
+  0x6c, 0xc5, 0x1c, 0x91, 0xce, 0xf7, 0xe7, 0x04, 0xd5, 0x48, 0x7c, 0x0f,
+  0x74, 0x65, 0xb2, 0x84, 0x8a, 0x0e, 0x4c, 0x2f, 0xec, 0x33, 0x04, 0x4c,
+  0x18, 0x30, 0xd8, 0x67, 0x37, 0x9b, 0x78, 0x6e, 0xbc, 0x9f, 0xf5, 0x91,
+  0x9b, 0xcc, 0x3f, 0xff, 0xcf, 0xf0, 0x5e, 0x90, 0x27, 0x19, 0xf3, 0xd5,
+  0xe7, 0xc4, 0x1f, 0x77, 0x91, 0x52, 0x34, 0x2f, 0x79, 0x3d, 0xbf, 0xa9,
+  0x8c, 0xfa, 0x17, 0xe6, 0x17, 0x0d, 0xbf, 0x4e, 0x98, 0xe8, 0xcf, 0x3c,
+  0xc5, 0xcf, 0xd8, 0x0d, 0x32, 0x77, 0x64, 0x76, 0xbf, 0x21, 0x37, 0x1c,
+  0xc1, 0x49, 0xfa, 0x69, 0xdd, 0x0f, 0x54, 0x9d, 0xa0, 0x92, 0x2f, 0x59,
+  0x23, 0x04, 0x63, 0xa4, 0xc0, 0x5a, 0x31, 0x46, 0x5d, 0xbb, 0x64, 0x7b,
+  0x30, 0xd8, 0x26, 0x81, 0xb5, 0x6d, 0xfe, 0xd0, 0x50, 0x7e, 0xc2, 0xa8,
+  0xdb, 0x6e, 0x71, 0x11, 0xb3, 0xd1, 0x81, 0x5d, 0x01, 0x45, 0x84, 0xd4,
+  0xa7, 0x72, 0x81, 0xf6, 0xfa, 0x6f, 0x0b, 0x40, 0x51, 0x2b, 0xa3, 0x50,
+  0x56, 0x9c, 0xc0, 0x3a, 0x6b, 0xdd, 0x91, 0x41, 0x49, 0x0f, 0xf6, 0xac,
+  0xd7, 0x42, 0x93, 0xd0, 0xdc, 0x74, 0xd2, 0xaa, 0x18, 0x46, 0x03, 0x80,
+  0x70, 0xde, 0x28, 0x43, 0x15, 0x32, 0x87, 0xd3, 0x95, 0x06, 0xdd, 0xf3,
+  0xbd, 0xb6, 0xe3, 0x63, 0x9e, 0x17, 0xc6, 0xc4, 0x30, 0xaa, 0x31, 0xd8,
+  0x07, 0x09, 0x8b, 0x17, 0xe6, 0xad, 0xb0, 0x37, 0xad, 0x53, 0xdc, 0xc1,
+  0x2b, 0x28, 0x6c, 0x35, 0x0e, 0x55, 0xb1, 0x99, 0x7e, 0x91, 0xe3, 0xf9,
+  0x9b, 0xc1, 0x65, 0xc9, 0x1f, 0xd9, 0xe2, 0x1b, 0x53, 0xd0, 0xba, 0xd8,
+  0x10, 0x19, 0xdf, 0x6d, 0x52, 0xf5, 0x66, 0x04, 0x07, 0x0a, 0xa1, 0x81,
+  0xa0, 0xbd, 0xa3, 0xb5, 0x98, 0xdb, 0xc3, 0xfa, 0x1c, 0xac, 0xa7, 0xc4,
+  0x15, 0x30, 0xa1, 0x31, 0x13, 0x81, 0xa3, 0x99, 0xf7, 0xb7, 0x47, 0x17,
+  0xa2, 0x9e, 0xc0, 0x03, 0xe1, 0x0a, 0xb2, 0x85, 0x35, 0x87, 0xc9, 0x92,
+  0x79, 0xf9, 0xdc, 0x56, 0xeb, 0xab, 0x6f, 0xd2, 0xbd, 0x17, 0x2f, 0xa5,
+  0xdb, 0xca, 0x14, 0x85, 0x7b, 0x7b, 0x83, 0x7f, 0xb5, 0xbd, 0xcd, 0x61,
+  0x73, 0xb2, 0x4d, 0x03, 0xb9, 0x90, 0x4a, 0xc9, 0xc1, 0x8d, 0x3f, 0x6d,
+  0x44, 0x01, 0x73, 0xaa, 0xb9, 0xb2, 0xfd, 0x4e, 0xde, 0x67, 0x80, 0xfa,
+  0x7c, 0x8a, 0xf4, 0x5e, 0x8b, 0x35, 0x3c, 0x91, 0x8c, 0xff, 0x40, 0x6b,
+  0x68, 0xb1, 0x87, 0x0b, 0xb5, 0x82, 0x56, 0x3b, 0x49, 0x34, 0x09, 0x93,
+  0xea, 0x9b, 0xfb, 0xf3, 0x53, 0x73, 0x31, 0xba, 0x71, 0x48, 0xdf, 0x21,
+  0xe0, 0x37, 0x5a, 0x0d, 0xaf, 0x61, 0x41, 0x81, 0xe6, 0x0d, 0x53, 0xda,
+  0xd1, 0xc6, 0xd3, 0xb0, 0x0b, 0xbb, 0x64, 0xd0, 0x53, 0xf3, 0x85, 0x20,
+  0x4d, 0x44, 0xf7, 0x85, 0x42, 0xa4, 0xd8, 0xa2, 0xf7, 0x60, 0x82, 0xee,
+  0xb4, 0x98, 0xeb, 0xa0, 0x6a, 0x3a, 0xec, 0x2b, 0x71, 0xda, 0x59, 0x65,
+  0x0d, 0x01, 0x4c, 0x6c, 0x9c, 0xe5, 0x4c, 0x39, 0x64, 0xd6, 0x96, 0x02,
+  0x3f, 0xc1, 0x39, 0x30, 0x5b, 0x61, 0x9b, 0xf6, 0x81, 0x18, 0x1b, 0x01,
+  0x9d, 0x39, 0x39, 0x99, 0x5f, 0x0d, 0x76, 0xf6, 0x93, 0xb3, 0x79, 0x56,
+  0x98, 0x35, 0xe8, 0x25, 0x5f, 0x15, 0x0b, 0x5a, 0x12, 0x1a, 0xf5, 0x57,
+  0xc3, 0x6f, 0x02, 0xfe, 0x03, 0x7a, 0xe3, 0xf9, 0x33, 0x7a, 0xe3, 0x74,
+  0xc8, 0x4f, 0xdd, 0x97, 0xd3, 0x2b, 0xaa, 0x1e, 0x7b, 0xf8, 0x90, 0x9a,
+  0x3f, 0x62, 0x8f, 0x7f, 0x46, 0x8f, 0x9b, 0x8d, 0x37, 0x69, 0xa6, 0x75,
+  0xec, 0xf7, 0xe8, 0xc0, 0x79, 0x39, 0x4d, 0x2b, 0xf8, 0x7d, 0x79, 0xf3,
+  0xad, 0xe8, 0xf1, 0xf3, 0xe7, 0x91, 0x1e, 0xf7, 0x96, 0x74, 0x68, 0xf0,
+  0xcf, 0xf7, 0xe8, 0x0c, 0x8e, 0x3f, 0xfa, 0xdb, 0x28, 0x1d, 0xdf, 0x62,
+  0x2b, 0x02, 0xd5, 0x6e, 0x29, 0x55, 0x7f, 0x4b, 0x69, 0xce, 0x19, 0xf7,
+  0x4f, 0x29, 0x18, 0x52, 0x81, 0x76, 0xac, 0x41, 0x2a, 0xf7, 0x67, 0x7b,
+  0xcf, 0x76, 0xb7, 0x5f, 0x0e, 0x9e, 0x0f, 0xf6, 0x2c, 0xca, 0xcc, 0x6c,
+  0xac, 0x3b, 0x22, 0xc5, 0xa7, 0x78, 0xfe, 0xb2, 0xea, 0x5e, 0x79, 0x61,
+  0xda, 0xa1, 0xd0, 0xbf, 0xfd, 0x09, 0x3c, 0x47, 0x0e, 0x5f, 0x92, 0x12,
+  0xc1, 0x82, 0x9f, 0xab, 0x14, 0xab, 0xce, 0x44, 0x3c, 0x05, 0xd4, 0x09,
+  0x71, 0x76, 0x2c, 0x2a, 0xcc, 0xc0, 0x28, 0x37, 0x36, 0x73, 0x53, 0x2e,
+  0xe0, 0x53, 0x27, 0x07, 0x8e, 0xb2, 0x4a, 0x8b, 0x8e, 0xc4, 0x26, 0x32,
+  0x9d, 0xb1, 0x98, 0x73, 0x8c, 0x7b, 0xcf, 0x78, 0x5e, 0x0a, 0x10, 0x69,
+  0x34, 0x1e, 0x29, 0x51, 0x39, 0x57, 0x4b, 0x45, 0xfd, 0x02, 0x63, 0xce,
+  0xa0, 0x28, 0xf2, 0xd7, 0xc6, 0xd4, 0xb8, 0x23, 0xc7, 0x71, 0x50, 0xc5,
+  0x8a, 0x65, 0x0a, 0x13, 0xe7, 0xb0, 0xe3, 0x5f, 0x40, 0x0e, 0x98, 0x43,
+  0xf8, 0x76, 0xe5, 0x07, 0x42, 0xa0, 0x00, 0x0f, 0x08, 0x65, 0x71, 0xd3,
+  0xb8, 0xfb, 0x61, 0x76, 0xab, 0x75, 0x78, 0x79, 0x5e, 0x09, 0x26, 0x31,
+  0x24, 0xe6, 0x64, 0x4a, 0x60, 0x62, 0x1f, 0x37, 0x33, 0xa9, 0xd1, 0x34,
+  0xba, 0x5c, 0xb4, 0x98, 0x0b, 0x66, 0x95, 0x8b, 0x2e, 0x4a, 0xbb, 0xc0,
+  0xff, 0xea, 0x56, 0x53, 0x93, 0x4b, 0x30, 0x56, 0xf1, 0xa8, 0x53, 0x74,
+  0x4a, 0x5b, 0xfd, 0xc5, 0xbb, 0xec, 0xd9, 0xaf, 0xbf, 0xcb, 0xf6, 0x9e,
+  0xba, 0xcb, 0xbc, 0x6d, 0xc6, 0xae, 0xa0, 0x15, 0x1b, 0xcd, 0x4c, 0x21,
+  0x17, 0x5f, 0x8d, 0xef, 0x32, 0x6f, 0x93, 0xb9, 0xb0, 0x67, 0x6b, 0x8b,
+  0xb5, 0xf7, 0x98, 0xdb, 0x64, 0xcb, 0x76, 0x19, 0xb6, 0x99, 0xdd, 0x67,
+  0x8f, 0x6c, 0x34, 0xf6, 0xb4, 0xad, 0xde, 0x65, 0x97, 0x6d, 0xb9, 0xb2,
+  0x62, 0x8f, 0xf9, 0x1b, 0xe2, 0xc9, 0xbb, 0xcc, 0xb9, 0xbd, 0x58, 0xee,
+  0x24, 0x4b, 0x36, 0x9a, 0xbf, 0xcf, 0x96, 0xd6, 0xd5, 0xda, 0x7d, 0x15,
+  0xdb, 0x65, 0xcf, 0x7e, 0xf1, 0x2e, 0x7b, 0xfe, 0xeb, 0xef, 0xb2, 0x67,
+  0xff, 0x4f, 0x96, 0xfd, 0xf7, 0x92, 0x65, 0xbb, 0x3f, 0x5b, 0x96, 0xed,
+  0x75, 0x02, 0x9b, 0x46, 0x5d, 0x65, 0x7f, 0xf3, 0x0f, 0xea, 0xf6, 0xdf,
+  0xdf, 0xde, 0xfe, 0x09, 0xce, 0x93, 0x7d, 0xba, 0xaf, 0x7f, 0x0a, 0x8a,
+  0x24, 0x46, 0xd4, 0xfa, 0xe1, 0xd9, 0xe1, 0x37, 0x43, 0xf1, 0x5b, 0x8b,
+  0xe2, 0xa5, 0x8a, 0x19, 0x3b, 0xf8, 0x8c, 0xba, 0x8e, 0x1c, 0xe8, 0x40,
+  0xd7, 0xe7, 0x4a, 0x6a, 0xfd, 0x4f, 0x3d, 0xf5, 0x1d, 0x03, 0x72, 0x24,
+  0x47, 0x1b, 0x9c, 0x66, 0x92, 0x5d, 0xcc, 0x99, 0x0e, 0xd2, 0xea, 0x52,
+  0xfa, 0x2a, 0xee, 0x88, 0xf5, 0xa0, 0x8b, 0x4f, 0xa3, 0xf0, 0x5e, 0xdc,
+  0x6c, 0x6e, 0x2a, 0xe4, 0x76, 0xe0, 0xd1, 0x2d, 0x0d, 0x1b, 0xad, 0xea,
+  0x9d, 0xf4, 0xeb, 0x6b, 0xb0, 0xbf, 0xce, 0xab, 0x6c, 0x49, 0x6d, 0xd2,
+  0xcb, 0x1b, 0xef, 0xb7, 0x61, 0xcd, 0x45, 0x37, 0x5d, 0xc2, 0x65, 0xe6,
+  0xcd, 0x37, 0xbd, 0x17, 0xe4, 0xa3, 0x13, 0x5d, 0x2f, 0x10, 0xa6, 0x96,
+  0x48, 0xc4, 0xab, 0xcf, 0xae, 0x43, 0xd4, 0x46, 0x18, 0xbc, 0x94, 0xa1,
+  0x3c, 0x41, 0xfd, 0xdc, 0x34, 0x19, 0xc0, 0x46, 0xf1, 0x8b, 0x94, 0x7e,
+  0xc3, 0x7f, 0x7f, 0x41, 0xdf, 0x25, 0x57, 0x2f, 0xff, 0xeb, 0x86, 0xfe,
+  0x29, 0xb5, 0x1c, 0x84, 0x2e, 0xc9, 0x5f, 0xe5, 0x71, 0x7c, 0xa2, 0xfd,
+  0xa4, 0x21, 0x55, 0xc7, 0x8c, 0x79, 0x1b, 0x50, 0x01, 0x61, 0xd4, 0x3e,
+  0xe9, 0xda, 0x12, 0xb4, 0xa0, 0x69, 0x06, 0x2d, 0x3f, 0x8f, 0x2b, 0x89,
+  0x99, 0xcf, 0xa9, 0xa8, 0xdc, 0x01, 0x7e, 0xf9, 0x1e, 0x17, 0x29, 0x95,
+  0x05, 0xe8, 0x71, 0x85, 0x90, 0x90, 0xf6, 0x98, 0xe9, 0xfa, 0xa5, 0xdf,
+  0xbb, 0x3b, 0x9f, 0x87, 0xde, 0xe6, 0x0f, 0x9a, 0xd4, 0xe6, 0x88, 0x05,
+  0x01, 0x88, 0x00, 0xbc, 0x7c, 0xe4, 0x52, 0x39, 0x62, 0x9f, 0x8d, 0xe4,
+  0xbd, 0x91, 0x03, 0x60, 0x92, 0xb1, 0xc5, 0x28, 0x15, 0xe6, 0x83, 0xba,
+  0xd7, 0x9c, 0xc6, 0x5b, 0x43, 0x4e, 0x0a, 0x29, 0x6e, 0x22, 0x51, 0xfd,
+  0x40, 0x5a, 0x10, 0xd2, 0x44, 0x83, 0x4d, 0x7f, 0x76, 0x1c, 0x55, 0x7f,
+  0x78, 0xbe, 0x43, 0xab, 0xaa, 0xad, 0xa4, 0x5c, 0x00, 0x9a, 0xf7, 0xdc,
+  0x1f, 0x9e, 0xa5, 0x83, 0x7f, 0x21, 0xe9, 0xd0, 0x8b, 0xb6, 0x2b, 0xe1,
+  0xf7, 0x72, 0xc6, 0xaf, 0x89, 0x19, 0xa5, 0x3f, 0x4a, 0xab, 0x48, 0x0a,
+  0x85, 0xbd, 0x0b, 0x84, 0x52, 0xc3, 0xe3, 0x02, 0xd7, 0x37, 0xb9, 0xa2,
+  0xb2, 0xe0, 0xe2, 0xed, 0x0f, 0xc3, 0xe6, 0x3a, 0xf5, 0xc6, 0xd5, 0x61,
+  0xd2, 0x0b, 0x78, 0xa0, 0xd2, 0x69, 0x8f, 0xa2, 0x78, 0x11, 0xb6, 0x20,
+  0xac, 0x8e, 0xff, 0x09, 0xe2, 0x73, 0xba, 0xf7, 0x1c, 0x09, 0x4c, 0xc6,
+  0x7e, 0x05, 0x7f, 0xbd, 0x43, 0x5f, 0x90, 0xe9, 0x4d, 0xd1, 0xd8, 0xd8,
+  0x6d, 0x56, 0x8f, 0x2b, 0x2a, 0x6f, 0x22, 0x05, 0x02, 0xd0, 0xd6, 0x9c,
+  0x08, 0xf1, 0xcc, 0x35, 0x76, 0x9d, 0x69, 0xfa, 0xa4, 0x1d, 0xb4, 0x52,
+  0x64, 0x80, 0x17, 0x63, 0x10, 0x01, 0x25, 0x3b, 0xd0, 0x91, 0x96, 0xc2,
+  0x4c, 0x85, 0x44, 0x83, 0x5e, 0x75, 0x94, 0x71, 0x3a, 0x19, 0xea, 0x28,
+  0x8c, 0x80, 0x4d, 0x68, 0x0c, 0x76, 0x08, 0x8c, 0x1a, 0x47, 0x0a, 0xc2,
+  0xee, 0xce, 0xde, 0x73, 0x26, 0x1f, 0xb1, 0x5f, 0xab, 0x3a, 0x46, 0x17,
+  0xf2, 0x78, 0xf5, 0x08, 0xbf, 0xd6, 0xb3, 0xff, 0xc5, 0xa3, 0x28, 0x7d,
+  0x2b, 0x25, 0xae, 0xc4, 0xe1, 0x42, 0x67, 0x04, 0x59, 0x1b, 0xcc, 0x0b,
+  0x3c, 0xbe, 0xc9, 0xa4, 0x62, 0xfd, 0xcf, 0x2d, 0x04, 0xdd, 0xe9, 0x13,
+  0xe3, 0xd7, 0xae, 0x9a, 0xf9, 0x60, 0x56, 0xfe, 0xdd, 0xcc, 0x47, 0x3a,
+  0x28, 0xab, 0xeb, 0x60, 0xe7, 0x52, 0x72, 0x62, 0xc1, 0xb3, 0x07, 0xc1,
+  0xb8, 0x28, 0xac, 0xcd, 0xea, 0x04, 0xad, 0x32, 0x38, 0x23, 0x39, 0x3d,
+  0x39, 0x34, 0x3d, 0x3e, 0xfa, 0xf8, 0xe1, 0x74, 0xf8, 0xe1, 0xbc, 0x7b,
+  0x40, 0xcf, 0xcf, 0x2e, 0x2e, 0x8f, 0xde, 0x7e, 0x3c, 0xbf, 0x38, 0xbb,
+  0x3c, 0x3b, 0x3c, 0x3b, 0x49, 0x36, 0x77, 0xb7, 0x56, 0xe6, 0x62, 0x59,
+  0x77, 0x89, 0x47, 0x61, 0xa7, 0xfd, 0x67, 0xd1, 0x62, 0xbb, 0xb0, 0x49,
+  0xe3, 0x09, 0x5b, 0xfb, 0x4e, 0xb6, 0x40, 0x8b, 0x14, 0x18, 0x3e, 0x13,
+  0xdc, 0x41, 0x90, 0xbd, 0x69, 0x72, 0xbd, 0xe0, 0xcd, 0x2c, 0xc1, 0x78,
+  0x4d, 0x54, 0xa9, 0x9b, 0xe0, 0xc6, 0xc8, 0x32, 0x89, 0x08, 0x7a, 0x69,
+  0x3c, 0x2b, 0x5d, 0x87, 0x2f, 0xba, 0xaa, 0x05, 0xad, 0x01, 0x34, 0x46,
+  0xb7, 0x2b, 0xea, 0xf8, 0xb6, 0xb0, 0xfb, 0x82, 0x99, 0x3f, 0xc0, 0x8f,
+  0x6c, 0x5f, 0x01, 0x7d, 0xbc, 0x44, 0x68, 0x4c, 0x97, 0x55, 0x07, 0x1d,
+  0x24, 0xe7, 0x61, 0xa1, 0x17, 0x79, 0x63, 0x92, 0x15, 0x52, 0x5d, 0x4f,
+  0xfa, 0x81, 0x00, 0x1d, 0x4d, 0xaf, 0xc4, 0x8b, 0xcd, 0x03, 0xf4, 0x5b,
+  0x6f, 0xae, 0x90, 0x1c, 0x9a, 0x05, 0xde, 0x6d, 0x7e, 0x9b, 0x79, 0x31,
+  0xee, 0xbd, 0x3e, 0x51, 0x7b, 0xa4, 0x3b, 0x81, 0xa0, 0x2e, 0x22, 0x08,
+  0x8f, 0x34, 0xfc, 0xc3, 0x89, 0x38, 0xd0, 0x03, 0xa1, 0x65, 0x28, 0x21,
+  0xcc, 0xd0, 0x1f, 0xcb, 0x23, 0x1b, 0x99, 0x27, 0x91, 0xfc, 0xf0, 0x3d,
+  0x5a, 0xfb, 0x1e, 0x6f, 0xe8, 0xb0, 0xb0, 0x79, 0xb7, 0x15, 0x87, 0x58,
+  0xf4, 0xbd, 0x67, 0xe8, 0x10, 0xf9, 0xf4, 0xdd, 0x68, 0xbc, 0xae, 0x68,
+  0x2e, 0xa6, 0xb9, 0x02, 0xc2, 0x3a, 0xed, 0xa9, 0x85, 0x3f, 0x4f, 0xa4,
+  0x42, 0xa2, 0x30, 0xe2, 0x12, 0xc9, 0x86, 0x51, 0xc2, 0xf7, 0x2d, 0x10,
+  0x8a, 0x90, 0x41, 0x09, 0x27, 0xd9, 0xb3, 0x22, 0x36, 0x3c, 0x3c, 0x8f,
+  0x90, 0x3c, 0x78, 0x59, 0xf7, 0x2c, 0x15, 0xb5, 0x1e, 0xe7, 0xce, 0x60,
+  0x27, 0x19, 0xbe, 0xff, 0x52, 0xa8, 0xfd, 0xbe, 0x1c, 0x32, 0x51, 0x32,
+  0xa9, 0xc2, 0xfa, 0xc6, 0x20, 0x4e, 0x9f, 0x04, 0xe1, 0x31, 0x95, 0x38,
+  0xf6, 0x1f, 0x53, 0x97, 0xc5, 0x56, 0x0b, 0xc9, 0xaa, 0x1b, 0x75, 0xc2,
+  0x99, 0xd4, 0x3c, 0xee, 0x5e, 0x34, 0x51, 0x9d, 0xc3, 0x33, 0x65, 0x9d,
+  0xc5, 0xc7, 0x3d, 0x58, 0x4d, 0x24, 0xb5, 0x17, 0x9c, 0x87, 0x27, 0x9e,
+  0x84, 0xa7, 0x1c, 0x05, 0xd1, 0x3b, 0x54, 0x2a, 0x77, 0xa7, 0xe3, 0xbc,
+  0xb5, 0x55, 0x33, 0xca, 0xc6, 0x61, 0x50, 0x62, 0x76, 0x05, 0x45, 0x0b,
+  0x79, 0x72, 0x3d, 0xfc, 0x12, 0x81, 0x35, 0x0b, 0x9d, 0x8a, 0xd3, 0x2d,
+  0xa1, 0x91, 0x74, 0xec, 0x6b, 0xae, 0x4a, 0x40, 0xd6, 0x9d, 0x83, 0x3f,
+  0xa2, 0xe0, 0x22, 0xb3, 0xaf, 0xf2, 0x0d, 0x2a, 0x1c, 0x0b, 0x20, 0xfd,
+  0xcb, 0x35, 0x74, 0xe6, 0x9d, 0xa5, 0x29, 0x65, 0xde, 0x3d, 0x70, 0xd2,
+  0x5e, 0x90, 0x61, 0x00, 0x6d, 0x67, 0x42, 0x9a, 0xbb, 0x03, 0x88, 0xeb,
+  0xae, 0x46, 0x09, 0xa2, 0x44, 0xe8, 0x42, 0x2b, 0x55, 0x5f, 0x42, 0xd9,
+  0xd8, 0x4f, 0x92, 0xb7, 0x59, 0xf1, 0xd0, 0xee, 0x50, 0x0f, 0x4c, 0x19,
+  0x70, 0x09, 0xe7, 0x8d, 0x4b, 0xe6, 0x16, 0x3c, 0x23, 0x05, 0x40, 0x6d,
+  0x17, 0xc3, 0x2e, 0xb5, 0xfb, 0x1c, 0x93, 0x00, 0x6f, 0xec, 0x34, 0x28,
+  0xb6, 0xc6, 0x9f, 0x8c, 0x4d, 0x70, 0x32, 0x68, 0xf4, 0x0f, 0x9f, 0x7c,
+  0xca, 0x34, 0x80, 0x53, 0x0d, 0x06, 0x4c, 0xbd, 0x18, 0xfd, 0x95, 0x8e,
+  0x2b, 0x94, 0xf6, 0x69, 0x0a, 0x7b, 0x95, 0x27, 0x42, 0x21, 0x71, 0x64,
+  0x2d, 0x9b, 0xa7, 0x38, 0x62, 0x15, 0xba, 0xa6, 0xa9, 0x4e, 0x09, 0xc2,
+  0x92, 0x4a, 0x21, 0xdd, 0xde, 0x05, 0xe8, 0x53, 0x34, 0x15, 0x2a, 0x5b,
+  0x72, 0xf9, 0xea, 0x16, 0xef, 0x5f, 0x91, 0x74, 0x62, 0xa4, 0x55, 0xe7,
+  0x1a, 0xe3, 0xd9, 0x64, 0x78, 0x9f, 0x05, 0x9b, 0xd2, 0xe3, 0x4b, 0xdb,
+  0x52, 0x99, 0x57, 0xf7, 0xfe, 0x48, 0x7f, 0x84, 0xa3, 0x68, 0x05, 0x67,
+  0x68, 0x9e, 0xf5, 0xb4, 0xd3, 0xe3, 0x10, 0x1f, 0x78, 0x7d, 0xd9, 0x07,
+  0xde, 0x38, 0x81, 0xba, 0xba, 0x6d, 0xc8, 0x9e, 0xa7, 0x7c, 0xe0, 0x43,
+  0xa1, 0x3c, 0x66, 0xba, 0xbf, 0xe7, 0x96, 0x41, 0xfc, 0x3e, 0xad, 0x0a,
+  0x80, 0xc9, 0x7d, 0xcd, 0x9f, 0xb8, 0x2f, 0xe6, 0x52, 0x5e, 0x20, 0xbd,
+  0x22, 0x1c, 0x6e, 0x95, 0x39, 0xba, 0x53, 0x72, 0xaf, 0x31, 0xc5, 0x8d,
+  0x70, 0x28, 0x2b, 0x2a, 0x74, 0x5e, 0x36, 0xcc, 0xe6, 0x4c, 0xc0, 0x5d,
+  0xd2, 0x19, 0x2a, 0x72, 0xb1, 0x78, 0x93, 0xac, 0x3a, 0x21, 0xb5, 0x66,
+  0x77, 0x13, 0x9c, 0x5d, 0x8b, 0x39, 0xed, 0x0f, 0xc5, 0x54, 0x49, 0xc8,
+  0xd5, 0x93, 0x33, 0xf2, 0x45, 0x46, 0x5f, 0xc1, 0x35, 0x64, 0x49, 0x9f,
+  0xef, 0xca, 0x9c, 0x30, 0x54, 0x6b, 0xf6, 0x4a, 0x30, 0x7a, 0x90, 0xdb,
+  0x25, 0x97, 0x61, 0x41, 0x02, 0xd8, 0x13, 0x16, 0xf1, 0x22, 0x06, 0x85,
+  0x43, 0x04, 0xa7, 0x75, 0x2b, 0xd5, 0x27, 0x6f, 0x61, 0x83, 0x01, 0x8d,
+  0x30, 0x0a, 0x3f, 0x91, 0xac, 0x99, 0x3d, 0x59, 0xa4, 0x8d, 0x1e, 0x18,
+  0x4f, 0x22, 0x52, 0xf7, 0x80, 0x56, 0x2b, 0x48, 0xc9, 0x1f, 0x5b, 0xf6,
+  0xa1, 0x2e, 0x61, 0x73, 0xbb, 0xac, 0xac, 0xbd, 0x55, 0x2d, 0x82, 0xd3,
+  0x29, 0x8c, 0x83, 0x47, 0xc4, 0xf8, 0xa7, 0x07, 0x85, 0x8c, 0xad, 0x56,
+  0x66, 0xe6, 0x94, 0xce, 0x4b, 0xc5, 0x77, 0xf2, 0x06, 0x2b, 0xd6, 0xc1,
+  0xac, 0x2a, 0x96, 0x53, 0xca, 0x3c, 0xcc, 0x16, 0xdd, 0x23, 0x5f, 0x68,
+  0x88, 0xce, 0x22, 0x74, 0x98, 0xd0, 0x09, 0x7a, 0x84, 0xb8, 0x25, 0x98,
+  0xc1, 0x9e, 0xcb, 0xd3, 0x0b, 0xad, 0x3f, 0xca, 0xd6, 0x52, 0xd4, 0x2e,
+  0xee, 0xec, 0xdb, 0xb6, 0x6c, 0x2e, 0x66, 0xc3, 0x14, 0x93, 0xbe, 0x11,
+  0x02, 0xf3, 0x15, 0x8e, 0x27, 0xe7, 0x9b, 0x69, 0x81, 0x5d, 0x7d, 0xfa,
+  0x08, 0xfe, 0x09, 0x43, 0xea, 0x64, 0xee, 0x42, 0xb0, 0xb8, 0x51, 0x09,
+  0x9e, 0xc5, 0x66, 0x32, 0x06, 0xda, 0x5b, 0x52, 0xdb, 0x3d, 0xc6, 0x6b,
+  0xaf, 0xd9, 0x5c, 0x98, 0x40, 0x9d, 0xb0, 0x65, 0x00, 0x27, 0x9e, 0x3e,
+  0x99, 0xb9, 0x0f, 0x9c, 0x4c, 0x85, 0x36, 0x61, 0xef, 0x14, 0x02, 0x93,
+  0xf6, 0xbe, 0xc5, 0xbe, 0x9a, 0x60, 0x1e, 0xc1, 0xaf, 0xc4, 0x14, 0xe9,
+  0xfc, 0x9c, 0x5c, 0x4b, 0x2e, 0xed, 0xb1, 0xdb, 0x49, 0xe5, 0x9e, 0x8e,
+  0x38, 0x3f, 0x20, 0x27, 0xf1, 0x21, 0xea, 0x58, 0xbe, 0x92, 0xb9, 0x60,
+  0xc9, 0x62, 0xc4, 0x48, 0x3b, 0x26, 0x1d, 0x04, 0xaa, 0xfe, 0x9c, 0xab,
+  0x27, 0xc7, 0x61, 0x6f, 0x43, 0x39, 0x6f, 0x5a, 0x63, 0x19, 0x72, 0x5a,
+  0x31, 0x87, 0x9e, 0x37, 0x8c, 0xeb, 0xec, 0x7c, 0x6a, 0x1e, 0xf1, 0x8a,
+  0xcb, 0xf7, 0x10, 0xa4, 0x57, 0x5c, 0x89, 0x34, 0xec, 0xfe, 0xe9, 0x7e,
+  0x6b, 0x46, 0x17, 0x13, 0xd2, 0xb4, 0x56, 0xcb, 0xdd, 0x0a, 0xed, 0xaf,
+  0xbc, 0x36, 0x27, 0x7a, 0xd5, 0xa0, 0xf0, 0xd0, 0x2f, 0x19, 0x54, 0xab,
+  0x1e, 0xb5, 0x8c, 0x41, 0xfa, 0xdc, 0x59, 0x11, 0xfe, 0xc8, 0x4a, 0x27,
+  0xec, 0x92, 0x21, 0x98, 0x36, 0x57, 0x54, 0xc4, 0xf4, 0x86, 0x61, 0x1f,
+  0xfc, 0xb9, 0x23, 0x79, 0x7c, 0x1a, 0xb1, 0x35, 0xe8, 0xbf, 0x3f, 0xec,
+  0xc3, 0xef, 0x35, 0xf9, 0x69, 0x69, 0x3f, 0x8e, 0x7a, 0xd2, 0x97, 0xdf,
+  0xa0, 0x1b, 0xf9, 0xfc, 0x86, 0xbc, 0x1a, 0xaf, 0x63, 0x59, 0x36, 0xde,
+  0x44, 0xc8, 0x63, 0xbf, 0xfe, 0xf7, 0xab, 0xa9, 0x23, 0xb6, 0x59, 0xf1,
+  0x7d, 0x79, 0xec, 0x57, 0xff, 0x3e, 0x9f, 0xdd, 0xd5, 0x97, 0x8b, 0x95,
+  0x8a, 0x6f, 0x05, 0xca, 0xdc, 0x96, 0x38, 0xee, 0x56, 0xf9, 0x05, 0x42,
+  0x51, 0xd0, 0xd1, 0xa1, 0x54, 0x94, 0x6f, 0x45, 0x2b, 0x0d, 0xf8, 0x62,
+  0xf1, 0x57, 0x91, 0x60, 0x10, 0xcd, 0xe1, 0xe4, 0x48, 0xe9, 0x8f, 0xd7,
+  0xfc, 0xe7, 0x32, 0x32, 0xd4, 0x23, 0xba, 0x00, 0xb5, 0x4c, 0x08, 0x2a,
+  0x4f, 0x30, 0x49, 0x80, 0x28, 0xbb, 0xb6, 0x66, 0x02, 0x4d, 0x93, 0xa2,
+  0x44, 0xe8, 0xd5, 0x58, 0x6d, 0x12, 0x99, 0x1b, 0x82, 0x8a, 0x92, 0xf1,
+  0x65, 0x19, 0xa4, 0x2d, 0x46, 0x88, 0x54, 0x8e, 0xcc, 0xfb, 0x60, 0x6d,
+  0xf9, 0x58, 0x62, 0x11, 0x2d, 0xbf, 0xc6, 0xa3, 0x23, 0x2c, 0xfd, 0xba,
+  0x27, 0xb5, 0x41, 0x4c, 0x73, 0xb4, 0xa1, 0x04, 0x2b, 0xa9, 0x3b, 0x09,
+  0x0b, 0x19, 0x12, 0xbb, 0x30, 0x06, 0x9e, 0xb4, 0xd2, 0x29, 0x43, 0x72,
+  0x93, 0xc3, 0xb3, 0xd3, 0xd3, 0xa3, 0xc3, 0x6e, 0x20, 0x0f, 0x84, 0x15,
+  0x48, 0x3b, 0x00, 0xc1, 0xba, 0x28, 0xf9, 0x41, 0x6d, 0x3a, 0x7c, 0x9d,
+  0x49, 0xc7, 0x2d, 0x9b, 0x12, 0xf7, 0x00, 0x95, 0x6b, 0x52, 0x21, 0x65,
+  0xe5, 0xec, 0x05, 0x8f, 0xb1, 0x93, 0xd7, 0x3e, 0x92, 0xd2, 0x15, 0xec,
+  0x04, 0xe7, 0x87, 0x80, 0x43, 0x8a, 0x0a, 0x17, 0xb2, 0xee, 0x09, 0xe3,
+  0x52, 0x7b, 0xc0, 0xf5, 0xfb, 0x26, 0x93, 0x6d, 0x81, 0x2c, 0x4b, 0x32,
+  0x5c, 0x68, 0xc6, 0xd8, 0x5d, 0xcc, 0x1c, 0x5f, 0x94, 0x1b, 0xd2, 0x2f,
+  0xaf, 0xb8, 0x4c, 0xe6, 0x2c, 0xad, 0x6e, 0x29, 0x0e, 0xe8, 0x65, 0x89,
+  0x20, 0x4b, 0x10, 0x8c, 0xc3, 0x93, 0x49, 0x2c, 0xfd, 0x1c, 0xce, 0x65,
+  0x45, 0xc5, 0x23, 0x0b, 0x8d, 0x3b, 0x24, 0x75, 0xe5, 0xf6, 0x35, 0x7d,
+  0x8f, 0x5e, 0x2f, 0xb2, 0x7b, 0xfa, 0x0c, 0xb3, 0x6e, 0x50, 0x0e, 0x79,
+  0xc8, 0x53, 0xcf, 0xdc, 0xc8, 0xec, 0x40, 0x7f, 0x90, 0xf4, 0x75, 0x5a,
+  0xab, 0x19, 0xf3, 0xc0, 0x83, 0x85, 0x97, 0x8a, 0x2b, 0x71, 0xea, 0x47,
+  0x30, 0x57, 0x5f, 0x2b, 0x8d, 0x9e, 0x17, 0x6b, 0x53, 0xf6, 0x10, 0x3f,
+  0xa7, 0x83, 0x11, 0xde, 0x92, 0x1d, 0xe3, 0x11, 0xec, 0x2d, 0x0b, 0xf6,
+  0x62, 0xbe, 0xb1, 0x10, 0x64, 0xa9, 0xd4, 0x8e, 0x74, 0x47, 0xaa, 0xd0,
+  0xf9, 0xbb, 0x7e, 0x95, 0xcf, 0xd2, 0xd7, 0xf0, 0x9d, 0x8a, 0x2f, 0x88,
+  0x69, 0xec, 0x1f, 0x6f, 0x09, 0xb7, 0x61, 0x6c, 0x77, 0x67, 0xc8, 0xbe,
+  0xa5, 0x07, 0x67, 0x15, 0x91, 0x05, 0xa8, 0xf6, 0x3a, 0xd2, 0xc0, 0x68,
+  0xfd, 0xe4, 0x8b, 0xc9, 0x96, 0x09, 0xe9, 0xdb, 0x1e, 0x08, 0x11, 0xf9,
+  0xa1, 0x5f, 0x5f, 0x52, 0xaf, 0xae, 0x62, 0xed, 0xae, 0x0a, 0xfb, 0xdc,
+  0x6f, 0xd1, 0x83, 0x68, 0x59, 0xe8, 0xd6, 0xb7, 0x9f, 0xfe, 0xd9, 0x80,
+  0xf3, 0xed, 0x11, 0x2f, 0x95, 0xbb, 0x87, 0x1e, 0xa5, 0x34, 0x84, 0x24,
+  0x0a, 0xd0, 0x99, 0xde, 0x0d, 0xb5, 0xf2, 0x4e, 0x72, 0x29, 0xec, 0xfe,
+  0xb5, 0x14, 0x89, 0xd8, 0xc6, 0x3a, 0x22, 0x31, 0xd7, 0xa7, 0x5d, 0x51,
+  0x8f, 0x5e, 0x49, 0xad, 0x0c, 0xc8, 0x2e, 0x38, 0xc8, 0x66, 0x40, 0x3d,
+  0x7d, 0xe2, 0x28, 0xfd, 0xeb, 0xd7, 0xbc, 0xbe, 0x91, 0x76, 0xd5, 0xba,
+  0xbc, 0xf1, 0x89, 0xd6, 0x24, 0x3c, 0x45, 0x56, 0x07, 0x53, 0xe2, 0xd6,
+  0x20, 0x72, 0x77, 0x87, 0xb3, 0xb0, 0x0a, 0xfb, 0xed, 0xb6, 0x27, 0x9e,
+  0xfa, 0xd5, 0x8f, 0x05, 0x81, 0x3d, 0xf2, 0xb1, 0x80, 0xda, 0x5f, 0x3f,
+  0x4e, 0x4e, 0x18, 0x30, 0x3b, 0x79, 0x71, 0x18, 0x69, 0x8b, 0xfd, 0x9d,
+  0xf6, 0x52, 0x0e, 0xa8, 0x46, 0x04, 0xa8, 0x1b, 0x81, 0x71, 0xf8, 0x51,
+  0x92, 0x67, 0xd1, 0xde, 0xd6, 0xd3, 0x3e, 0x7a, 0x40, 0x19, 0x67, 0x81,
+  0xe6, 0xe7, 0xe6, 0xaa, 0xf3, 0xdc, 0xaf, 0x3f, 0x6d, 0xcd, 0xb4, 0xa6,
+  0xb5, 0x7c, 0x8a, 0x48, 0xf3, 0x1f, 0xfd, 0x2d, 0xfa, 0x61, 0xe3, 0xee,
+  0xaf, 0x39, 0xa8, 0xbe, 0xb2, 0x27, 0xf6, 0xe1, 0xdf, 0xa2, 0x27, 0x48,
+  0x62, 0x8b, 0xee, 0xa1, 0x56, 0x1f, 0xf0, 0xd8, 0x6f, 0xf1, 0xfd, 0xbb,
+  0xdd, 0x65, 0x9f, 0x45, 0x71, 0x29, 0x3c, 0xf1, 0x2b, 0x7e, 0xf8, 0x83,
+  0x55, 0xd1, 0x39, 0xe7, 0xef, 0x35, 0xfd, 0x77, 0x5f, 0x67, 0x78, 0x55,
+  0xd5, 0x8a, 0x25, 0x3c, 0xa9, 0x5e, 0xc9, 0xcc, 0x20, 0xb9, 0xf5, 0x49,
+  0x30, 0x28, 0x5b, 0xd2, 0x59, 0x58, 0x97, 0x95, 0x46, 0x31, 0x01, 0xbd,
+  0x6d, 0x5f, 0xd9, 0x57, 0x38, 0xcf, 0x98, 0x13, 0xbf, 0x39, 0x8d, 0x57,
+  0x78, 0x08, 0xba, 0xd4, 0x13, 0x56, 0x8c, 0x99, 0x1e, 0xc5, 0xa4, 0xaf,
+  0xa0, 0x86, 0x1e, 0x6c, 0x01, 0x2c, 0x24, 0x52, 0x58, 0xd9, 0x1d, 0x44,
+  0x4a, 0xa7, 0xcc, 0x52, 0xb4, 0x9a, 0x28, 0x56, 0x6a, 0x83, 0xbb, 0x8c,
+  0xfd, 0x11, 0x9b, 0x12, 0x01, 0x0f, 0xbf, 0xc4, 0xb0, 0x1c, 0x83, 0xd8,
+  0xd4, 0x65, 0x79, 0x5a, 0xe5, 0x6b, 0x3f, 0x59, 0xef, 0x7f, 0x48, 0xf6,
+  0xd7, 0x7f, 0x43, 0x38, 0xb5, 0x67, 0xaa, 0xfd, 0x0c, 0x74, 0x58, 0x9b,
+  0x87, 0x7f, 0x15, 0x56, 0xca, 0xc3, 0xcb, 0x04, 0xc9, 0xa9, 0x71, 0x90,
+  0xd4, 0x15, 0x31, 0x56, 0x26, 0xa7, 0xdd, 0x05, 0x88, 0xc0, 0x8d, 0x28,
+  0x5e, 0xcb, 0xe1, 0x51, 0x3b, 0xba, 0x06, 0xa9, 0x5a, 0xc8, 0x7b, 0xf5,
+  0x1d, 0xa8, 0x1f, 0x82, 0x2a, 0x77, 0x0e, 0x44, 0xb5, 0x1c, 0x36, 0xe5,
+  0xa1, 0xa6, 0x00, 0x1e, 0x64, 0x6b, 0x12, 0x65, 0x81, 0x03, 0x23, 0x0d,
+  0xdc, 0x7e, 0x8c, 0x98, 0x52, 0xc0, 0x94, 0x8f, 0x97, 0x4a, 0x36, 0x2f,
+  0x3d, 0x87, 0xb6, 0xe3, 0xe2, 0x21, 0x5b, 0x24, 0xee, 0x4a, 0xc5, 0x3e,
+  0x04, 0x39, 0xeb, 0x67, 0x41, 0x25, 0x1b, 0xff, 0xe8, 0x6b, 0x53, 0x77,
+  0x79, 0xca, 0x31, 0x0a, 0x9e, 0x46, 0xf9, 0x10, 0xcf, 0xa7, 0x96, 0xf3,
+  0x5b, 0xe9, 0xac, 0xe2, 0x04, 0xe6, 0x48, 0xd2, 0xc3, 0xe9, 0x70, 0x18,
+  0x02, 0xa7, 0x8a, 0x2a, 0x1b, 0x97, 0xd7, 0x45, 0xfe, 0x77, 0x6a, 0x11,
+  0x7e, 0xbe, 0x2e, 0x94, 0xa2, 0x05, 0x5d, 0x53, 0xbf, 0x35, 0xf1, 0x59,
+  0x50, 0x34, 0xa1, 0xbb, 0x1a, 0xca, 0xac, 0x41, 0x42, 0x8a, 0xc2, 0x9a,
+  0x44, 0x08, 0x20, 0xf3, 0xc8, 0xb5, 0x5b, 0x99, 0xdd, 0x5c, 0x32, 0x4b,
+  0x74, 0x74, 0xf2, 0xe1, 0x60, 0x71, 0x75, 0x57, 0x08, 0x24, 0x66, 0x49,
+  0xc6, 0x7c, 0x96, 0xfc, 0x02, 0xa8, 0x19, 0x4a, 0x96, 0xfc, 0x7c, 0xa0,
+  0x59, 0x3c, 0x9b, 0x1d, 0xb5, 0xa3, 0xe9, 0x68, 0xc4, 0xf9, 0x42, 0x34,
+  0x97, 0x3e, 0x52, 0x20, 0xe5, 0xc6, 0xc1, 0x03, 0x59, 0xf0, 0x3e, 0x89,
+  0x35, 0xc4, 0x34, 0xc4, 0x39, 0x46, 0xe1, 0xd9, 0xea, 0x32, 0x86, 0x58,
+  0x87, 0xc0, 0x13, 0xa8, 0x42, 0xc8, 0xe2, 0x55, 0xb2, 0x47, 0x31, 0x3c,
+  0xc1, 0x83, 0x6c, 0x6b, 0x74, 0x97, 0x5c, 0x13, 0xdb, 0x3b, 0x92, 0x7c,
+  0x60, 0xa3, 0x45, 0x7a, 0xe6, 0x44, 0xa4, 0x0d, 0x0a, 0xb7, 0x91, 0x45,
+  0x06, 0x37, 0xcc, 0x85, 0x8f, 0x06, 0x06, 0x44, 0x68, 0x41, 0xe8, 0x5b,
+  0xb5, 0x71, 0xcd, 0xaf, 0x09, 0xd5, 0xab, 0xbb, 0xa2, 0xbb, 0xb5, 0x1c,
+  0xf1, 0xa6, 0xed, 0x22, 0x87, 0x52, 0xc4, 0x18, 0xb6, 0x55, 0x25, 0x1c,
+  0xbf, 0x2e, 0x52, 0xe9, 0xa4, 0xe0, 0x6e, 0xc8, 0xf1, 0xa5, 0xd3, 0xd4,
+  0x50, 0x69, 0x65, 0xa2, 0xe3, 0x62, 0xb0, 0xa9, 0xdd, 0x2b, 0x3d, 0x92,
+  0x3e, 0x2c, 0x72, 0x45, 0x7d, 0xef, 0xcf, 0x55, 0xca, 0x76, 0x07, 0xfb,
+  0x20, 0x8d, 0x2c, 0x29, 0x3c, 0xfa, 0x1b, 0xe0, 0x13, 0x7f, 0x11, 0x40,
+  0xf1, 0xb7, 0xc5, 0x27, 0xba, 0x9b, 0x82, 0x6e, 0x9d, 0xf0, 0x9e, 0x40,
+  0xe8, 0x90, 0x12, 0xcc, 0x38, 0x56, 0x78, 0x9f, 0x5a, 0x5a, 0xe8, 0xa8,
+  0x92, 0x1e, 0x3f, 0x4c, 0xbd, 0x36, 0xda, 0x23, 0x0b, 0x64, 0xe4, 0xa6,
+  0x48, 0x8d, 0x58, 0xd5, 0x13, 0xae, 0x93, 0x3e, 0xca, 0x20, 0x40, 0x71,
+  0xff, 0xff, 0xd1, 0xd1, 0x32, 0xff, 0x96, 0xb9, 0x4e, 0x34, 0xbc, 0x5d,
+  0x23, 0x9b, 0x5f, 0x7b, 0xf7, 0xf1, 0x17, 0x8f, 0x5e, 0xc8, 0x38, 0x67,
+  0xf4, 0x9a, 0x23, 0x14, 0xf2, 0xe4, 0x9d, 0xad, 0x1a, 0xc5, 0xc5, 0x2f,
+  0x9a, 0xf8, 0x81, 0x41, 0x21, 0x28, 0x66, 0x8e, 0x11, 0xf1, 0xa6, 0xe5,
+  0xce, 0x97, 0x08, 0xb8, 0x4c, 0x09, 0x64, 0x95, 0xb5, 0xd6, 0x48, 0xf4,
+  0x51, 0xd6, 0xdc, 0x13, 0x16, 0x12, 0xf3, 0xa1, 0x13, 0xe9, 0x49, 0x01,
+  0x99, 0xa2, 0xa5, 0x41, 0xa1, 0x1e, 0x07, 0xdd, 0x48, 0xa0, 0x30, 0x27,
+  0x9a, 0xad, 0x79, 0xaa, 0x1e, 0xd0, 0xe0, 0xf4, 0x45, 0x79, 0xd6, 0x9d,
+  0x37, 0xb7, 0x35, 0x37, 0x0a, 0x59, 0x69, 0xa1, 0x48, 0x35, 0xbc, 0x27,
+  0x0f, 0xfa, 0x86, 0xbf, 0x3d, 0xc6, 0x72, 0x6c, 0xa3, 0xc5, 0x0f, 0x48,
+  0x95, 0xf4, 0x86, 0xa8, 0xcb, 0xef, 0x69, 0x5a, 0x91, 0x4a, 0xd5, 0xb8,
+  0x1d, 0x23, 0x89, 0x16, 0xda, 0x90, 0xde, 0xa2, 0xf0, 0xb7, 0xf1, 0x54,
+  0x88, 0xf3, 0x96, 0xe5, 0x87, 0x9d, 0x87, 0xe5, 0xc7, 0xc2, 0xe1, 0x43,
+  0xaf, 0x28, 0x01, 0x39, 0x9b, 0xea, 0x71, 0xcd, 0x35, 0x6f, 0x98, 0x3e,
+  0xd6, 0x87, 0x8b, 0xd9, 0xc9, 0x4a, 0xa6, 0x28, 0x31, 0x5f, 0x09, 0xe2,
+  0xd6, 0xe6, 0xab, 0xe9, 0xdc, 0x7c, 0x08, 0x45, 0xd2, 0xe9, 0x92, 0x9e,
+  0x78, 0x12, 0x0f, 0xfd, 0xd6, 0x05, 0xd1, 0xb5, 0x72, 0xb0, 0xf3, 0x10,
+  0x7a, 0x14, 0xd6, 0xf0, 0x90, 0xf8, 0x01, 0xcb, 0x25, 0x81, 0xad, 0x09,
+  0xc4, 0x5f, 0x1d, 0xd3, 0xe2, 0xea, 0xa1, 0x5d, 0x19, 0x67, 0xcf, 0x10,
+  0x62, 0xc1, 0x82, 0xf7, 0x4d, 0x57, 0x60, 0x87, 0x75, 0x1e, 0x2f, 0x99,
+  0x84, 0x06, 0x58, 0x60, 0xfe, 0xbe, 0xf3, 0xb4, 0x4b, 0x3c, 0x5d, 0xcb,
+  0x9e, 0xdc, 0xdb, 0x9a, 0xd0, 0xec, 0xb5, 0x8e, 0x15, 0x15, 0x11, 0x24,
+  0xae, 0xbe, 0x22, 0xcc, 0x75, 0xf2, 0x01, 0x5b, 0x1e, 0x6a, 0x99, 0x57,
+  0x34, 0x16, 0x4f, 0x69, 0x09, 0x07, 0x49, 0xd8, 0x8e, 0xf8, 0x05, 0x37,
+  0x87, 0x44, 0x06, 0x3e, 0x3c, 0x3c, 0xdf, 0x4a, 0xce, 0x5d, 0xa2, 0x2f,
+  0xe2, 0x58, 0x80, 0xda, 0xd2, 0x9d, 0xed, 0x8b, 0x7b, 0x29, 0xc7, 0xc1,
+  0xd4, 0x44, 0xf1, 0xbc, 0x5d, 0xc9, 0xa4, 0xc6, 0xce, 0xb5, 0x04, 0x5c,
+  0x60, 0xd7, 0xff, 0xd5, 0xe5, 0x5f, 0x67, 0x2c, 0x07, 0x48, 0xc3, 0xe7,
+  0xb4, 0x5c, 0xc9, 0x10, 0xf6, 0xa5, 0x81, 0x31, 0xeb, 0x4a, 0x42, 0x79,
+  0x33, 0x01, 0xbe, 0x64, 0x32, 0xf3, 0x0e, 0xc2, 0xd0, 0x3b, 0xcd, 0x71,
+  0x5a, 0xba, 0xe2, 0xc0, 0x3c, 0x02, 0x02, 0x29, 0x45, 0x53, 0xf3, 0xed,
+  0xd7, 0xe1, 0x88, 0xa5, 0x51, 0x5c, 0x67, 0x45, 0x48, 0x3a, 0x8d, 0x8f,
+  0x92, 0xbe, 0x20, 0x1b, 0x78, 0x32, 0xe8, 0xd2, 0x9d, 0x7a, 0x99, 0xd6,
+  0xd2, 0xb9, 0x1c, 0x48, 0x4c, 0xde, 0xef, 0xcb, 0x88, 0x91, 0xe8, 0x6c,
+  0x8f, 0x80, 0x3e, 0xbf, 0x25, 0xd1, 0x7b, 0x4d, 0xd9, 0xed, 0x0d, 0xae,
+  0xd2, 0xf9, 0x03, 0x4d, 0x87, 0x79, 0xb0, 0xae, 0x6f, 0xf6, 0x8c, 0x80,
+  0xda, 0x1b, 0x7c, 0x0e, 0x4b, 0xc8, 0xe8, 0x04, 0x59, 0xb5, 0x84, 0xf6,
+  0x4c, 0x4a, 0x56, 0x75, 0x5a, 0x13, 0x65, 0x7f, 0xe0, 0xec, 0x8b, 0xfe,
+  0xff, 0xa0, 0x9d, 0xf6, 0xb7, 0x45, 0xe8, 0x3b, 0xdc, 0xc4, 0x86, 0x7a,
+  0x07, 0x06, 0x24, 0xa2, 0x43, 0x27, 0x66, 0x8e, 0x6a, 0x94, 0x37, 0xe0,
+  0x33, 0x55, 0xd2, 0x8e, 0xf6, 0xb1, 0xa4, 0x37, 0x00, 0xd0, 0xa4, 0xd7,
+  0xa2, 0x69, 0x5a, 0x46, 0xd5, 0xff, 0x1f, 0xf4, 0x2d, 0x6d, 0x80, 0x61,
+  0x8c, 0x88, 0x4e, 0x7c, 0x79, 0xf4, 0xee, 0xec, 0xe2, 0xa8, 0x0d, 0x95,
+  0xe7, 0xd2, 0xf4, 0x08, 0x34, 0x74, 0x7b, 0x07, 0x2e, 0x12, 0x57, 0xd8,
+  0x4b, 0x4b, 0xdc, 0x9f, 0x7f, 0xf7, 0xd6, 0x76, 0x8e, 0x34, 0x91, 0x82,
+  0x3b, 0xe5, 0xaa, 0xc7, 0xca, 0x3c, 0x77, 0x35, 0x08, 0x52, 0x36, 0xa8,
+  0x20, 0x80, 0x54, 0x17, 0xb4, 0xdd, 0xa3, 0x1e, 0x70, 0x07, 0xe4, 0x63,
+  0x29, 0x53, 0x5f, 0xd6, 0x35, 0xe5, 0x81, 0xd9, 0x66, 0x03, 0xf5, 0x1a,
+  0x0a, 0x06, 0xf8, 0x1e, 0xc4, 0xe6, 0x25, 0xbe, 0x0f, 0x22, 0x01, 0x19,
+  0x24, 0xf6, 0x23, 0xee, 0x2b, 0x5c, 0x2a, 0x15, 0xea, 0x0b, 0xbe, 0x12,
+  0x8b, 0xae, 0x51, 0xf9, 0x4b, 0xf6, 0x5e, 0xf2, 0xa5, 0x4a, 0xd4, 0xcd,
+  0xb4, 0x67, 0x6d, 0xed, 0x81, 0x1e, 0xf3, 0xb3, 0x48, 0xaa, 0x96, 0x3f,
+  0x8f, 0x11, 0xef, 0xbc, 0xf9, 0xec, 0x66, 0xbd, 0xd5, 0xf3, 0x7a, 0x6a,
+  0xa7, 0x4d, 0x3a, 0xbc, 0xf1, 0xc7, 0x8d, 0x44, 0xe0, 0x99, 0x10, 0x78,
+  0x7c, 0xd5, 0x2f, 0xa9, 0x39, 0xe4, 0x6a, 0x50, 0x6c, 0x3d, 0x16, 0x51,
+  0xd5, 0x41, 0x2f, 0xb7, 0xd1, 0x34, 0x6f, 0x54, 0xe2, 0x6c, 0x5c, 0x0e,
+  0x8a, 0xe2, 0x3c, 0xf8, 0x06, 0xc4, 0x87, 0xdc, 0xdc, 0xda, 0x56, 0x2f,
+  0x92, 0x35, 0x46, 0x8e, 0x9f, 0xca, 0x27, 0xa5, 0x57, 0x91, 0x03, 0x9e,
+  0x01, 0xa5, 0x1c, 0xe5, 0x12, 0x45, 0x4a, 0xf8, 0xff, 0x50, 0x34, 0x74,
+  0x5a, 0x21, 0x58, 0x82, 0x49, 0xab, 0x70, 0x21, 0xf1, 0x7e, 0x72, 0xdb,
+  0xb7, 0x46, 0x7e, 0xe6, 0xab, 0x17, 0xaf, 0x48, 0x8d, 0x40, 0xe0, 0x50,
+  0x0a, 0x33, 0x08, 0x37, 0x1f, 0x78, 0x27, 0xc2, 0xc4, 0x8c, 0xce, 0x00,
+  0xb4, 0x98, 0xde, 0x28, 0x9b, 0x72, 0x21, 0x88, 0xa1, 0xd7, 0xc4, 0x93,
+  0xa3, 0x75, 0x6d, 0x3c, 0xde, 0x80, 0xd5, 0x13, 0xb3, 0x0a, 0xe9, 0xad,
+  0xcb, 0xd8, 0x4b, 0x96, 0x1d, 0xcd, 0x9e, 0xdd, 0xb6, 0x9a, 0xa1, 0xc9,
+  0xdb, 0xc1, 0xf2, 0x19, 0x1b, 0xd1, 0x9d, 0x55, 0x79, 0x7d, 0x9b, 0x6c,
+  0xfe, 0xfb, 0x96, 0x2d, 0xc3, 0x19, 0x41, 0x3e, 0x91, 0x6b, 0x32, 0x2f,
+  0x16, 0x59, 0xab, 0x44, 0xab, 0xb6, 0x76, 0x85, 0xb2, 0x21, 0xc4, 0x01,
+  0x17, 0x03, 0xb1, 0x53, 0x95, 0xbc, 0x79, 0xc0, 0xea, 0x2e, 0x79, 0x82,
+  0xb2, 0x0b, 0xc2, 0x5b, 0x13, 0x2b, 0x02, 0xc2, 0x43, 0xf1, 0x12, 0xaa,
+  0xfa, 0x34, 0x48, 0x3e, 0x14, 0xd0, 0x6e, 0x64, 0x6f, 0xca, 0x5d, 0x92,
+  0x17, 0x66, 0x20, 0x66, 0xac, 0xe6, 0x36, 0x89, 0x08, 0xaa, 0xbf, 0xb5,
+  0xe5, 0x93, 0x08, 0xd2, 0x0e, 0xf3, 0x04, 0x4e, 0xb6, 0x08, 0x3f, 0x27,
+  0xda, 0x92, 0x77, 0x61, 0x1d, 0x14, 0x2e, 0xe1, 0x40, 0xc7, 0xc1, 0xac,
+  0x12, 0xda, 0xa6, 0x24, 0xa1, 0x6c, 0x3a, 0xed, 0x33, 0x3f, 0x26, 0xf1,
+  0x05, 0x92, 0x9d, 0x61, 0xd6, 0x29, 0x1d, 0x73, 0xd8, 0xd9, 0xb7, 0xc1,
+  0x82, 0xdb, 0x07, 0xb9, 0x48, 0x03, 0x82, 0xec, 0x6a, 0x0e, 0xaf, 0xa0,
+  0xd4, 0x94, 0x96, 0x96, 0xd0, 0xf0, 0xce, 0x2f, 0x83, 0xc9, 0xe1, 0x21,
+  0x2d, 0x2b, 0x5a, 0x10, 0x12, 0x4e, 0x8d, 0x6f, 0xae, 0xab, 0x39, 0x57,
+  0x4f, 0x89, 0x95, 0x76, 0xf1, 0x0d, 0x00, 0x7e, 0x54, 0x57, 0xb7, 0xce,
+  0x1a, 0xee, 0x0c, 0xbf, 0x7b, 0xfc, 0xb6, 0x55, 0x86, 0x91, 0xa6, 0x62,
+  0x12, 0x16, 0x15, 0xf0, 0x3c, 0x1c, 0x52, 0x59, 0xc9, 0x9c, 0x58, 0x77,
+  0xb7, 0xd8, 0xa6, 0x9c, 0xb5, 0x33, 0xd2, 0x52, 0x59, 0xf8, 0x5d, 0xbc,
+  0x39, 0x69, 0x85, 0xb5, 0x59, 0x6e, 0x43, 0x1b, 0xc6, 0x56, 0xd1, 0x3a,
+  0xa1, 0xb4, 0x19, 0xa8, 0x20, 0xb0, 0x7e, 0x26, 0x84, 0x36, 0xdc, 0xcc,
+  0xca, 0x09, 0x61, 0xb0, 0xb3, 0xc7, 0xe7, 0x62, 0x06, 0x30, 0xa0, 0x1e,
+  0x1c, 0x01, 0xb0, 0xd7, 0x7e, 0xd1, 0x66, 0xb4, 0x33, 0x22, 0x6e, 0x16,
+  0x9e, 0x99, 0x78, 0x73, 0x6e, 0xa8, 0x5a, 0xcd, 0x48, 0xde, 0xf4, 0x87,
+  0x50, 0x24, 0xe5, 0xb8, 0xf1, 0x46, 0x40, 0x0f, 0xc4, 0x9b, 0x63, 0xe1,
+  0x1b, 0x19, 0x19, 0x01, 0x9a, 0x61, 0xdc, 0xae, 0x1e, 0x19, 0x3f, 0x18,
+  0x2c, 0xb2, 0xf9, 0x21, 0x8b, 0xf4, 0x60, 0x85, 0x97, 0x8f, 0x2c, 0xb6,
+  0xc2, 0xe8, 0x41, 0x77, 0x81, 0x95, 0xbe, 0xbe, 0xe2, 0xa5, 0xec, 0xc7,
+  0x9b, 0xb3, 0x2b, 0x2c, 0x34, 0x86, 0x2b, 0x16, 0x58, 0xbe, 0x12, 0xcc,
+  0xc2, 0xd4, 0x88, 0x48, 0xa3, 0x05, 0x8f, 0xb3, 0x8f, 0x5c, 0x46, 0x9a,
+  0xea, 0x43, 0x37, 0x1f, 0x57, 0x4f, 0xc8, 0x54, 0x92, 0xfd, 0x1e, 0x66,
+  0x28, 0x47, 0x68, 0x85, 0x85, 0xf0, 0x86, 0xa5, 0xf4, 0x9b, 0x51, 0x49,
+  0x4a, 0x20, 0x97, 0x7c, 0x6c, 0x96, 0x4f, 0x88, 0xf7, 0xbd, 0xc4, 0x16,
+  0x66, 0x9e, 0x97, 0x79, 0xa1, 0x59, 0xd6, 0x22, 0x63, 0xbc, 0x2e, 0x26,
+  0xb1, 0x44, 0xf3, 0x55, 0x81, 0x96, 0xd9, 0x2d, 0x41, 0xa2, 0xad, 0xa2,
+  0xf0, 0x31, 0xc2, 0xfb, 0xec, 0xef, 0x63, 0x7e, 0xdc, 0xed, 0x63, 0x1e,
+  0x95, 0x6e, 0x63, 0x57, 0xb9, 0xea, 0xf1, 0xd5, 0x6e, 0x7f, 0xd2, 0x9e,
+  0xc9, 0x6e, 0xff, 0xe6, 0xf7, 0x13, 0xeb, 0x15, 0xba, 0x9f, 0xd8, 0x0f,
+  0xeb, 0xfd, 0x0f, 0x44, 0x92, 0x96, 0x86, 0x23, 0x18, 0x26, 0x37, 0x76,
+  0xa5, 0xec, 0x86, 0x4b, 0xa6, 0x02, 0xa4, 0x87, 0x81, 0x96, 0x14, 0x7c,
+  0xbc, 0x42, 0x8d, 0x3b, 0x99, 0x60, 0x59, 0x8e, 0xe5, 0x93, 0x23, 0x4f,
+  0xbb, 0x2e, 0xb2, 0x7c, 0xf7, 0xab, 0xd8, 0x86, 0x13, 0xb4, 0x5c, 0xe0,
+  0xc9, 0x57, 0x3b, 0x07, 0x62, 0x92, 0x91, 0x93, 0x58, 0xb6, 0x02, 0x61,
+  0x5b, 0xb9, 0x21, 0x95, 0x7b, 0xab, 0x36, 0xd2, 0xd2, 0x39, 0xae, 0x66,
+  0x8f, 0x1c, 0x72, 0xf3, 0x80, 0x1b, 0x15, 0x61, 0x7a, 0xbc, 0x51, 0x05,
+  0x27, 0x53, 0x8e, 0xf1, 0x92, 0x99, 0x5f, 0xd6, 0x83, 0xd6, 0x2e, 0x5c,
+  0xd5, 0x13, 0x7a, 0x30, 0xd6, 0x19, 0x37, 0xb5, 0x48, 0x73, 0x79, 0xf0,
+  0x24, 0x65, 0xbc, 0x39, 0xe9, 0xae, 0x7b, 0x4f, 0xa6, 0xa7, 0xe7, 0x39,
+  0x52, 0x99, 0x26, 0xda, 0x18, 0x97, 0xe1, 0xde, 0xd0, 0x03, 0xfe, 0xb3,
+  0x04, 0x04, 0x59, 0xf1, 0xd3, 0xc2, 0xb7, 0xdb, 0xe9, 0x8b, 0xe6, 0xee,
+  0x5d, 0x01, 0x3e, 0xf5, 0xa2, 0xad, 0x76, 0xc1, 0xb9, 0xea, 0x18, 0x42,
+  0x85, 0xe0, 0xc3, 0x00, 0x94, 0x06, 0x65, 0x06, 0x44, 0x91, 0x05, 0x3f,
+  0xc6, 0x84, 0x08, 0x9c, 0x43, 0xbc, 0x1b, 0x7f, 0x92, 0x09, 0xb1, 0x30,
+  0xa9, 0xa8, 0x89, 0x22, 0x6a, 0x88, 0xd6, 0x34, 0xab, 0x33, 0xb1, 0x25,
+  0xf4, 0xf1, 0x84, 0x39, 0xa1, 0xc3, 0x52, 0x6e, 0x1d, 0x6e, 0xb2, 0x7a,
+  0xe0, 0x39, 0x2b, 0x98, 0x48, 0x31, 0xbb, 0x9e, 0xf8, 0x85, 0x11, 0xbd,
+  0xe1, 0x57, 0x3d, 0x9e, 0x82, 0x6b, 0x33, 0x78, 0xfc, 0x11, 0x05, 0x77,
+  0xb2, 0x62, 0x0d, 0x75, 0x85, 0xd2, 0x0b, 0xb7, 0x92, 0x8b, 0x8c, 0xf2,
+  0x98, 0xee, 0x48, 0x9a, 0x52, 0xa2, 0x72, 0xc2, 0x2d, 0x6c, 0xe6, 0x83,
+  0x4c, 0xc0, 0x7c, 0xa4, 0x22, 0x11, 0xd5, 0x6a, 0xa0, 0xd3, 0x98, 0xad,
+  0xb1, 0xc5, 0x06, 0x7f, 0xca, 0x85, 0x31, 0x76, 0x07, 0xbb, 0x3d, 0xae,
+  0x8f, 0x57, 0xa9, 0xba, 0xa8, 0x36, 0x06, 0xfd, 0x24, 0x15, 0x12, 0x79,
+  0x4e, 0x6c, 0xec, 0x7a, 0x23, 0x2e, 0xe8, 0xbb, 0x75, 0xe8, 0xa3, 0x86,
+  0x9f, 0xdb, 0x99, 0x35, 0xf7, 0xe9, 0x43, 0xa8, 0xa8, 0xef, 0xf4, 0x9f,
+  0xbf, 0x7a, 0xd5, 0xba, 0xd1, 0x6b, 0x8f, 0x26, 0xf3, 0xc5, 0xce, 0x0e,
+  0xe7, 0x60, 0x77, 0x5f, 0x33, 0xbf, 0xe8, 0xbf, 0xc2, 0x8b, 0xed, 0xd7,
+  0xb8, 0xb2, 0xfc, 0xf2, 0xf7, 0xfa, 0xf4, 0x9b, 0xc8, 0xe7, 0xe0, 0x75,
+  0x59, 0xfa, 0xd6, 0x2b, 0xfa, 0x5c, 0xe4, 0x2d, 0x4e, 0x0f, 0xc7, 0x3c,
+  0x96, 0x57, 0x57, 0xe4, 0xef, 0xa2, 0x27, 0x71, 0xf1, 0x99, 0x1d, 0x71,
+  0x9f, 0x56, 0x93, 0x70, 0xb8, 0x3b, 0xbd, 0xfe, 0xee, 0xb2, 0xe1, 0x82,
+  0xe4, 0x13, 0xf0, 0x16, 0x5a, 0x4e, 0x32, 0x27, 0x8d, 0x21, 0xc1, 0xc0,
+  0xde, 0x6e, 0x43, 0xbb, 0xa6, 0x47, 0xbb, 0xaf, 0x5e, 0xf5, 0xa8, 0x67,
+  0x2f, 0x5e, 0xbd, 0x5a, 0x9a, 0xc2, 0xe5, 0x7d, 0xe6, 0xbe, 0x74, 0x4e,
+  0x2a, 0x7a, 0xdd, 0xed, 0x99, 0x9a, 0xec, 0x95, 0xf8, 0x77, 0xe8, 0x37,
+  0xc9, 0x9b, 0xe4, 0xf4, 0xec, 0xf2, 0xc8, 0xf3, 0xdf, 0x38, 0xff, 0xac,
+  0x5f, 0x35, 0x05, 0x01, 0xe1, 0x39, 0xea, 0x34, 0xc0, 0x3e, 0x36, 0xc6,
+  0x56, 0x88, 0x72, 0x00, 0xc8, 0x54, 0x3d, 0x87, 0xbf, 0xeb, 0x7e, 0xee,
+  0xac, 0x40, 0x35, 0x86, 0xeb, 0xbc, 0xf1, 0x79, 0x05, 0x36, 0xcd, 0x62,
+  0x6f, 0xc1, 0x0f, 0x72, 0x97, 0x4e, 0x73, 0x1b, 0xd9, 0xd9, 0xa8, 0x8d,
+  0xa4, 0x69, 0x98, 0x63, 0x90, 0xfe, 0x51, 0xce, 0x37, 0x02, 0x32, 0x91,
+  0x6c, 0x4a, 0xce, 0x03, 0xb9, 0x09, 0xf9, 0x85, 0x3e, 0x9e, 0x94, 0xd3,
+  0x02, 0x83, 0x96, 0xcb, 0x41, 0xa6, 0xf0, 0x2e, 0xfb, 0x1f, 0x8f, 0x04,
+  0x77, 0xe0, 0xf4, 0x02, 0xf2, 0x4c, 0x01, 0xd5, 0xd4, 0x4c, 0xcf, 0x9b,
+  0x86, 0x8d, 0xba, 0x5b, 0x36, 0x9a, 0x6a, 0x2f, 0xc7, 0x01, 0x0f, 0x88,
+  0x28, 0x4c, 0xb2, 0xb9, 0xb2, 0xf5, 0x15, 0xed, 0x76, 0xcc, 0x5e, 0xbe,
+  0xca, 0xaf, 0x17, 0x55, 0x1c, 0x5c, 0x05, 0xe3, 0x5c, 0xf0, 0xbd, 0xca,
+  0x08, 0x9b, 0xde, 0xa7, 0x8a, 0x2b, 0x06, 0x89, 0xaf, 0x1e, 0x6e, 0x35,
+  0x94, 0x15, 0xc7, 0x4b, 0x74, 0xbd, 0x81, 0x5f, 0x8c, 0x90, 0xd7, 0x46,
+  0x8f, 0x21, 0x3f, 0x82, 0x20, 0x4b, 0xe0, 0xfa, 0x93, 0xc2, 0x2d, 0x02,
+  0xa6, 0x56, 0x4f, 0xbb, 0x59, 0x6c, 0x54, 0x68, 0x49, 0x13, 0x99, 0x82,
+  0x6e, 0x14, 0xaf, 0x5c, 0x6c, 0x78, 0x0c, 0x0c, 0xf4, 0x2c, 0x7c, 0x32,
+  0x37, 0xa5, 0xc7, 0xff, 0x1c, 0xa6, 0x59, 0x92, 0xe4, 0xe1, 0xb4, 0x69,
+  0xfc, 0x95, 0x17, 0xc9, 0x16, 0x95, 0xaf, 0xa5, 0x4c, 0xad, 0xc4, 0xf7,
+  0x31, 0x59, 0xcc, 0x88, 0x21, 0x4b, 0x1b, 0xd0, 0x85, 0xd2, 0x4a, 0xf3,
+  0x1a, 0x27, 0x9b, 0x5a, 0x52, 0x55, 0x77, 0xa8, 0xe7, 0x26, 0x61, 0x29,
+  0x45, 0x3b, 0x85, 0x93, 0x5a, 0xb7, 0x06, 0x31, 0x37, 0x00, 0xed, 0x77,
+  0x5e, 0x2d, 0xcb, 0x62, 0x8c, 0x92, 0x48, 0x74, 0x49, 0x52, 0x77, 0xf5,
+  0x42, 0x1e, 0x1e, 0xff, 0xcf, 0xa3, 0xdf, 0x32, 0x04, 0x56, 0xa5, 0xf7,
+  0x16, 0xf0, 0xff, 0x1d, 0x73, 0x2c, 0x49, 0x68, 0xca, 0xe6, 0x96, 0xa6,
+  0x53, 0xb1, 0xe2, 0xa9, 0x84, 0x2c, 0x6e, 0x0f, 0xc4, 0x38, 0xa5, 0xe2,
+  0x99, 0xd9, 0x58, 0xe1, 0xde, 0x26, 0x58, 0xbe, 0xa3, 0xd6, 0x60, 0x9a,
+  0x4f, 0x20, 0xb5, 0xb1, 0x1e, 0x36, 0x54, 0xc2, 0xd5, 0x6b, 0xd9, 0xbe,
+  0x87, 0x5b, 0x18, 0xf5, 0x22, 0x03, 0x86, 0xfe, 0x02, 0xb4, 0x3d, 0xd4,
+  0x2d, 0xd3, 0xdb, 0x47, 0x4a, 0xce, 0xf8, 0xd9, 0x71, 0xa8, 0x52, 0x58,
+  0x65, 0x14, 0x2d, 0xab, 0x92, 0xd7, 0x1f, 0x2e, 0x4e, 0x96, 0x24, 0x3a,
+  0x0c, 0xb1, 0x0a, 0x34, 0x5d, 0xeb, 0x17, 0x19, 0xc8, 0x39, 0xaa, 0xe4,
+  0x3c, 0xbd, 0xce, 0xd6, 0x7d, 0x8e, 0x93, 0x16, 0xcd, 0x91, 0x38, 0x21,
+  0x62, 0x9e, 0x22, 0x9f, 0x54, 0x99, 0xc4, 0xb8, 0x8b, 0x52, 0xfb, 0xd9,
+  0x09, 0x57, 0xd3, 0x54, 0x66, 0x6f, 0x51, 0xa1, 0x76, 0xf2, 0x77, 0xd1,
+  0xca, 0x04, 0x16, 0xac, 0xde, 0xe1, 0xa7, 0xf2, 0x71, 0x55, 0xe9, 0x9c,
+  0x76, 0x51, 0xb2, 0xfe, 0x27, 0xf2, 0xd4, 0xaf, 0x6b, 0x37, 0xfb, 0x59,
+  0x8c, 0x65, 0x98, 0xa7, 0x82, 0xe2, 0xd4, 0xbe, 0x4b, 0xa9, 0xe3, 0xe3,
+  0xe7, 0x60, 0x0b, 0xc7, 0xb9, 0x32, 0xa2, 0x20, 0xab, 0x63, 0x35, 0x39,
+  0x39, 0x65, 0x30, 0x47, 0xea, 0xab, 0xe0, 0x3e, 0xd3, 0xe4, 0x44, 0xfa,
+  0xb7, 0x2f, 0x41, 0x19, 0xd6, 0x86, 0xb4, 0x6b, 0x2d, 0xa0, 0x52, 0x6c,
+  0xb0, 0xe9, 0x94, 0xe8, 0xce, 0xad, 0x2b, 0x8b, 0xc6, 0x38, 0x29, 0x89,
+  0x21, 0x1b, 0x65, 0x35, 0x0b, 0xeb, 0x77, 0x6e, 0xad, 0xec, 0x6f, 0xce,
+  0xc7, 0xe3, 0x02, 0x45, 0x07, 0x5a, 0x47, 0xbd, 0x6f, 0x76, 0x47, 0x21,
+  0xd9, 0x6b, 0xde, 0xb2, 0x7a, 0x7b, 0xef, 0x3f, 0x7b, 0x51, 0x5a, 0xe7,
+  0x25, 0x54, 0x74, 0x5e, 0x77, 0x1b, 0x60, 0x9c, 0xb1, 0x84, 0x67, 0xbd,
+  0x0e, 0xb1, 0xb4, 0x4b, 0x75, 0x91, 0xeb, 0x32, 0xea, 0x5b, 0xec, 0x7b,
+  0xa9, 0x0e, 0xc9, 0x21, 0x67, 0x5d, 0xf4, 0xdf, 0xe6, 0xe6, 0x1e, 0xa9,
+  0x99, 0x38, 0x80, 0x1d, 0x03, 0x4c, 0x55, 0xed, 0x0e, 0x63, 0x58, 0x3b,
+  0x44, 0xe3, 0x29, 0x40, 0xd2, 0xd9, 0x57, 0x6c, 0x70, 0xc7, 0xec, 0x89,
+  0x65, 0x1c, 0x53, 0x72, 0x8b, 0x3b, 0x8d, 0x21, 0x75, 0x2e, 0x0b, 0xa9,
+  0xf2, 0xc9, 0xc6, 0xb5, 0xa6, 0x62, 0x10, 0x0e, 0x27, 0x32, 0x3f, 0x9a,
+  0xce, 0xcf, 0x50, 0x1e, 0xd4, 0x29, 0x6d, 0xb1, 0xec, 0x07, 0x06, 0xa7,
+  0xa5, 0xeb, 0x61, 0xf4, 0x49, 0xd7, 0x0f, 0x6c, 0x3a, 0x65, 0x89, 0xce,
+  0x39, 0xca, 0xc2, 0x24, 0x34, 0x9c, 0x56, 0x32, 0x36, 0xcd, 0x0e, 0x3a,
+  0x43, 0x50, 0x8e, 0xf6, 0x25, 0x28, 0xc3, 0xd6, 0xc0, 0x80, 0x78, 0xf4,
+  0xb7, 0x1e, 0x45, 0x11, 0x8a, 0x52, 0xf2, 0xb2, 0x63, 0x31, 0x7d, 0xc0,
+  0x89, 0xe8, 0x11, 0xff, 0x2e, 0x64, 0x04, 0x49, 0xf2, 0x87, 0xbe, 0xe3,
+  0xc9, 0xde, 0x7c, 0xc8, 0x8c, 0x96, 0xed, 0x50, 0x28, 0x30, 0xa6, 0xd6,
+  0x22, 0xce, 0x1e, 0x2e, 0xff, 0x54, 0x97, 0x9d, 0x22, 0xe1, 0x0f, 0x7e,
+  0x0c, 0x92, 0x27, 0xdd, 0x68, 0x02, 0x44, 0x32, 0xbb, 0x28, 0xb2, 0x4f,
+  0x44, 0x7c, 0xb8, 0xbc, 0xb9, 0x50, 0xd1, 0xfe, 0xee, 0xe0, 0xe2, 0xf4,
+  0xf8, 0xf4, 0xab, 0x7d, 0xca, 0x10, 0xcb, 0xaa, 0x31, 0xd5, 0x2a, 0x4c,
+  0xfe, 0xba, 0x98, 0xe4, 0x63, 0x96, 0x15, 0x52, 0x03, 0xae, 0x45, 0x3c,
+  0x9c, 0x89, 0x9b, 0x75, 0xfa, 0x10, 0xca, 0x77, 0x01, 0xa2, 0x12, 0x6d,
+  0x72, 0x55, 0x5e, 0x2f, 0xec, 0xd4, 0x8f, 0xa1, 0x8e, 0x20, 0x58, 0x80,
+  0x40, 0x2a, 0xaa, 0xd2, 0x63, 0xd3, 0x12, 0xaf, 0x84, 0x51, 0x16, 0xde,
+  0x9e, 0x9c, 0x24, 0x21, 0xe3, 0x1c, 0x0a, 0x28, 0xb6, 0x0a, 0xd7, 0x73,
+  0x43, 0x66, 0xfb, 0xd7, 0xf9, 0x68, 0x0a, 0x9b, 0x8c, 0x14, 0x00, 0x2e,
+  0x4c, 0xe3, 0xc9, 0x3d, 0x63, 0xbe, 0x9a, 0xae, 0x74, 0x17, 0x19, 0x18,
+  0x59, 0xa0, 0x15, 0xb1, 0xc2, 0x79, 0x35, 0x81, 0x3d, 0x64, 0xc4, 0x64,
+  0x79, 0xd5, 0x90, 0x8a, 0xd4, 0xba, 0x4d, 0xdb, 0x8c, 0xef, 0xab, 0x22,
+  0x09, 0x37, 0x6c, 0xe9, 0xf8, 0x90, 0x08, 0x89, 0x5d, 0x82, 0xca, 0xc9,
+  0xec, 0x47, 0xd6, 0x0d, 0x51, 0x29, 0x20, 0x1a, 0x46, 0x9b, 0x64, 0xa9,
+  0x2d, 0x80, 0x58, 0x93, 0xbc, 0x0c, 0x05, 0xc6, 0x7d, 0x56, 0x65, 0xae,
+  0x68, 0x39, 0xd2, 0xc3, 0x8c, 0xb8, 0x1b, 0x24, 0xc3, 0xd2, 0x3c, 0x1f,
+  0x6a, 0x59, 0xb6, 0xa8, 0x4e, 0xab, 0x3e, 0x27, 0xfa, 0xe3, 0x80, 0x5e,
+  0xa8, 0x37, 0x80, 0xe8, 0x5c, 0x7b, 0xbc, 0x91, 0x82, 0x7e, 0xb4, 0xff,
+  0x47, 0x99, 0x55, 0x2a, 0xe8, 0x0b, 0x88, 0x00, 0xd1, 0x0e, 0x59, 0xef,
+  0x1b, 0x81, 0xba, 0x4e, 0x33, 0x8b, 0x32, 0x83, 0x5e, 0x4b, 0x8f, 0x14,
+  0xcb, 0xf2, 0x61, 0xd6, 0xdd, 0x01, 0x47, 0x4b, 0x90, 0x78, 0xd4, 0xfe,
+  0xa9, 0xd8, 0x9e, 0x9e, 0xff, 0x54, 0x2a, 0x41, 0xd8, 0xb0, 0x2a, 0x93,
+  0xa0, 0x67, 0xa4, 0x65, 0x06, 0xa1, 0xf2, 0x33, 0x57, 0xdf, 0x87, 0xc8,
+  0x23, 0xbc, 0x1c, 0x37, 0xff, 0x65, 0xb9, 0x70, 0x7a, 0xce, 0xc1, 0x90,
+  0x23, 0x69, 0xa5, 0x09, 0xa2, 0x52, 0x57, 0x83, 0xad, 0x28, 0xd0, 0x87,
+  0xfb, 0x20, 0x77, 0x52, 0x6d, 0xf4, 0xeb, 0xc9, 0xa3, 0x82, 0x4f, 0xab,
+  0xa8, 0x74, 0x6f, 0x69, 0x2c, 0xa8, 0xf5, 0x2c, 0x69, 0x53, 0x69, 0xe2,
+  0x15, 0xbf, 0xf6, 0x83, 0x9a, 0x12, 0x2b, 0x45, 0x4a, 0x61, 0xa4, 0x39,
+  0x49, 0xe8, 0x90, 0x98, 0xd5, 0x52, 0x21, 0x2c, 0xf1, 0x9b, 0xbc, 0xb8,
+  0x2b, 0xf1, 0x1b, 0x89, 0x39, 0x05, 0x09, 0xaf, 0x3e, 0x75, 0x54, 0x6c,
+  0x22, 0xfc, 0x59, 0x55, 0x27, 0x8d, 0xa2, 0xe0, 0xcd, 0x58, 0x98, 0x79,
+  0xbd, 0x4e, 0x1c, 0xbf, 0xba, 0x40, 0x0f, 0x22, 0x57, 0x23, 0x1f, 0x26,
+  0xda, 0xbc, 0x3d, 0x5b, 0x33, 0xd2, 0xbc, 0x38, 0xa5, 0x9a, 0xd6, 0x1e,
+  0xe3, 0xba, 0x5e, 0x38, 0x72, 0xdf, 0xe4, 0xd6, 0xff, 0xb3, 0xfc, 0x26,
+  0x19, 0xb4, 0x2b, 0x52, 0xb5, 0x6c, 0x58, 0x8a, 0x34, 0xe3, 0x20, 0x49,
+  0x3a, 0x4c, 0x59, 0x0a, 0xf7, 0xe7, 0x32, 0x61, 0x9b, 0x40, 0xa9, 0x41,
+  0x32, 0xeb, 0x12, 0x0d, 0xa2, 0x5d, 0x8a, 0x48, 0xb2, 0x15, 0xba, 0x67,
+  0xcf, 0xa3, 0x08, 0x6a, 0xd1, 0x73, 0xb5, 0xef, 0x36, 0xee, 0x8f, 0xbd,
+  0x9c, 0x13, 0x5b, 0xbc, 0x22, 0x06, 0x73, 0xe0, 0xab, 0x3b, 0x3e, 0x3d,
+  0x02, 0xf5, 0xf4, 0x27, 0x25, 0x7a, 0xd9, 0x31, 0xf8, 0xd3, 0xf1, 0x38,
+  0x62, 0xd7, 0xc0, 0x74, 0x2a, 0xda, 0x61, 0x0d, 0xf4, 0x34, 0x6f, 0x20,
+  0x40, 0xfe, 0xb0, 0xb7, 0xb3, 0x4c, 0xc8, 0x53, 0x43, 0x5a, 0x42, 0x80,
+  0x4e, 0x63, 0x6d, 0x6d, 0x30, 0x5c, 0x83, 0x2e, 0x63, 0x94, 0xee, 0x90,
+  0xc5, 0x9c, 0x7c, 0x75, 0x7d, 0x94, 0xa0, 0xaf, 0x97, 0xcd, 0xff, 0xe0,
+  0x5f, 0x51, 0xdb, 0xc6, 0xc9, 0xaf, 0x0b, 0x6f, 0x8d, 0xa9, 0xa1, 0x18,
+  0xe2, 0x4d, 0x65, 0x89, 0xfa, 0x4a, 0x3c, 0xb5, 0xdd, 0xe9, 0x0c, 0xb0,
+  0xed, 0x51, 0xc4, 0x44, 0x0e, 0x27, 0xb5, 0x16, 0x9a, 0xb0, 0xe9, 0x6c,
+  0xee, 0xca, 0xd2, 0xe8, 0xf1, 0x12, 0x64, 0x8e, 0x9e, 0x02, 0x05, 0xb5,
+  0x58, 0xe0, 0x2e, 0x7f, 0x31, 0xdc, 0xb4, 0x9e, 0x28, 0x65, 0x93, 0x3c,
+  0x15, 0x04, 0x29, 0xa6, 0x84, 0xbe, 0xe5, 0x8d, 0xf4, 0x7b, 0x1e, 0x29,
+  0x03, 0xd4, 0x5e, 0x8b, 0x75, 0xbb, 0xcc, 0x1e, 0xf3, 0xd4, 0xc6, 0xb1,
+  0xb9, 0x2f, 0xcc, 0x89, 0xd6, 0x37, 0x85, 0x03, 0x44, 0xe4, 0x40, 0x27,
+  0xc3, 0x2f, 0xd0, 0xcf, 0xe8, 0x88, 0xb7, 0x31, 0x73, 0x36, 0x7a, 0x7c,
+  0xd9, 0x42, 0x74, 0x76, 0x9a, 0x8f, 0x9f, 0x79, 0x39, 0x6b, 0x2d, 0x34,
+  0xa3, 0xbc, 0xe0, 0x8a, 0x36, 0x8b, 0xd5, 0xb6, 0xc9, 0xa7, 0x54, 0xaf,
+  0xf6, 0x3a, 0x82, 0x5e, 0xfb, 0xea, 0xe8, 0x92, 0x5c, 0x03, 0x17, 0x50,
+  0xbe, 0x6d, 0x07, 0xe1, 0x60, 0x91, 0xab, 0x36, 0xb5, 0xea, 0x80, 0x50,
+  0x07, 0x72, 0xb1, 0xd1, 0x4f, 0xf3, 0x69, 0x5a, 0x44, 0x93, 0x7e, 0x8c,
+  0x0e, 0x45, 0xf5, 0x53, 0x4b, 0x47, 0x12, 0xa6, 0x16, 0xbb, 0x47, 0x52,
+  0xcd, 0x39, 0xfc, 0xe7, 0x1f, 0x2e, 0xc5, 0x3b, 0xf2, 0xf6, 0xe8, 0xe4,
+  0xe8, 0xf2, 0xa8, 0x6b, 0x2d, 0x8e, 0x98, 0xf4, 0x08, 0xd9, 0x1e, 0x4d,
+  0x36, 0xbe, 0x29, 0xca, 0x69, 0x79, 0x9d, 0x4b, 0x09, 0xa9, 0xe4, 0xbb,
+  0x6c, 0xf4, 0xf6, 0xe0, 0x5b, 0xba, 0xc1, 0xc8, 0xd3, 0x71, 0x7e, 0x71,
+  0x76, 0xfe, 0xee, 0xf8, 0xf4, 0x6d, 0x2f, 0x39, 0x3c, 0x3b, 0xff, 0x4b,
+  0x2f, 0x79, 0x7f, 0xf6, 0xed, 0x51, 0x04, 0xe5, 0x4b, 0xac, 0xa1, 0x91,
+  0x12, 0xb6, 0x52, 0xc8, 0xc5, 0x19, 0x7b, 0x05, 0x3b, 0xca, 0x3d, 0xb1,
+  0x75, 0x00, 0xb4, 0x02, 0xea, 0x31, 0x63, 0xf7, 0x9a, 0xa9, 0x33, 0xfb,
+  0xf5, 0xeb, 0xa3, 0x83, 0xb7, 0xbd, 0x80, 0x32, 0x92, 0x98, 0xa7, 0xcd,
+  0xc7, 0x68, 0x7c, 0x76, 0xd0, 0x20, 0x1a, 0x64, 0x7d, 0x17, 0x77, 0x12,
+  0x87, 0x56, 0x18, 0x9e, 0x69, 0x64, 0x07, 0xca, 0x6e, 0x4c, 0x96, 0x45,
+  0xec, 0x85, 0xa2, 0x74, 0x69, 0xd1, 0x36, 0x2f, 0xf3, 0x80, 0xd4, 0x03,
+  0x55, 0xec, 0xa4, 0xc4, 0x26, 0xe7, 0xf6, 0x27, 0x00, 0x97, 0xcb, 0xde,
+  0xb0, 0x45, 0x6e, 0x22, 0x5c, 0x09, 0xd2, 0x65, 0xe6, 0xdc, 0xb5, 0x7c,
+  0x96, 0xf0, 0x7f, 0xb0, 0xcf, 0x2b, 0x95, 0x92, 0x37, 0xa0, 0x07, 0x27,
+  0xd8, 0xc9, 0x90, 0x99, 0x15, 0x85, 0x50, 0x2c, 0x0e, 0xa7, 0x57, 0xb5,
+  0x4e, 0xf8, 0x2b, 0x25, 0xcf, 0x9f, 0xe6, 0xcf, 0x7d, 0x50, 0x39, 0xdc,
+  0xbf, 0xe7, 0x89, 0x8d, 0xe2, 0x7c, 0xb9, 0x08, 0xc5, 0x95, 0xd9, 0x9a,
+  0x19, 0x03, 0x7a, 0x78, 0xa9, 0xac, 0x39, 0x9a, 0xf4, 0x8f, 0xd5, 0x18,
+  0x5e, 0x75, 0xad, 0x5b, 0x26, 0x1f, 0x71, 0x08, 0x30, 0xbb, 0x80, 0xfa,
+  0x4a, 0xda, 0xa2, 0xc2, 0xb7, 0xcc, 0x69, 0xa0, 0x11, 0x2d, 0x53, 0x97,
+  0x59, 0x4a, 0xf6, 0xea, 0xa0, 0xbd, 0x59, 0xe1, 0x9c, 0xb7, 0xc0, 0x87,
+  0x12, 0x16, 0x66, 0x16, 0xf6, 0x27, 0x23, 0x4e, 0x0a, 0xf1, 0xc5, 0x25,
+  0x14, 0xf4, 0xe9, 0xb3, 0x05, 0xe7, 0xa3, 0x52, 0xd5, 0x2e, 0x14, 0x8d,
+  0x48, 0xfa, 0x10, 0xaf, 0x34, 0xda, 0x2a, 0xd4, 0x67, 0x4f, 0xfa, 0xb3,
+  0x9d, 0x4f, 0xce, 0xbb, 0x4b, 0x77, 0x58, 0x9d, 0xf4, 0x85, 0xbf, 0x71,
+  0x66, 0x04, 0x6f, 0xe8, 0xd7, 0xd8, 0x7c, 0xb7, 0x44, 0x38, 0xfa, 0xfe,
+  0x42, 0x59, 0x0c, 0x4f, 0x4c, 0x9d, 0x1c, 0x9b, 0x23, 0x11, 0x49, 0x1b,
+  0x9f, 0x94, 0x28, 0x47, 0x87, 0x50, 0x38, 0x6e, 0x73, 0xcc, 0xbe, 0x69,
+  0x2b, 0xfc, 0x30, 0xd5, 0x67, 0x8c, 0x7e, 0x19, 0x85, 0x1b, 0x1f, 0xf9,
+  0x74, 0xb0, 0x66, 0x17, 0x47, 0x97, 0x17, 0x83, 0x64, 0xd3, 0xe7, 0x07,
+  0x7b, 0x39, 0xd8, 0x09, 0xc3, 0x05, 0x54, 0x1a, 0x32, 0xfa, 0x55, 0xd4,
+  0x8c, 0x5c, 0xf2, 0x55, 0xc8, 0x07, 0xfa, 0x6e, 0x88, 0x73, 0xf5, 0x58,
+  0x10, 0x76, 0x62, 0xdf, 0xf3, 0x0b, 0x50, 0xb6, 0xbe, 0x47, 0xbf, 0x58,
+  0x31, 0xca, 0xaf, 0x8f, 0x4e, 0x22, 0xc4, 0xe7, 0xdf, 0x5e, 0xbc, 0xfb,
+  0x4b, 0x7b, 0x94, 0xcf, 0x9e, 0x47, 0xbe, 0xfa, 0x6b, 0xba, 0x72, 0xb3,
+  0xba, 0x9c, 0xde, 0x65, 0x9c, 0xcc, 0x80, 0x5c, 0x86, 0x7d, 0x73, 0x0d,
+  0x10, 0x16, 0xfa, 0x8b, 0x90, 0xd7, 0x12, 0xce, 0x00, 0x3b, 0x42, 0x79,
+  0x4e, 0x4c, 0x3d, 0x67, 0xeb, 0x71, 0xc6, 0x08, 0xdf, 0x13, 0x9c, 0xdc,
+  0x30, 0x4f, 0xf3, 0xc0, 0xef, 0xf9, 0x81, 0x45, 0x07, 0x8d, 0xa3, 0xe7,
+  0x79, 0x26, 0x55, 0x6d, 0xe0, 0x03, 0xa3, 0xa7, 0x74, 0xb3, 0xde, 0x92,
+  0xca, 0xdd, 0xcb, 0xa2, 0xc9, 0xda, 0x19, 0x24, 0xe6, 0x50, 0xfd, 0x5c,
+  0x51, 0xab, 0xdd, 0x25, 0x5b, 0xe8, 0xa5, 0x21, 0x43, 0x9e, 0xb8, 0x97,
+  0xc2, 0x7b, 0x76, 0x24, 0x97, 0xf2, 0x00, 0xce, 0x30, 0xc4, 0x70, 0xa1,
+  0xe9, 0xe3, 0x42, 0x41, 0x05, 0xb2, 0xac, 0x19, 0x6f, 0x73, 0x7d, 0x71,
+  0x9f, 0x1f, 0x7e, 0x89, 0x9b, 0xa5, 0x2c, 0x5a, 0x10, 0x3b, 0xba, 0x1c,
+  0xd8, 0xcb, 0xe9, 0x27, 0xbb, 0x39, 0xce, 0x7a, 0xf6, 0x5a, 0x48, 0x46,
+  0x08, 0x75, 0x23, 0x12, 0xee, 0x6d, 0xd3, 0xc4, 0x7b, 0x09, 0x78, 0x5a,
+  0xc3, 0x3b, 0x90, 0x82, 0x2e, 0x49, 0x2b, 0x62, 0xc4, 0x43, 0x28, 0xeb,
+  0x06, 0xb2, 0x04, 0x95, 0xed, 0x9b, 0x40, 0xdd, 0x41, 0xfe, 0xc2, 0xc7,
+  0x1c, 0x8a, 0xa4, 0xce, 0xa1, 0x07, 0xcc, 0x36, 0xa9, 0x26, 0xe3, 0x1c,
+  0x75, 0x87, 0x97, 0x24, 0x1a, 0x71, 0xa4, 0x5f, 0x5b, 0x26, 0xb9, 0xde,
+  0x66, 0x09, 0x6e, 0x8f, 0x46, 0x9d, 0xbd, 0xfd, 0xe7, 0xa1, 0xc3, 0x3a,
+  0x9f, 0xdf, 0x3d, 0x87, 0x87, 0xe0, 0x65, 0x8f, 0xff, 0xf5, 0x92, 0xb9,
+  0x73, 0x9a, 0xb6, 0xfb, 0x9a, 0x33, 0x1f, 0xd9, 0x24, 0x38, 0x3e, 0xd7,
+  0xc4, 0xc6, 0xc1, 0x53, 0x71, 0x9c, 0x4e, 0x8b, 0x27, 0x0f, 0xc1, 0x04,
+  0x71, 0x09, 0xf3, 0x23, 0xd9, 0xfb, 0x0c, 0x39, 0x09, 0xb7, 0x95, 0x6c,
+  0xbd, 0x95, 0xec, 0xb5, 0xbb, 0x83, 0x67, 0xed, 0x03, 0xda, 0x54, 0x0f,
+  0xc8, 0x4b, 0x30, 0x56, 0x5e, 0x64, 0x2f, 0x1c, 0x17, 0x5d, 0xd3, 0x4d,
+  0x36, 0x3d, 0x05, 0x59, 0xf8, 0xc7, 0xe6, 0x80, 0x29, 0x10, 0x21, 0x39,
+  0xa2, 0xe4, 0x89, 0x8b, 0xa3, 0x77, 0x1f, 0x86, 0x47, 0x6f, 0xc1, 0xba,
+  0xd3, 0xd5, 0x08, 0x29, 0xfc, 0x92, 0xd3, 0x72, 0xb1, 0x93, 0xb3, 0x29,
+  0x59, 0x55, 0x90, 0x8e, 0xb4, 0x4b, 0xbb, 0x78, 0x45, 0x8d, 0x9b, 0xd2,
+  0xa8, 0xf3, 0x21, 0xd8, 0x9d, 0x2f, 0x67, 0x79, 0xf7, 0x67, 0xa4, 0xe0,
+  0xf3, 0xa8, 0x27, 0x19, 0x91, 0xd1, 0xbf, 0xe6, 0xa0, 0x7a, 0x20, 0x90,
+  0x7c, 0xe2, 0xfa, 0x7a, 0x9a, 0x65, 0x73, 0xa5, 0xe7, 0x49, 0x67, 0xe5,
+  0xa2, 0x60, 0x2f, 0x8b, 0x59, 0x21, 0x75, 0x2c, 0xc0, 0x91, 0x85, 0x76,
+  0xf9, 0x46, 0x8e, 0x8e, 0x9c, 0xec, 0x68, 0xb2, 0x1f, 0x09, 0xc9, 0xaa,
+  0xd9, 0xd0, 0x24, 0xdc, 0xdc, 0xb4, 0xc8, 0xbc, 0x24, 0x9b, 0x14, 0xc5,
+  0xf0, 0xf5, 0xb6, 0x25, 0xa5, 0x15, 0x50, 0x8d, 0xcb, 0xe8, 0xbc, 0xdc,
+  0x97, 0x74, 0x7a, 0x5d, 0x1a, 0x63, 0xf7, 0x66, 0x66, 0xd3, 0xb0, 0x2a,
+  0x80, 0x28, 0xea, 0xad, 0x6e, 0xd1, 0x9c, 0x40, 0x82, 0x4c, 0x1f, 0x38,
+  0xa0, 0x96, 0x71, 0x7a, 0x2a, 0xed, 0x7e, 0x9e, 0x26, 0xd8, 0x5d, 0x14,
+  0x6a, 0x60, 0x81, 0x35, 0x94, 0x84, 0x52, 0xcc, 0x05, 0xcf, 0x60, 0xb8,
+  0x11, 0xff, 0x9e, 0x55, 0x65, 0xd7, 0x32, 0x54, 0x7d, 0x4c, 0x7b, 0xee,
+  0x77, 0xfc, 0x5f, 0x59, 0xbf, 0x60, 0x77, 0x2f, 0x76, 0x02, 0x66, 0xe9,
+  0x27, 0x58, 0xbb, 0x4b, 0xb7, 0xc3, 0x25, 0x5b, 0xa7, 0xc0, 0x1c, 0xd1,
+  0x83, 0x92, 0x4c, 0x47, 0x44, 0xe1, 0x4d, 0xe2, 0x63, 0xee, 0x19, 0xeb,
+  0x60, 0x97, 0x5b, 0x0c, 0xe2, 0x00, 0x54, 0xc2, 0xeb, 0x62, 0x7b, 0x0d,
+  0x97, 0x43, 0x4a, 0xc3, 0x24, 0xdd, 0x7c, 0x93, 0x59, 0xda, 0xf1, 0xb9,
+  0x2d, 0xfa, 0xf1, 0xb4, 0xa4, 0x80, 0x07, 0x1b, 0xf4, 0xf8, 0x7a, 0x58,
+  0x5c, 0x91, 0x34, 0xbf, 0x8a, 0x76, 0xa1, 0x5a, 0x2a, 0xec, 0x5e, 0x02,
+  0xdd, 0x34, 0x32, 0x54, 0xf2, 0xb1, 0x38, 0x4f, 0xb5, 0x1e, 0x01, 0x46,
+  0xc1, 0x6f, 0x06, 0x82, 0x44, 0xdb, 0xc9, 0xb8, 0x81, 0x5e, 0x9b, 0x5d,
+  0x4d, 0x3a, 0x8d, 0x04, 0x30, 0x86, 0x88, 0xdf, 0xc0, 0x5b, 0x23, 0xf9,
+  0xbf, 0x11, 0xa3, 0x97, 0xad, 0x07, 0x72, 0x5a, 0x20, 0xa1, 0x82, 0xc6,
+  0x03, 0xf3, 0x21, 0x2d, 0xfc, 0xce, 0x62, 0x05, 0x4c, 0x23, 0x79, 0x39,
+  0x41, 0x2a, 0x06, 0x73, 0x65, 0xa7, 0x61, 0xea, 0x38, 0x11, 0x28, 0x48,
+  0x6f, 0x36, 0xc8, 0xe9, 0xf1, 0x29, 0x9f, 0x2d, 0x66, 0x78, 0xbd, 0x27,
+  0x8a, 0xf5, 0x0c, 0x8a, 0xb5, 0x2e, 0xeb, 0x00, 0x31, 0xb3, 0x86, 0x8f,
+  0x70, 0x77, 0xef, 0xdb, 0x08, 0x16, 0xb6, 0xad, 0xd4, 0x05, 0xa5, 0xb7,
+  0x98, 0x65, 0x17, 0x0b, 0xf5, 0x7f, 0x7c, 0x87, 0x26, 0xaf, 0xcd, 0x8d,
+  0xfd, 0x45, 0x24, 0x63, 0x22, 0x26, 0x3e, 0xf2, 0x5a, 0xb0, 0x93, 0xd9,
+  0xc4, 0xb3, 0x0f, 0x78, 0xc7, 0xd1, 0x4d, 0xcb, 0xcb, 0xb4, 0x54, 0x46,
+  0xb9, 0x0a, 0x13, 0xfc, 0x69, 0x0c, 0xd4, 0xf9, 0x91, 0xf8, 0x62, 0x92,
+  0x2d, 0x4f, 0x2b, 0x27, 0xe4, 0xc3, 0x01, 0x73, 0xbb, 0x88, 0x8a, 0x96,
+  0xc2, 0x61, 0x3e, 0xbf, 0x23, 0x41, 0x76, 0x31, 0x5a, 0xc8, 0xfd, 0x26,
+  0xb3, 0xac, 0x3e, 0x8a, 0x36, 0x5d, 0x70, 0x5b, 0xe4, 0x91, 0x28, 0xeb,
+  0xdc, 0x22, 0x9c, 0x1a, 0xce, 0x9c, 0x20, 0xfb, 0x66, 0x42, 0x64, 0xed,
+  0x7a, 0x89, 0xe6, 0x3b, 0x24, 0xc9, 0xf3, 0x4f, 0x9f, 0xc2, 0xcb, 0xd2,
+  0xd9, 0x39, 0x5c, 0x1b, 0x94, 0x8d, 0xa0, 0x17, 0x9f, 0x3a, 0x46, 0xd0,
+  0x20, 0x5a, 0xc1, 0x53, 0xae, 0x06, 0x92, 0x8e, 0xa3, 0x92, 0x5d, 0xf9,
+  0x3c, 0x5b, 0x69, 0x64, 0x1e, 0x59, 0x28, 0xdc, 0xa7, 0x79, 0x13, 0x49,
+  0x05, 0x11, 0x54, 0x97, 0x24, 0xcb, 0xba, 0x60, 0x8b, 0xf9, 0xb3, 0xb9,
+  0x31, 0x4a, 0x1d, 0xcd, 0xa1, 0x4e, 0x90, 0x36, 0x68, 0xe6, 0x6d, 0xc1,
+  0x4e, 0xdc, 0x60, 0x9e, 0xe8, 0x2b, 0x3c, 0xed, 0x74, 0x9a, 0xcc, 0x55,
+  0x95, 0xa3, 0x58, 0x2c, 0x9f, 0xe9, 0x3a, 0xd9, 0x35, 0xd3, 0x9f, 0x17,
+  0x0b, 0x82, 0x76, 0xf1, 0x64, 0xe3, 0x9b, 0x96, 0x4d, 0x23, 0x32, 0xed,
+  0x53, 0x80, 0x06, 0x35, 0xad, 0x97, 0x0e, 0x5e, 0xed, 0x05, 0x19, 0xf8,
+  0x78, 0xa0, 0x28, 0x81, 0x35, 0xd8, 0xfd, 0x0b, 0x36, 0xa2, 0x0d, 0xda,
+  0xf2, 0x00, 0x7a, 0xa5, 0x66, 0x9f, 0xcc, 0x6c, 0x33, 0xeb, 0xb5, 0xbb,
+  0xd1, 0xdc, 0x6d, 0x36, 0xf0, 0x18, 0x68, 0x23, 0x08, 0x82, 0x96, 0xfc,
+  0xb6, 0x0c, 0xfb, 0x10, 0x71, 0x65, 0x23, 0x67, 0x91, 0xb3, 0x4a, 0x25,
+  0xe8, 0xf4, 0xdf, 0xe0, 0x4c, 0xd7, 0x69, 0x3d, 0xed, 0xe7, 0x5d, 0x31,
+  0x7e, 0x04, 0x5c, 0x92, 0xc5, 0x14, 0xd8, 0x5d, 0x68, 0x9a, 0x18, 0x1e,
+  0x0c, 0x4f, 0x3a, 0x7c, 0x36, 0x2b, 0x49, 0xf5, 0x76, 0xdb, 0x1a, 0xcf,
+  0x13, 0x79, 0xb3, 0xd4, 0x91, 0xdc, 0xca, 0x15, 0x5d, 0x45, 0x99, 0xc5,
+  0x4c, 0x6c, 0xcb, 0xca, 0x64, 0xd4, 0xfb, 0xf8, 0xb8, 0xe3, 0x17, 0x0b,
+  0xba, 0xc2, 0xb4, 0x2c, 0x40, 0x7f, 0x73, 0x3d, 0x93, 0x24, 0xc6, 0xee,
+  0x81, 0x67, 0xb6, 0x05, 0x4a, 0xf0, 0x58, 0x3c, 0x8e, 0xa9, 0xb8, 0x74,
+  0xe4, 0x43, 0x52, 0xd3, 0xa9, 0x28, 0x4f, 0x3f, 0xc6, 0x42, 0x62, 0xbd,
+  0xd9, 0xa2, 0x4a, 0xd6, 0x78, 0x9a, 0x60, 0x05, 0x4d, 0x8f, 0x2f, 0x2c,
+  0x2b, 0xa8, 0xa8, 0x0d, 0x17, 0x9d, 0x27, 0xaa, 0xc7, 0x90, 0x18, 0x92,
+  0x03, 0x36, 0x57, 0x5c, 0x52, 0x45, 0x7b, 0xe0, 0xb5, 0xd9, 0x15, 0x90,
+  0xf9, 0x54, 0x60, 0x49, 0x7f, 0x5b, 0xe4, 0xe6, 0x76, 0xa2, 0x04, 0x8e,
+  0x41, 0xf2, 0x96, 0xe1, 0x25, 0x52, 0x97, 0x84, 0xab, 0x14, 0xa1, 0x92,
+  0x11, 0x83, 0x55, 0x45, 0x41, 0x34, 0x1d, 0x08, 0x7c, 0xe9, 0xa6, 0x43,
+  0x74, 0x12, 0xa1, 0xba, 0x9a, 0x53, 0x75, 0x48, 0xdd, 0x9e, 0x99, 0x93,
+  0x0e, 0xd3, 0x8c, 0x0b, 0x52, 0x37, 0x40, 0x15, 0x48, 0xf0, 0x51, 0x51,
+  0xc1, 0x00, 0xbe, 0xd5, 0xb7, 0xa1, 0x19, 0xd8, 0x6b, 0xb1, 0xd1, 0xc3,
+  0x2c, 0x12, 0x1b, 0xa0, 0xa1, 0x62, 0x06, 0x45, 0x3a, 0xdd, 0xe6, 0x72,
+  0xe4, 0x46, 0xcc, 0x4c, 0xa9, 0x9f, 0xd4, 0x92, 0x56, 0xde, 0xe8, 0xce,
+  0x4d, 0x13, 0xe3, 0xba, 0xe0, 0x15, 0x6a, 0x2d, 0x11, 0x7b, 0x23, 0xad,
+  0xd1, 0x21, 0x29, 0x10, 0xb9, 0x5f, 0x9e, 0x5d, 0xc4, 0x47, 0xc8, 0x69,
+  0xe2, 0xcf, 0x16, 0x99, 0x87, 0x3c, 0x5e, 0xcc, 0x65, 0x6b, 0xdd, 0x56,
+  0xa5, 0x5e, 0xdf, 0xd1, 0x7a, 0x99, 0x8d, 0x36, 0x2a, 0x6b, 0x25, 0xc4,
+  0x33, 0x83, 0x34, 0xaf, 0xb7, 0xce, 0x13, 0x18, 0x84, 0x7e, 0x26, 0x49,
+  0x03, 0x17, 0x41, 0xf3, 0x28, 0x1a, 0x56, 0xd5, 0x3e, 0x0b, 0x2b, 0xc7,
+  0xfd, 0x6c, 0x7e, 0x06, 0x9f, 0x08, 0xcf, 0x51, 0xd0, 0x90, 0x21, 0x69,
+  0x51, 0x54, 0x02, 0x8c, 0x68, 0x51, 0x15, 0xb0, 0x9e, 0xf9, 0x10, 0xa9,
+  0x14, 0x62, 0x36, 0xd3, 0x42, 0x72, 0xae, 0xc7, 0x53, 0x23, 0xec, 0x23,
+  0xb6, 0xa6, 0x16, 0x8a, 0x21, 0x16, 0xa3, 0x5e, 0x57, 0x9c, 0xd6, 0x0b,
+  0x52, 0x3d, 0xa6, 0x0b, 0xfa, 0x32, 0x13, 0x00, 0x59, 0x02, 0x1a, 0x4d,
+  0x15, 0x8d, 0x92, 0x36, 0x59, 0x06, 0x19, 0x3a, 0xa3, 0x1e, 0x7f, 0xd5,
+  0x42, 0x6b, 0x4a, 0x29, 0xb5, 0x53, 0x97, 0xe2, 0x63, 0xb0, 0xa4, 0x77,
+  0x64, 0x10, 0xf6, 0xfc, 0x3a, 0x89, 0xbe, 0xf5, 0x4d, 0xc0, 0x78, 0xed,
+  0x4e, 0xab, 0x08, 0x62, 0x1a, 0x23, 0xe5, 0xb1, 0xe1, 0xa5, 0x56, 0xcf,
+  0xf4, 0xee, 0xd0, 0xdc, 0x49, 0x20, 0x55, 0x99, 0xc4, 0x49, 0xd7, 0xdf,
+  0xd8, 0xd6, 0xdd, 0xc1, 0x76, 0x0b, 0x24, 0xb2, 0xda, 0x60, 0xab, 0x1c,
+  0xca, 0xd9, 0x6b, 0x75, 0x49, 0x95, 0x86, 0x08, 0xe6, 0xf1, 0x29, 0xa5,
+  0x11, 0x5b, 0xc5, 0x10, 0xff, 0x95, 0xf7, 0xe1, 0x8b, 0x76, 0xd1, 0x00,
+  0x61, 0xe4, 0xfa, 0x45, 0x07, 0x2a, 0x7d, 0xda, 0x89, 0x5a, 0x82, 0x4f,
+  0xfe, 0xbf, 0xf3, 0x44, 0xa5, 0xc9, 0xd3, 0xce, 0x54, 0xda, 0x3d, 0x54,
+  0x91, 0x82, 0x96, 0x4b, 0x7b, 0xfc, 0x2b, 0x9e, 0x32, 0x3e, 0x66, 0x3f,
+  0xeb, 0x9c, 0xd9, 0xc2, 0xa3, 0xff, 0x17, 0x9f, 0xb2, 0xcf, 0x3b, 0x5a,
+  0x20, 0xe8, 0xed, 0xfa, 0xd7, 0xe6, 0x0e, 0x9c, 0xe7, 0x46, 0x2d, 0xeb,
+  0x32, 0x65, 0x1c, 0xd4, 0x49, 0x0b, 0x42, 0xf4, 0xd5, 0x70, 0xd8, 0x3f,
+  0x38, 0x3f, 0xf6, 0x49, 0x50, 0x85, 0xbd, 0x8f, 0xd3, 0x80, 0x38, 0x27,
+  0x95, 0xce, 0x18, 0x1e, 0x08, 0xf0, 0x56, 0xc8, 0xb2, 0xa7, 0xf4, 0xf8,
+  0xdd, 0x57, 0x2f, 0x77, 0xcd, 0x12, 0x3e, 0x30, 0xc5, 0x94, 0xbc, 0xfc,
+  0x7c, 0xf0, 0x6c, 0x9b, 0x0a, 0x1a, 0xe7, 0x8d, 0x3a, 0xa7, 0xe1, 0x18,
+  0x97, 0xe6, 0xcd, 0xd9, 0x8c, 0xc4, 0x7f, 0x79, 0x33, 0x9c, 0x1e, 0x1d,
+  0x26, 0x0c, 0x4b, 0x01, 0xe7, 0x50, 0x02, 0x90, 0x3c, 0x21, 0xee, 0x25,
+  0x8a, 0x86, 0x28, 0x25, 0x1d, 0x7c, 0x89, 0xaa, 0xf3, 0xd4, 0x06, 0xa6,
+  0x43, 0x30, 0x1d, 0xaa, 0xf8, 0x22, 0x29, 0xb5, 0xb0, 0x1d, 0xa1, 0xc3,
+  0xc9, 0x3a, 0xb0, 0xcc, 0x0b, 0xf5, 0x31, 0x44, 0x98, 0x7b, 0x53, 0xf2,
+  0x44, 0xd6, 0x58, 0xaa, 0xa6, 0xb6, 0x7c, 0x7d, 0x54, 0xd9, 0x5e, 0xa2,
+  0xae, 0x3b, 0x57, 0x5a, 0xa0, 0x95, 0xcb, 0xe9, 0x55, 0x50, 0x0d, 0xb9,
+  0x03, 0xc6, 0x33, 0xab, 0x40, 0x5f, 0xfd, 0x6d, 0xb2, 0xd2, 0x13, 0x1d,
+  0xd5, 0xfe, 0x23, 0xea, 0x9b, 0xa7, 0xe4, 0x6b, 0xd7, 0x45, 0xaa, 0x88,
+  0x6e, 0xbf, 0x6c, 0x40, 0xa2, 0xd0, 0x77, 0xed, 0x56, 0xde, 0x02, 0x0b,
+  0xa9, 0x77, 0x3b, 0xd9, 0xf6, 0x9a, 0xb2, 0xed, 0x47, 0x7e, 0xa6, 0xad,
+  0x47, 0x80, 0xc7, 0xf4, 0x31, 0x6e, 0xcb, 0x58, 0xbf, 0x53, 0xe9, 0x95,
+  0xf7, 0x9d, 0xf0, 0x97, 0x08, 0x3a, 0x90, 0x68, 0xa8, 0x43, 0x6c, 0xb9,
+  0x38, 0xf8, 0xbc, 0x2e, 0xd8, 0x68, 0xf8, 0x2c, 0x6d, 0xc6, 0xca, 0x48,
+  0x65, 0x84, 0x5f, 0x3e, 0x4f, 0xa7, 0xc9, 0x13, 0x70, 0x83, 0xb1, 0xc5,
+  0xa7, 0x0b, 0x90, 0xad, 0xb4, 0x47, 0xae, 0xc2, 0x78, 0xbd, 0x66, 0x99,
+  0xa2, 0x64, 0x13, 0x91, 0xa0, 0xcc, 0x27, 0x56, 0xd2, 0x60, 0x5c, 0x68,
+  0xe3, 0x23, 0xac, 0x40, 0x1f, 0xdd, 0x1a, 0x3c, 0xa5, 0x24, 0x6f, 0x4f,
+  0xaa, 0xef, 0x5a, 0x1e, 0xc4, 0x90, 0xb1, 0xe1, 0xff, 0x86, 0x4b, 0xf4,
+  0x45, 0x62, 0xd7, 0xea, 0x29, 0x77, 0x29, 0xd3, 0x8a, 0x72, 0x45, 0xaa,
+  0x80, 0x31, 0xc3, 0x29, 0xac, 0xff, 0xef, 0x2e, 0xfd, 0xff, 0xa5, 0xbb,
+  0xf4, 0x17, 0x9f, 0x52, 0x65, 0x4a, 0xeb, 0x2b, 0xae, 0xc9, 0x9e, 0x4d,
+  0x77, 0x1a, 0x63, 0xe0, 0xb6, 0xe9, 0xc3, 0xd3, 0x8f, 0xa8, 0x77, 0x42,
+  0x93, 0x70, 0x2b, 0xfc, 0xdf, 0x71, 0x44, 0x9f, 0x74, 0x32, 0xff, 0x9f,
+  0xe5, 0xf8, 0xdf, 0xed, 0x1c, 0x2e, 0xd7, 0x4e, 0x36, 0xcd, 0x26, 0xbb,
+  0x27, 0xde, 0x6e, 0x66, 0xce, 0x87, 0x95, 0xb2, 0xe5, 0x6e, 0x62, 0x42,
+  0x7e, 0xf3, 0xdc, 0x1d, 0x9f, 0x7f, 0xfb, 0xb2, 0x07, 0xf7, 0xff, 0xb0,
+  0x1b, 0xf1, 0xa9, 0x92, 0x93, 0xb7, 0x07, 0xe7, 0x3f, 0xe3, 0xb4, 0xff,
+  0x05, 0x3e, 0xbc, 0x79, 0x96, 0x4d, 0xfa, 0xec, 0x5d, 0x7e, 0x8d, 0x7f,
+  0x44, 0xe2, 0x31, 0xa9, 0xcd, 0xe6, 0xc4, 0xb6, 0x25, 0xa7, 0x73, 0x18,
+  0xe7, 0xc2, 0xcb, 0xc9, 0x66, 0x5e, 0x48, 0x8e, 0x35, 0x41, 0xdf, 0xea,
+  0xd0, 0x42, 0x2d, 0x8b, 0xc9, 0x16, 0x03, 0xcb, 0xf1, 0x65, 0x6c, 0x15,
+  0x09, 0x4f, 0xd2, 0xf1, 0xbe, 0x26, 0x1e, 0x16, 0x4b, 0x66, 0xe5, 0x3d,
+  0xa3, 0xfc, 0x84, 0xd1, 0x68, 0xf9, 0x83, 0x1b, 0x0a, 0x3b, 0xc6, 0x99,
+  0x2f, 0xe5, 0xd9, 0x0e, 0x57, 0x5d, 0x45, 0x62, 0xdb, 0x6f, 0x98, 0xdd,
+  0xd9, 0xfd, 0xfc, 0xb2, 0x78, 0xeb, 0xca, 0xa9, 0xf4, 0x57, 0xa2, 0x35,
+  0x83, 0x14, 0x47, 0x99, 0x2c, 0xaa, 0xb0, 0xae, 0x46, 0xea, 0xcf, 0x0f,
+  0x47, 0x18, 0xb9, 0xbf, 0xf6, 0x13, 0xed, 0xd9, 0x34, 0x9f, 0xf7, 0x5e,
+  0x08, 0x62, 0x86, 0x0c, 0x80, 0xee, 0x14, 0x07, 0xf4, 0x7b, 0x25, 0x51,
+  0x1a, 0x22, 0x87, 0x56, 0xdf, 0xa8, 0x43, 0x13, 0xfe, 0x25, 0x84, 0x95,
+  0x78, 0xef, 0xae, 0x66, 0xfb, 0x2a, 0x8b, 0xa6, 0x22, 0x5e, 0x50, 0x57,
+  0x23, 0x9e, 0x0f, 0x32, 0x65, 0x39, 0xb9, 0x82, 0x41, 0x49, 0xca, 0x75,
+  0x37, 0x31, 0x6b, 0x21, 0x3d, 0x17, 0x9f, 0xef, 0x24, 0x6b, 0xc6, 0x03,
+  0xb7, 0xb6, 0x20, 0xcd, 0xa1, 0x92, 0x9c, 0x59, 0x55, 0x68, 0xed, 0x22,
+  0x33, 0x47, 0xd5, 0x83, 0x10, 0x3c, 0x28, 0x79, 0x65, 0x00, 0xf2, 0xe5,
+  0x40, 0xe9, 0x12, 0x70, 0xe5, 0xaf, 0x08, 0x26, 0x5b, 0x5d, 0x4d, 0x23,
+  0x4c, 0x58, 0xd4, 0x92, 0x6a, 0x56, 0x2c, 0xa4, 0xa8, 0x8c, 0x49, 0x7b,
+  0x41, 0xeb, 0x5b, 0x5f, 0x4d, 0xd3, 0x7b, 0xc9, 0x63, 0xe9, 0xca, 0xfb,
+  0xe1, 0xc9, 0x33, 0x46, 0x99, 0x5d, 0x9e, 0x0c, 0x7d, 0xf2, 0xd8, 0x3a,
+  0xe1, 0x3a, 0xb0, 0x46, 0xfc, 0x7c, 0x79, 0x74, 0x30, 0xbc, 0x1c, 0x44,
+  0xc6, 0x18, 0x46, 0xd4, 0x5d, 0xf6, 0x0d, 0x11, 0x69, 0x4c, 0xd3, 0x07,
+  0xe2, 0x6b, 0x12, 0x08, 0x3f, 0xf5, 0x8d, 0xbb, 0xa6, 0x6d, 0x93, 0xd9,
+  0xc5, 0xb0, 0x4f, 0x60, 0x32, 0x42, 0x9e, 0x15, 0x33, 0x77, 0xa3, 0x7c,
+  0x4a, 0x23, 0x30, 0xdd, 0x1a, 0x19, 0xdb, 0x57, 0xa0, 0x92, 0xc8, 0x08,
+  0x2b, 0xa7, 0x04, 0xc5, 0xa1, 0xef, 0xb4, 0xed, 0x62, 0x22, 0x84, 0x93,
+  0x34, 0xb9, 0xe5, 0x49, 0x2f, 0x46, 0xcb, 0x28, 0xeb, 0x4c, 0x48, 0x77,
+  0xa8, 0x0d, 0x9d, 0xab, 0x1e, 0x26, 0xc3, 0x62, 0x94, 0x39, 0x9f, 0x9e,
+  0x52, 0x86, 0xc3, 0x8c, 0x82, 0xb4, 0xbe, 0x55, 0xa8, 0xeb, 0xb8, 0x41,
+  0x7a, 0x52, 0xba, 0xb2, 0x50, 0xc5, 0x5e, 0xa7, 0xc4, 0x3c, 0x2d, 0x34,
+  0xf2, 0xaf, 0x08, 0x17, 0xdd, 0x85, 0x44, 0x7e, 0x97, 0x13, 0x83, 0xe5,
+  0x56, 0x47, 0x4b, 0x69, 0xaf, 0xb8, 0x86, 0x17, 0x89, 0x28, 0x9c, 0x51,
+  0xeb, 0x14, 0xa9, 0xbc, 0x2b, 0xe3, 0x75, 0x29, 0x8c, 0x89, 0x9b, 0x99,
+  0x5b, 0x64, 0xe0, 0x65, 0x11, 0x3e, 0x79, 0x42, 0xd6, 0x02, 0xba, 0x99,
+  0xc8, 0xf4, 0xfc, 0xec, 0x09, 0x79, 0xfe, 0x3c, 0x9c, 0x90, 0x2a, 0xfb,
+  0xdb, 0x24, 0xc6, 0xd0, 0x09, 0xe4, 0x29, 0x40, 0xaf, 0x0c, 0x16, 0xbd,
+  0x60, 0x9a, 0x51, 0xea, 0xea, 0x36, 0xf1, 0xf9, 0x73, 0x15, 0xe0, 0xcc,
+  0x23, 0x6f, 0x21, 0xa7, 0x08, 0x85, 0x6f, 0x82, 0x5b, 0x1f, 0x24, 0x4f,
+  0xed, 0x67, 0x15, 0x2c, 0xd2, 0x4d, 0x3d, 0x15, 0x8a, 0x02, 0xf9, 0xc8,
+  0x4a, 0x91, 0x45, 0x85, 0x08, 0xc0, 0x0a, 0x5f, 0x99, 0x91, 0xdb, 0xb3,
+  0xd3, 0xa7, 0x72, 0xd2, 0x76, 0x60, 0x8f, 0x14, 0x5c, 0xef, 0x4e, 0xc6,
+  0x92, 0xa1, 0x5f, 0x56, 0x0f, 0xb6, 0x04, 0x93, 0x1d, 0xbf, 0x07, 0x67,
+  0xf4, 0xa6, 0x20, 0x80, 0xe3, 0x10, 0xe5, 0x3c, 0xa3, 0xed, 0xc0, 0x93,
+  0x21, 0x85, 0xc5, 0x9e, 0x3a, 0x11, 0xa1, 0xf0, 0xc0, 0xb4, 0xb4, 0x6a,
+  0x2d, 0xe9, 0x78, 0x45, 0x84, 0x6b, 0x68, 0x49, 0x66, 0x80, 0xbb, 0xc9,
+  0x70, 0xc6, 0x7e, 0xc8, 0x64, 0x69, 0x4c, 0xf9, 0xbb, 0x6c, 0x8a, 0x64,
+  0xa2, 0xac, 0x18, 0x57, 0x0f, 0x73, 0x9f, 0x52, 0x76, 0xf2, 0x88, 0x06,
+  0xff, 0xc8, 0x0a, 0xb4, 0x10, 0xc1, 0xbb, 0x46, 0xd6, 0x6d, 0x85, 0xfa,
+  0x57, 0x6a, 0x8b, 0x1a, 0x32, 0xfd, 0x15, 0x5d, 0xc2, 0x8d, 0x8f, 0x99,
+  0x84, 0x73, 0xce, 0x5e, 0x7a, 0x42, 0xda, 0x24, 0x99, 0x05, 0x5d, 0xd5,
+  0xfc, 0x6a, 0x01, 0x16, 0x0e, 0x0b, 0x8a, 0x7c, 0xf2, 0xda, 0xef, 0xf5,
+  0x78, 0xc6, 0xee, 0xf6, 0x02, 0xa0, 0x34, 0x44, 0xc2, 0xbb, 0xb2, 0xa2,
+  0xd4, 0xe4, 0x56, 0x31, 0x4d, 0x3a, 0xb2, 0x5a, 0x9f, 0x63, 0x8f, 0xd1,
+  0x30, 0xd6, 0x3b, 0xa7, 0xb5, 0xc9, 0x96, 0x94, 0x02, 0xe6, 0xd3, 0xce,
+  0xd9, 0x39, 0x43, 0x23, 0x59, 0x19, 0xf8, 0xa2, 0x0c, 0xd0, 0x5c, 0x46,
+  0xdb, 0x96, 0xe3, 0xa6, 0xa7, 0xef, 0xf6, 0x96, 0x12, 0xa4, 0x0e, 0xe4,
+  0xf7, 0x48, 0x99, 0x9a, 0x10, 0x15, 0xb7, 0x63, 0x6f, 0x4a, 0x6c, 0x21,
+  0x3b, 0x00, 0xbf, 0xc8, 0x61, 0xfa, 0x72, 0xf7, 0xb3, 0x97, 0x5b, 0xab,
+  0xeb, 0xf0, 0x12, 0x79, 0x3d, 0xa5, 0xe6, 0xc8, 0x46, 0xa2, 0x7f, 0xee,
+  0x0d, 0xfc, 0x39, 0x0a, 0x19, 0xb6, 0x03, 0x16, 0x8b, 0x09, 0x6d, 0x09,
+  0x9a, 0x06, 0x65, 0x21, 0xa6, 0xad, 0xc2, 0x03, 0x6b, 0x4a, 0x7b, 0xca,
+  0xb1, 0x95, 0x43, 0xa3, 0xb0, 0x3b, 0x4c, 0x36, 0x12, 0xfb, 0xcf, 0xb4,
+  0x03, 0xcf, 0xb8, 0x67, 0x5e, 0x31, 0x23, 0xee, 0x29, 0xfe, 0x3e, 0x68,
+  0xff, 0xcb, 0x0f, 0x06, 0xb9, 0x06, 0x7e, 0xd9, 0x2a, 0x3f, 0xfb, 0xad,
+  0x57, 0xf9, 0xd9, 0x23, 0xab, 0xfc, 0xec, 0xa9, 0xab, 0xfc, 0xd9, 0x8b,
+  0x97, 0x9f, 0xff, 0xb2, 0x55, 0xf6, 0x26, 0xf9, 0xff, 0xcc, 0x2a, 0x7b,
+  0xdb, 0xec, 0x97, 0xad, 0xb2, 0x04, 0xd5, 0x03, 0x41, 0x2c, 0xbc, 0xef,
+  0x40, 0x40, 0x51, 0xe6, 0x26, 0x43, 0xd6, 0xf8, 0x61, 0x35, 0x41, 0xdb,
+  0xf4, 0x98, 0xb6, 0xe8, 0x8b, 0x51, 0xc4, 0xd6, 0x96, 0x70, 0x8a, 0x42,
+  0x6a, 0x41, 0xc3, 0x9d, 0x4f, 0xa9, 0x74, 0xc8, 0x46, 0x7f, 0x43, 0x5d,
+  0x24, 0x9a, 0x36, 0xa1, 0x2c, 0x0c, 0xfc, 0x35, 0xb3, 0xd8, 0xff, 0x42,
+  0x16, 0x8f, 0x10, 0x73, 0xe0, 0xa1, 0x46, 0x5a, 0x93, 0xb6, 0x84, 0x4a,
+  0x3e, 0x86, 0x6b, 0x09, 0x8a, 0x17, 0xd8, 0x1e, 0x33, 0xdd, 0x45, 0x84,
+  0xa5, 0x9f, 0x16, 0x9f, 0x50, 0x9d, 0x41, 0x5e, 0x0e, 0xdd, 0x75, 0x8a,
+  0x1b, 0x89, 0x90, 0xfc, 0x0b, 0x4e, 0xa9, 0x53, 0x27, 0x77, 0x19, 0xda,
+  0x98, 0xf0, 0x7a, 0x8d, 0x57, 0x2c, 0x49, 0xcc, 0xa2, 0xb7, 0xd4, 0xdd,
+  0xc9, 0x62, 0x36, 0x57, 0x46, 0x1a, 0x02, 0x86, 0xe7, 0x40, 0x87, 0x68,
+  0x8a, 0x20, 0x43, 0xd6, 0x22, 0xfe, 0x25, 0x8b, 0x13, 0x4f, 0x18, 0xed,
+  0xe1, 0x55, 0x0c, 0x52, 0x2e, 0x7e, 0xcd, 0x57, 0xe7, 0x51, 0x00, 0x13,
+  0xc3, 0x64, 0x18, 0xdd, 0xdb, 0x96, 0x4d, 0x27, 0xd3, 0xf1, 0x49, 0x36,
+  0x5a, 0x5c, 0x6b, 0x9a, 0x9d, 0x2d, 0x7b, 0xd2, 0x5e, 0x2c, 0x80, 0xd7,
+  0x29, 0xd5, 0x3b, 0xeb, 0x31, 0x88, 0xf0, 0x21, 0xcc, 0x70, 0x6d, 0xa8,
+  0xe6, 0xcf, 0x78, 0x15, 0xe6, 0x24, 0x18, 0x3a, 0xf6, 0x40, 0xde, 0xf3,
+  0x86, 0x8e, 0x9f, 0xb4, 0x56, 0x34, 0x52, 0x9f, 0xc1, 0xdf, 0x2a, 0xcd,
+  0x78, 0xde, 0xbf, 0x4a, 0x89, 0x23, 0x2a, 0xc8, 0xb3, 0x12, 0x9c, 0x99,
+  0xb8, 0xf0, 0x2e, 0x0f, 0xcf, 0x93, 0x77, 0xa9, 0xb0, 0xc3, 0x27, 0x9b,
+  0x46, 0x30, 0x7d, 0xf6, 0x7c, 0xf7, 0xd9, 0xd6, 0x4a, 0x05, 0xb5, 0xcd,
+  0x79, 0x80, 0x6f, 0x15, 0x65, 0x0c, 0xef, 0x77, 0xb9, 0xa8, 0x0a, 0x4d,
+  0x50, 0x31, 0x1f, 0xfa, 0x78, 0x7a, 0xf6, 0xf6, 0xe8, 0xe4, 0xe0, 0x2f,
+  0x36, 0x8f, 0x92, 0xe6, 0x40, 0x13, 0x72, 0x3e, 0x1a, 0xb3, 0xee, 0xe1,
+  0xa3, 0xb1, 0x93, 0xcd, 0x2f, 0x37, 0x9f, 0x6d, 0x21, 0xe9, 0x21, 0x28,
+  0x15, 0x74, 0x9d, 0xb5, 0xd3, 0x4f, 0x19, 0x7c, 0xb9, 0x22, 0x6b, 0x9f,
+  0x3d, 0x77, 0xe4, 0xba, 0xdb, 0x19, 0x18, 0xa9, 0x25, 0x68, 0x2e, 0xe6,
+  0xb0, 0x75, 0x9b, 0xd4, 0xa3, 0xa3, 0x4e, 0x85, 0xdd, 0x43, 0x32, 0x09,
+  0x03, 0x06, 0x9a, 0xf9, 0x34, 0x1f, 0xe7, 0xa4, 0xc6, 0xd7, 0x66, 0xdf,
+  0x12, 0x5a, 0x95, 0xe2, 0xa5, 0x57, 0x6d, 0x76, 0x20, 0x24, 0xb5, 0x00,
+  0xed, 0xb9, 0xd2, 0xcb, 0xd4, 0x16, 0x89, 0x0d, 0x64, 0x68, 0x36, 0x2d,
+  0xb2, 0xa6, 0x2f, 0xdd, 0x7a, 0x6d, 0xfe, 0x7c, 0x73, 0x97, 0x4e, 0x83,
+  0x74, 0x29, 0xaa, 0xb4, 0xa3, 0x3b, 0xd3, 0x62, 0xb2, 0xe8, 0x4d, 0x8f,
+  0xfc, 0x7a, 0x68, 0x59, 0xa0, 0xf5, 0x49, 0x73, 0x54, 0x02, 0xb2, 0xe7,
+  0xcb, 0xcb, 0xbf, 0x9c, 0x1f, 0xbd, 0x79, 0x4d, 0x88, 0xae, 0x2f, 0x08,
+  0xb3, 0x5b, 0xb7, 0x00, 0x5e, 0x09, 0x15, 0x82, 0x0c, 0xc6, 0xf0, 0xfd,
+  0xdb, 0xe3, 0xe1, 0xf9, 0xc9, 0xd9, 0xe1, 0x9b, 0xd7, 0xdf, 0x93, 0xb1,
+  0x65, 0x64, 0xea, 0x83, 0xf7, 0xae, 0xfd, 0x99, 0x25, 0xb4, 0x0d, 0x73,
+  0x6c, 0x8f, 0xbe, 0xfb, 0x78, 0x74, 0xfa, 0xed, 0x9b, 0xd7, 0x77, 0x69,
+  0xd5, 0xa3, 0xf1, 0xf1, 0xdb, 0x4b, 0xca, 0x58, 0xb5, 0xb6, 0x1a, 0x69,
+  0xad, 0xa3, 0xe9, 0x6d, 0x9d, 0xff, 0x3d, 0x4b, 0xcc, 0xeb, 0xd3, 0x45,
+  0xc8, 0x27, 0x79, 0x29, 0x55, 0x0b, 0xcc, 0xa5, 0x46, 0x76, 0xc2, 0x97,
+  0x27, 0xdf, 0x10, 0x67, 0x99, 0xf5, 0x20, 0xce, 0x98, 0x26, 0x3f, 0xf9,
+  0xe2, 0xc5, 0xee, 0xde, 0x96, 0xab, 0x01, 0x05, 0xce, 0x43, 0xd3, 0xe3,
+  0xdb, 0x00, 0x6f, 0xfe, 0xf7, 0xcc, 0x2b, 0xae, 0x2c, 0x75, 0xac, 0x1e,
+  0x5a, 0x19, 0xdf, 0xea, 0x8e, 0x41, 0xf2, 0x28, 0x40, 0x75, 0x54, 0x42,
+  0xab, 0x02, 0xf7, 0x43, 0xe0, 0x8a, 0xba, 0x7c, 0xe7, 0xa5, 0x7d, 0x7f,
+  0xe9, 0x36, 0x9e, 0xe9, 0x8e, 0xb8, 0xb3, 0x56, 0x5e, 0x1b, 0xbf, 0x61,
+  0x90, 0xa3, 0x6b, 0x6b, 0x61, 0xb2, 0x8d, 0x29, 0x2e, 0xfb, 0x27, 0x3e,
+  0xcf, 0x97, 0xce, 0xf6, 0x06, 0x72, 0xbe, 0x64, 0x82, 0x1c, 0x8c, 0x52,
+  0x37, 0x9e, 0xa6, 0xda, 0xad, 0xb4, 0x14, 0xf3, 0x19, 0xa5, 0x6a, 0x11,
+  0xca, 0x99, 0xbd, 0x1e, 0x9e, 0x4f, 0x63, 0x9a, 0x5d, 0xa7, 0xe3, 0x87,
+  0xc4, 0x12, 0xfd, 0x09, 0x3f, 0xd3, 0xa4, 0x8c, 0xa4, 0x03, 0x27, 0xe9,
+  0x98, 0x8c, 0x9c, 0x69, 0x36, 0x21, 0x5e, 0x10, 0x32, 0xab, 0x38, 0xbb,
+  0x98, 0x52, 0x5c, 0xd4, 0x21, 0xd2, 0xea, 0x9d, 0x10, 0xe5, 0x2f, 0xcf,
+  0x0d, 0xb0, 0x15, 0x7d, 0xda, 0xbb, 0x8f, 0xb6, 0x0d, 0x8a, 0xd4, 0xad,
+  0x9c, 0xd3, 0xe7, 0x6d, 0x57, 0xf2, 0xdf, 0x71, 0xc8, 0x89, 0x0a, 0x01,
+  0xde, 0xca, 0xd7, 0xf4, 0xd7, 0x38, 0x21, 0xea, 0x3b, 0x35, 0xe7, 0xb9,
+  0x06, 0x21, 0x93, 0xcf, 0xd2, 0xb0, 0x2d, 0x87, 0x8d, 0x10, 0x8c, 0x13,
+  0xad, 0x66, 0xa3, 0xbe, 0xd1, 0xe5, 0x44, 0x23, 0xec, 0x1b, 0x46, 0x05,
+  0x4d, 0xf3, 0xb8, 0xd6, 0x25, 0x58, 0xd6, 0xa4, 0x4d, 0x69, 0x09, 0x63,
+  0x17, 0x48, 0xa8, 0x20, 0x00, 0xc2, 0x6b, 0x6a, 0x88, 0x24, 0x22, 0xa9,
+  0x24, 0x66, 0xa2, 0xbe, 0xd0, 0x68, 0x08, 0x38, 0xe8, 0x4b, 0x61, 0xbf,
+  0xc0, 0x43, 0x9c, 0x57, 0x5d, 0x47, 0xc8, 0x91, 0x18, 0x34, 0xab, 0x06,
+  0x35, 0x47, 0xd2, 0x29, 0xd2, 0x64, 0xf9, 0xfd, 0x4c, 0x27, 0x6b, 0x55,
+  0xd6, 0x28, 0x7b, 0xa4, 0xe0, 0x7a, 0xee, 0xca, 0xfe, 0x15, 0x2b, 0xde,
+  0xa5, 0x99, 0x0e, 0xd7, 0x96, 0x37, 0x8e, 0xc7, 0xa5, 0x69, 0xd6, 0xe8,
+  0x92, 0x11, 0x04, 0x34, 0x94, 0x2d, 0x65, 0x68, 0x89, 0x32, 0xf3, 0x5a,
+  0xdd, 0x92, 0xd5, 0x72, 0x7b, 0x55, 0x99, 0x96, 0xa9, 0x11, 0xba, 0xa6,
+  0xcc, 0x2d, 0x85, 0x7b, 0x89, 0x53, 0x16, 0x3b, 0x53, 0x12, 0xa0, 0xe9,
+  0x1b, 0x46, 0x07, 0x77, 0x2f, 0x29, 0xe2, 0x77, 0x54, 0x44, 0xae, 0xff,
+  0x7e, 0xab, 0x7c, 0xc8, 0x66, 0xdf, 0x15, 0x5e, 0xc8, 0x1b, 0xab, 0xb6,
+  0x45, 0x72, 0xd0, 0x13, 0x4b, 0x42, 0x69, 0xc9, 0x33, 0xd8, 0x2d, 0x28,
+  0xa1, 0x08, 0x2d, 0x30, 0x4d, 0x5f, 0xdb, 0xe6, 0xbc, 0x19, 0x95, 0x42,
+  0x79, 0x98, 0xb6, 0x17, 0xb4, 0x55, 0x64, 0xf7, 0x7e, 0x5b, 0x4e, 0x1f,
+  0xb7, 0xed, 0xfd, 0x96, 0x8e, 0x60, 0x63, 0x4c, 0x10, 0xe0, 0x3f, 0x79,
+  0xfd, 0xed, 0xd1, 0xc5, 0xf0, 0xf8, 0xec, 0xf4, 0x8b, 0xa8, 0x9d, 0x28,
+  0xbf, 0xb4, 0x65, 0x39, 0x34, 0x4b, 0xc8, 0xd5, 0x46, 0x20, 0xf7, 0x90,
+  0x3a, 0x21, 0xcc, 0x91, 0x4d, 0x28, 0x31, 0x82, 0x1e, 0xe9, 0x6e, 0x81,
+  0x5a, 0xda, 0x80, 0xfb, 0x33, 0xad, 0xae, 0x31, 0x17, 0x66, 0x7f, 0xc1,
+  0xa6, 0x41, 0xe1, 0x3b, 0x35, 0x76, 0xec, 0x5f, 0xf7, 0x82, 0xf1, 0xcb,
+  0xf4, 0xc6, 0xa9, 0x6c, 0x29, 0x52, 0xbc, 0x98, 0x73, 0x0e, 0x09, 0xa5,
+  0xf1, 0x72, 0xa2, 0xbf, 0xdf, 0xbf, 0x80, 0x21, 0x77, 0xb0, 0xd3, 0x7e,
+  0xd1, 0x3c, 0x7c, 0xb7, 0xeb, 0x21, 0xdf, 0xed, 0x73, 0xbb, 0xb1, 0xe7,
+  0x76, 0xc3, 0xe7, 0xf6, 0x62, 0xcf, 0xed, 0x85, 0xcf, 0x3d, 0x8b, 0x3d,
+  0xe7, 0x25, 0x37, 0x78, 0x2e, 0x2f, 0x9d, 0xa1, 0x55, 0x16, 0xa1, 0xb7,
+  0x9e, 0x2d, 0x4b, 0x76, 0xcd, 0x33, 0xe1, 0x7e, 0x96, 0x09, 0xeb, 0xe7,
+  0x7d, 0x76, 0xfc, 0xa8, 0x8f, 0x97, 0xc1, 0xce, 0xd0, 0x48, 0x12, 0x56,
+  0x0e, 0x26, 0x2d, 0x08, 0x90, 0x7a, 0x2e, 0x55, 0xa9, 0xc1, 0x1f, 0x5b,
+  0x14, 0x87, 0xb7, 0x54, 0xfc, 0xfa, 0x80, 0x59, 0xb5, 0x3e, 0xbc, 0x38,
+  0x5f, 0xef, 0x89, 0x3b, 0xd2, 0x7c, 0xa3, 0x6f, 0xfe, 0x9d, 0x40, 0xdb,
+  0x26, 0xbe, 0xe7, 0x17, 0xcf, 0xb7, 0x38, 0x90, 0xe0, 0x4a, 0x4e, 0x87,
+  0xde, 0xe5, 0x76, 0x49, 0x6c, 0x14, 0x4e, 0x72, 0xbc, 0xec, 0x46, 0x0b,
+  0x6e, 0x0f, 0x90, 0x21, 0x01, 0x3d, 0x29, 0x7a, 0xbc, 0xfc, 0x72, 0xb3,
+  0x7c, 0x30, 0x54, 0xfa, 0x93, 0x3a, 0xf9, 0x48, 0xfe, 0xf0, 0xf3, 0xce,
+  0x8c, 0x6a, 0x87, 0x22, 0x53, 0xe9, 0x8a, 0x58, 0x62, 0xd8, 0xd0, 0x96,
+  0x94, 0xfb, 0x06, 0xb5, 0x66, 0xdb, 0xb3, 0x2c, 0xdc, 0x14, 0x4b, 0xe1,
+  0xef, 0x9a, 0xef, 0xeb, 0x8d, 0x72, 0xa0, 0xfe, 0x6e, 0x71, 0x7f, 0x78,
+  0xd3, 0xe7, 0x08, 0x4f, 0x1f, 0x1f, 0x90, 0x3f, 0x9e, 0x15, 0x65, 0xc1,
+  0x33, 0xf0, 0xc4, 0x55, 0x16, 0x67, 0xf7, 0xd8, 0x80, 0x1c, 0xab, 0xc8,
+  0xd2, 0x21, 0x29, 0x99, 0x6a, 0x7b, 0x50, 0x6e, 0x54, 0xde, 0xb0, 0xdc,
+  0xca, 0xd3, 0xd0, 0x82, 0xe5, 0x7c, 0xd2, 0x40, 0x5b, 0x23, 0xa5, 0xb3,
+  0x19, 0xa8, 0x74, 0x27, 0xc3, 0x2d, 0xf5, 0xb0, 0xf9, 0x0e, 0x36, 0x4f,
+  0x16, 0x41, 0xf6, 0x30, 0xd7, 0xaa, 0xfa, 0xc7, 0x91, 0x6e, 0x56, 0x26,
+  0xcb, 0x5c, 0x6c, 0xf4, 0xb2, 0xf2, 0xd3, 0xae, 0xc8, 0x59, 0x0a, 0x4f,
+  0x2b, 0xc9, 0x8b, 0x68, 0x0f, 0xdb, 0x4e, 0xc0, 0x78, 0x27, 0x77, 0x95,
+  0x8c, 0xc9, 0xf6, 0x91, 0xdc, 0xfb, 0xbf, 0x7e, 0x0f, 0xf7, 0x7e, 0xd9,
+  0x1c, 0xee, 0xfd, 0xeb, 0xe6, 0xf0, 0xd9, 0x2f, 0x9e, 0xc3, 0x67, 0xbf,
+  0xce, 0x1c, 0xba, 0x02, 0x79, 0xf4, 0x10, 0x35, 0x9b, 0xb7, 0xc9, 0xae,
+  0xe5, 0x6e, 0x35, 0xff, 0x1c, 0x51, 0x9c, 0x9c, 0xbc, 0x12, 0xe6, 0x41,
+  0x4a, 0x05, 0xcc, 0x50, 0x2a, 0xac, 0x33, 0xe0, 0xc6, 0x66, 0x30, 0x83,
+  0x7a, 0xbf, 0xca, 0x6d, 0x4e, 0x3a, 0xc9, 0x3b, 0x38, 0xd1, 0x8c, 0x74,
+  0xfc, 0xb2, 0x24, 0x9d, 0x93, 0xfc, 0xbb, 0x52, 0xd4, 0x1a, 0x9f, 0xfc,
+  0x19, 0x44, 0x01, 0xce, 0xa9, 0x19, 0xf7, 0x44, 0x5f, 0xb6, 0xa2, 0x8e,
+  0xe1, 0xec, 0x7d, 0xfa, 0x79, 0x9e, 0x68, 0x6f, 0x02, 0x39, 0xe4, 0xc2,
+  0x89, 0xad, 0x9d, 0xa3, 0xd7, 0x4b, 0x44, 0xd3, 0x88, 0x69, 0x19, 0xde,
+  0xe5, 0xab, 0x9e, 0xe3, 0xb6, 0xe3, 0xd8, 0xf3, 0xd3, 0xba, 0xfb, 0x56,
+  0xac, 0xa9, 0x95, 0xbe, 0x63, 0x57, 0xa8, 0xf0, 0x11, 0xef, 0xb1, 0x57,
+  0xf3, 0x7a, 0x89, 0xef, 0x38, 0xae, 0x09, 0xb4, 0xfe, 0xd5, 0x4a, 0x96,
+  0x6c, 0xaa, 0xbe, 0xd2, 0x75, 0xc7, 0xd9, 0xd9, 0x9c, 0x91, 0x64, 0x94,
+  0x27, 0x68, 0xce, 0xa4, 0x3d, 0x89, 0x49, 0xde, 0x3f, 0x92, 0x77, 0x9d,
+  0x9f, 0x92, 0x63, 0xb4, 0xd1, 0xa2, 0x6c, 0xc2, 0x91, 0xa5, 0xa9, 0xa7,
+  0x9a, 0xfc, 0xc7, 0xa3, 0xac, 0x39, 0x08, 0xbe, 0x28, 0xf4, 0x33, 0x2e,
+  0x87, 0x0e, 0x19, 0xf0, 0xc1, 0xb2, 0x8e, 0x33, 0xce, 0x8e, 0xce, 0x1f,
+  0x13, 0xcd, 0x2f, 0xdb, 0xe3, 0x4d, 0xc7, 0x59, 0x3f, 0xad, 0xc7, 0x79,
+  0x1e, 0x37, 0x4a, 0xd8, 0x7f, 0x07, 0x23, 0x68, 0xc1, 0x45, 0xb5, 0xc7,
+  0xa6, 0x1b, 0x8b, 0xd9, 0x5c, 0xeb, 0x7f, 0x11, 0xa7, 0x1a, 0x27, 0x0e,
+  0x73, 0x7e, 0x7e, 0xb9, 0x68, 0xae, 0xc1, 0xad, 0x84, 0xce, 0xf6, 0x02,
+  0x1b, 0x47, 0xab, 0x24, 0x9b, 0xe5, 0x19, 0x57, 0xf9, 0x1c, 0x64, 0x33,
+  0x1e, 0xd1, 0x78, 0xcf, 0xd6, 0xe2, 0x82, 0xd1, 0x20, 0x7e, 0x60, 0x2e,
+  0x4d, 0xf5, 0x21, 0xc8, 0xd6, 0x5c, 0xef, 0xaf, 0x93, 0x85, 0x66, 0xd9,
+  0x99, 0xcd, 0xbb, 0x44, 0x0c, 0xe6, 0x39, 0x5f, 0xb9, 0xd4, 0xe1, 0x72,
+  0x47, 0xbb, 0x7a, 0x64, 0xcc, 0x16, 0x7a, 0x50, 0xee, 0x29, 0x10, 0x50,
+  0xaa, 0xa7, 0x95, 0xb4, 0x9d, 0x69, 0x46, 0x6c, 0x63, 0x49, 0x29, 0x99,
+  0x8c, 0x37, 0xd9, 0x27, 0xce, 0x5d, 0x08, 0xf5, 0x26, 0x51, 0xd2, 0x6e,
+  0xc0, 0x08, 0x4e, 0xcf, 0x1e, 0x0c, 0x0f, 0x8f, 0x8f, 0x5b, 0x99, 0x0e,
+  0x34, 0x79, 0xcc, 0x60, 0x83, 0xdc, 0xc9, 0x9a, 0xb8, 0x7c, 0xc8, 0x03,
+  0x8d, 0xee, 0xc6, 0xb8, 0x27, 0x6d, 0x41, 0xee, 0x2c, 0xad, 0x73, 0xad,
+  0x0e, 0x91, 0x72, 0x18, 0x77, 0x51, 0x98, 0x6e, 0xc2, 0x5e, 0xb8, 0x59,
+  0x18, 0xe3, 0xf0, 0xb7, 0x4f, 0x34, 0x8e, 0xd7, 0x9a, 0x97, 0xd9, 0xe2,
+  0x73, 0xe5, 0x3b, 0xad, 0xc3, 0xbd, 0x16, 0x21, 0x7a, 0x3c, 0xaf, 0xa4,
+  0x14, 0x00, 0xe7, 0xd3, 0x0b, 0x53, 0x23, 0x55, 0xab, 0x23, 0xa6, 0x13,
+  0x6e, 0xd9, 0x8c, 0x55, 0xfd, 0xe0, 0x4c, 0x49, 0x27, 0x82, 0x24, 0x52,
+  0x14, 0x50, 0x3c, 0x82, 0xf5, 0x4a, 0x77, 0x68, 0xf7, 0xf2, 0xc2, 0x47,
+  0x56, 0x9e, 0x00, 0xb2, 0x74, 0x71, 0x06, 0xa4, 0x47, 0xad, 0x53, 0x60,
+  0x0f, 0x01, 0xcd, 0x80, 0x3d, 0x02, 0xff, 0xa2, 0x13, 0x40, 0x47, 0xc0,
+  0x23, 0x35, 0x7f, 0xfc, 0x10, 0xc0, 0xa6, 0x5a, 0xff, 0xc3, 0x7a, 0x9c,
+  0x0a, 0xf4, 0x09, 0x27, 0xa9, 0x95, 0xa2, 0xfa, 0xaf, 0xdd, 0x69, 0x91,
+  0x9c, 0x59, 0x4f, 0x88, 0xf9, 0x6b, 0xba, 0x28, 0xf2, 0x4f, 0x40, 0x6d,
+  0x9a, 0x5b, 0xfe, 0x35, 0x31, 0x11, 0x2f, 0x21, 0xdc, 0x3c, 0xd4, 0xba,
+  0xcf, 0xb6, 0xda, 0xb7, 0xf9, 0xf0, 0x07, 0xf3, 0x72, 0x32, 0x29, 0x67,
+  0x14, 0xc1, 0xe3, 0x36, 0x7a, 0x3e, 0xeb, 0x19, 0xc4, 0x7a, 0x24, 0x02,
+  0x58, 0x64, 0x0d, 0x61, 0xac, 0x56, 0x3a, 0xe9, 0xda, 0x8e, 0xcf, 0x4b,
+  0xb0, 0xea, 0xcf, 0x09, 0x18, 0xb8, 0xa2, 0x6a, 0x13, 0x07, 0x4b, 0x1d,
+  0x12, 0xaf, 0x8b, 0xf5, 0xf6, 0xd8, 0x48, 0xdb, 0x75, 0x72, 0x89, 0xa6,
+  0x3e, 0x1a, 0xac, 0xb4, 0x7c, 0xb4, 0x8e, 0xcd, 0x39, 0xef, 0xba, 0x58,
+  0xc0, 0x17, 0xec, 0x3c, 0xd1, 0x52, 0x6b, 0x61, 0x25, 0x17, 0x2a, 0xf3,
+  0xd7, 0xba, 0x2a, 0x37, 0x2d, 0xd6, 0x6b, 0xf0, 0x55, 0xe4, 0x53, 0xda,
+  0xfc, 0xdb, 0x1a, 0xa9, 0x99, 0x86, 0xf8, 0x3a, 0x47, 0xa5, 0xcc, 0xa2,
+  0x8e, 0xc0, 0xdc, 0x70, 0xd7, 0xd2, 0xbf, 0x91, 0x6a, 0xae, 0xf1, 0xe7,
+  0xf6, 0x20, 0x84, 0x1e, 0x3d, 0x5a, 0xd2, 0x96, 0x5d, 0xe9, 0x37, 0x54,
+  0x61, 0x4b, 0xfb, 0x55, 0xf1, 0x46, 0x6c, 0xd7, 0x50, 0x53, 0xef, 0xbc,
+  0x47, 0xbe, 0x1c, 0xa9, 0xb2, 0x29, 0x3a, 0x98, 0xe8, 0x4e, 0x4c, 0x3f,
+  0x44, 0x50, 0x7a, 0xa2, 0x07, 0xa5, 0x48, 0xbc, 0x2d, 0xe8, 0xc3, 0x0b,
+  0xeb, 0x55, 0x86, 0x0d, 0x82, 0x3c, 0x94, 0xc2, 0x3f, 0xf0, 0x91, 0x91,
+  0x38, 0x35, 0x65, 0xa1, 0x80, 0xec, 0x4d, 0xa3, 0x3e, 0x6b, 0xd5, 0x54,
+  0x6a, 0x91, 0xa8, 0x3d, 0x5d, 0xf9, 0xdc, 0x80, 0xa4, 0x72, 0xd9, 0x69,
+  0xd2, 0x8c, 0x56, 0x37, 0x51, 0x24, 0x39, 0x36, 0x53, 0xa5, 0xb8, 0x21,
+  0xa7, 0xdf, 0x96, 0xaa, 0x96, 0xe6, 0x84, 0xe7, 0x85, 0xbf, 0xdd, 0x03,
+  0x35, 0x52, 0xfc, 0xbc, 0x2c, 0x95, 0xcc, 0xf6, 0x16, 0xe6, 0xb8, 0xcc,
+  0xba, 0x2b, 0xbc, 0xef, 0x0c, 0xfc, 0xef, 0x30, 0x20, 0x76, 0x2b, 0x60,
+  0x1a, 0x7d, 0xe8, 0x56, 0xbc, 0xb2, 0xdf, 0xa6, 0x7e, 0x5a, 0xa8, 0x15,
+  0xf7, 0x0c, 0x50, 0x1f, 0xc2, 0x4e, 0x21, 0x86, 0x12, 0x9e, 0x44, 0x24,
+  0xc6, 0xb1, 0x85, 0x43, 0x20, 0x4e, 0xb0, 0x0c, 0x41, 0xe4, 0xba, 0x5a,
+  0x5c, 0x12, 0x5f, 0x16, 0x36, 0x21, 0x6d, 0x96, 0x3c, 0xd3, 0x61, 0x73,
+  0xbc, 0x88, 0x91, 0x49, 0xfd, 0x4b, 0x27, 0x31, 0x80, 0x64, 0x5a, 0x78,
+  0xa0, 0x2d, 0xf9, 0x3c, 0x11, 0x36, 0x97, 0x85, 0xab, 0x79, 0x1b, 0xe5,
+  0x5b, 0x15, 0x4e, 0xbd, 0xe4, 0x88, 0xde, 0x08, 0x1b, 0xfb, 0x23, 0x5a,
+  0x21, 0x1e, 0x42, 0xaf, 0xbe, 0x04, 0x4a, 0xb5, 0x05, 0x3b, 0x4b, 0xf6,
+  0x9e, 0xd0, 0x36, 0x22, 0xab, 0x6c, 0x20, 0xd4, 0xc9, 0xa4, 0xb6, 0xab,
+  0xa2, 0x99, 0xac, 0x5f, 0x4f, 0xcb, 0xd1, 0xc8, 0x0c, 0x7b, 0xdd, 0x53,
+  0x4b, 0xcd, 0x97, 0x03, 0x97, 0x90, 0xdf, 0x0f, 0xeb, 0x9c, 0xec, 0x71,
+  0x90, 0x5d, 0xd8, 0x77, 0xe8, 0x4a, 0xd6, 0x74, 0x09, 0xf9, 0xbe, 0x56,
+  0x0a, 0x8e, 0xdc, 0x34, 0x82, 0x82, 0x93, 0xad, 0x41, 0x03, 0xf3, 0x50,
+  0x8d, 0x92, 0xb5, 0x40, 0x3f, 0xd5, 0x0e, 0x26, 0x5c, 0xc7, 0x76, 0x45,
+  0x65, 0x68, 0x11, 0x61, 0x10, 0x5c, 0xc2, 0x6d, 0x9f, 0x87, 0x45, 0x67,
+  0x79, 0x16, 0xda, 0x03, 0x5a, 0xff, 0x2f, 0xfa, 0x63, 0xb7, 0x47, 0xff,
+  0xdd, 0xfb, 0xc7, 0x7a, 0x42, 0x56, 0xcc, 0xfe, 0xf6, 0xf6, 0xfd, 0xfd,
+  0xfd, 0x40, 0x78, 0x54, 0x07, 0x66, 0xc9, 0xd6, 0x42, 0x7c, 0x3f, 0x71,
+  0x55, 0x2c, 0xf9, 0xc0, 0x65, 0xb2, 0x9e, 0xcf, 0xae, 0x7f, 0xd8, 0xed,
+  0xef, 0xee, 0xec, 0xec, 0xfc, 0x34, 0x98, 0xd3, 0x14, 0x5f, 0xa1, 0x59,
+  0xf3, 0x5f, 0xbf, 0xd9, 0x6d, 0xee, 0xc9, 0x76, 0x9c, 0xfe, 0x87, 0x7f,
+  0xa9, 0x56, 0xbb, 0x99, 0x59, 0x50, 0x72, 0xf2, 0x56, 0xde, 0xf7, 0xc4,
+  0x0c, 0x3b, 0xc5, 0x53, 0x2f, 0xc9, 0xbc, 0x2b, 0xf6, 0xe1, 0xa6, 0x22,
+  0x3f, 0xe0, 0x8b, 0x67, 0x7b, 0x7b, 0x09, 0xab, 0x1c, 0x0c, 0x42, 0xe7,
+  0xb8, 0x0c, 0x71, 0x69, 0x4b, 0xe1, 0x2a, 0xbe, 0xcd, 0xa8, 0xfa, 0x38,
+  0x95, 0x39, 0x66, 0x4b, 0xb9, 0x9b, 0xcb, 0xa7, 0x70, 0x07, 0x2e, 0x41,
+  0x6b, 0x04, 0x99, 0x91, 0x3f, 0xe5, 0xe4, 0xc1, 0x35, 0xac, 0xa5, 0xac,
+  0xb9, 0xbe, 0x84, 0x2d, 0xc0, 0x9a, 0xd6, 0x31, 0xbd, 0xcd, 0x92, 0xa9,
+  0xe3, 0x9a, 0x03, 0x57, 0x52, 0x51, 0x4a, 0xf9, 0x24, 0x04, 0x21, 0xae,
+  0x16, 0x95, 0xb0, 0x18, 0x23, 0x6a, 0x73, 0x9f, 0x3e, 0xb4, 0xae, 0x7b,
+  0x33, 0xe3, 0xaf, 0xcd, 0x7f, 0x96, 0x15, 0x3c, 0x4c, 0xb5, 0xf2, 0xcf,
+  0x55, 0xd6, 0x8c, 0x6f, 0xba, 0xb8, 0x91, 0x04, 0x02, 0x9c, 0x94, 0xf7,
+  0x1b, 0x33, 0x9a, 0x07, 0xad, 0xf0, 0xb3, 0xac, 0xa6, 0x80, 0xcb, 0xbe,
+  0x31, 0x8d, 0x12, 0xa9, 0x27, 0xca, 0x0a, 0x70, 0x99, 0x31, 0x96, 0x8a,
+  0xcb, 0x4a, 0x8e, 0xdb, 0xba, 0x16, 0xf4, 0xd1, 0x59, 0x5e, 0x6b, 0x76,
+  0xd0, 0xf8, 0x26, 0x9b, 0x89, 0xc4, 0xdc, 0x54, 0xfc, 0xc7, 0xba, 0x6c,
+  0xc2, 0xf5, 0xf0, 0x52, 0x5b, 0xbf, 0x92, 0xdf, 0x98, 0xc1, 0x6c, 0x49,
+  0x76, 0x8d, 0xbd, 0xe7, 0x84, 0xe9, 0xf8, 0x7a, 0x41, 0x76, 0xe3, 0x28,
+  0x95, 0x0b, 0x45, 0x13, 0xbe, 0xe0, 0xfd, 0x8d, 0x25, 0xeb, 0x19, 0xa1,
+  0x98, 0x55, 0xb8, 0xc7, 0xc8, 0x39, 0xd2, 0x17, 0xed, 0x47, 0xae, 0x55,
+  0x44, 0xcb, 0xcc, 0x89, 0x7d, 0x7b, 0x7c, 0x78, 0xd9, 0xe3, 0x0a, 0xd7,
+  0x04, 0x8a, 0xed, 0x21, 0xbf, 0x25, 0x24, 0xa2, 0x3e, 0x7f, 0x46, 0x67,
+  0x03, 0x1b, 0x55, 0x0a, 0xc3, 0xa4, 0x0e, 0x2f, 0xe0, 0xa1, 0x37, 0x25,
+  0xbd, 0xc1, 0xa3, 0x10, 0x8f, 0xf0, 0x42, 0xb7, 0xf4, 0x44, 0x9b, 0x1f,
+  0xf5, 0xfc, 0xc5, 0x60, 0x87, 0xc7, 0xe8, 0xea, 0x2a, 0x29, 0x1e, 0x1b,
+  0x3e, 0x9e, 0x5a, 0x58, 0xc1, 0xd2, 0x25, 0x8c, 0x86, 0xda, 0x9d, 0x5e,
+  0xc2, 0x24, 0x78, 0x9c, 0x30, 0xa9, 0xbf, 0xf5, 0xa0, 0x1f, 0x2b, 0x75,
+  0x53, 0xbf, 0xd0, 0x65, 0xbb, 0xfc, 0xbc, 0x94, 0x46, 0x27, 0x7a, 0x39,
+  0xcd, 0xa6, 0x90, 0xec, 0xde, 0x18, 0x28, 0x1e, 0x7b, 0x02, 0x70, 0x3e,
+  0x46, 0x87, 0xf5, 0x1c, 0xaf, 0x74, 0x49, 0xb7, 0x80, 0x5c, 0x59, 0x82,
+  0xb1, 0x6e, 0x15, 0xff, 0x88, 0x69, 0x28, 0x01, 0x65, 0x77, 0xff, 0x4b,
+  0xa9, 0xdf, 0xc4, 0x9a, 0x72, 0x0c, 0xe0, 0x4d, 0x4b, 0xb9, 0xa5, 0x90,
+  0x1d, 0xb6, 0x5c, 0x55, 0xe5, 0x1c, 0x90, 0x0b, 0x2f, 0xe1, 0x75, 0x97,
+  0xfe, 0x72, 0xfd, 0x2d, 0x80, 0x07, 0x03, 0xb6, 0xf8, 0x8c, 0xec, 0x99,
+  0xb1, 0x16, 0x92, 0x15, 0xb2, 0x2e, 0x39, 0x81, 0xb4, 0x13, 0x60, 0xee,
+  0xc1, 0x41, 0xb5, 0xfe, 0x27, 0xf2, 0x43, 0xbf, 0x39, 0x58, 0x6f, 0x9d,
+  0xc8, 0x18, 0x33, 0x75, 0xcd, 0xd2, 0xad, 0x6d, 0xcb, 0x88, 0x4c, 0x23,
+  0xb9, 0x9f, 0x7d, 0x6a, 0xa4, 0x76, 0x36, 0x6a, 0x1a, 0x15, 0xcf, 0xf6,
+  0x92, 0xfa, 0xc1, 0xa8, 0x11, 0x33, 0x7f, 0x12, 0xba, 0x45, 0xac, 0xa2,
+  0xde, 0xf7, 0x16, 0x13, 0x3f, 0xcb, 0xad, 0x0f, 0xf4, 0xca, 0x01, 0x5e,
+  0x11, 0xde, 0x6e, 0x05, 0x1f, 0x3c, 0xa1, 0x32, 0x5a, 0x99, 0xa8, 0x14,
+  0x1b, 0x4d, 0xd3, 0xe2, 0xb6, 0xb6, 0x9a, 0x36, 0x5a, 0xea, 0x51, 0xc1,
+  0x11, 0xce, 0x17, 0x71, 0x3f, 0x14, 0x40, 0x02, 0x6e, 0xc6, 0x68, 0xd5,
+  0xf8, 0x59, 0x5a, 0xdd, 0x2a, 0xfa, 0x6d, 0x65, 0xd5, 0x35, 0x57, 0x76,
+  0x2d, 0x3e, 0xb7, 0xae, 0x0e, 0xdb, 0x6f, 0x17, 0x47, 0x5d, 0xe8, 0xac,
+  0x1b, 0x09, 0x6d, 0xfe, 0xbb, 0xaf, 0xf1, 0x85, 0x55, 0xc5, 0x69, 0xf1,
+  0xb8, 0x2d, 0x99, 0x65, 0x23, 0x12, 0x7e, 0x11, 0x14, 0x56, 0xe6, 0x5c,
+  0x24, 0x24, 0x96, 0x72, 0x31, 0x48, 0xce, 0x9c, 0xf1, 0x58, 0xf4, 0xc0,
+  0x11, 0xd6, 0x54, 0x63, 0x31, 0x1d, 0xf1, 0xf7, 0xbe, 0xd6, 0x33, 0x8c,
+  0xcd, 0x00, 0xd8, 0xd9, 0x09, 0xcc, 0xf1, 0x60, 0x45, 0x7e, 0xab, 0x77,
+  0x0a, 0xf3, 0x12, 0x99, 0x66, 0x64, 0x08, 0x15, 0xa5, 0xe0, 0xd8, 0x5b,
+  0x1a, 0x40, 0xca, 0x78, 0x10, 0x71, 0x5e, 0x78, 0xae, 0x40, 0x6e, 0xcb,
+  0x90, 0xb8, 0xc7, 0x6b, 0x09, 0xc0, 0x4d, 0xcd, 0x1d, 0x48, 0xb5, 0xe5,
+  0x0b, 0x8f, 0xfd, 0xd3, 0x88, 0xaf, 0xb2, 0xe8, 0x05, 0x0c, 0x02, 0xc4,
+  0xb6, 0xc7, 0xfe, 0x25, 0x02, 0x33, 0xcc, 0xa4, 0xfa, 0x93, 0x2d, 0x21,
+  0x93, 0xf2, 0x7b, 0xba, 0x0f, 0xfd, 0x2f, 0x3f, 0x52, 0xa8, 0x86, 0x69,
+  0x8e, 0x75, 0x31, 0xcc, 0xc6, 0xeb, 0x31, 0x3a, 0x7f, 0x09, 0x73, 0xa1,
+  0x9c, 0xfc, 0x6f, 0x8c, 0xbd, 0x9e, 0x55, 0xa5, 0x11, 0x1a, 0xdf, 0xbe,
+  0x50, 0x98, 0x81, 0x14, 0xbe, 0x92, 0xfb, 0x49, 0xd6, 0x12, 0xb3, 0x0d,
+  0x86, 0x8e, 0xa8, 0xdb, 0x84, 0xe5, 0xa1, 0xbe, 0x29, 0x17, 0x14, 0x9b,
+  0x6d, 0x45, 0x77, 0x59, 0xe8, 0xea, 0x32, 0x7d, 0x44, 0x35, 0xac, 0xe0,
+  0xfa, 0x64, 0xf3, 0x59, 0x8c, 0x01, 0x40, 0x39, 0x17, 0x63, 0xd2, 0x75,
+  0xc8, 0xc1, 0x63, 0x04, 0x56, 0x39, 0x6a, 0x70, 0xf5, 0xa5, 0xae, 0xe7,
+  0x97, 0x39, 0x39, 0x01, 0x96, 0x14, 0x1a, 0x62, 0x24, 0x9e, 0x5c, 0x74,
+  0x8e, 0x55, 0xaf, 0x13, 0xa3, 0x23, 0xcd, 0xa2, 0xbe, 0xa1, 0xbb, 0x99,
+  0xee, 0x0c, 0x18, 0x7e, 0x6b, 0x71, 0x96, 0x38, 0x9a, 0xb4, 0xd3, 0xcb,
+  0x93, 0xf7, 0xbd, 0xce, 0x49, 0x08, 0x2a, 0x03, 0xeb, 0xd6, 0x84, 0x0b,
+  0x28, 0xe2, 0x54, 0xb7, 0x0b, 0xdb, 0x73, 0xc0, 0x72, 0xce, 0x45, 0xa4,
+  0xa9, 0xeb, 0x49, 0xaa, 0x49, 0x25, 0x80, 0x65, 0xb5, 0x05, 0x79, 0x5e,
+  0x43, 0xef, 0x26, 0xc1, 0x74, 0x6a, 0xf8, 0x09, 0x60, 0x3e, 0x1b, 0x51,
+  0x63, 0xb6, 0xa3, 0x57, 0x69, 0x20, 0xdc, 0xd7, 0x65, 0xeb, 0xd0, 0xf8,
+  0x0b, 0x46, 0xdb, 0x90, 0x79, 0x34, 0x93, 0xb7, 0xe5, 0x7d, 0xd1, 0x3f,
+  0xa1, 0xac, 0x93, 0xe4, 0xa4, 0xbc, 0x26, 0x0b, 0xe9, 0x34, 0x6e, 0xc9,
+  0x7f, 0x38, 0x3f, 0x4d, 0x36, 0x49, 0x12, 0x27, 0xe7, 0x96, 0xfb, 0x82,
+  0x1e, 0xdd, 0x12, 0x8d, 0xb3, 0xe6, 0x5b, 0x4a, 0x7a, 0xd3, 0x4b, 0x8e,
+  0xbe, 0x3f, 0x78, 0x7f, 0x7e, 0x72, 0xf4, 0xe3, 0x92, 0x20, 0x37, 0xfd,
+  0xf8, 0xcf, 0x9e, 0x16, 0x0e, 0xaf, 0x3d, 0xc5, 0x9e, 0x4c, 0x4f, 0x1e,
+  0x96, 0xc9, 0x02, 0x3e, 0x3e, 0xba, 0x05, 0x87, 0xc3, 0xf3, 0xe3, 0xbe,
+  0xd4, 0x78, 0x95, 0xd2, 0x14, 0x79, 0x41, 0x0a, 0x33, 0x1f, 0x60, 0x61,
+  0x3f, 0xa5, 0x5d, 0xd4, 0x0f, 0x0c, 0x75, 0x39, 0x0f, 0xbd, 0xe4, 0x54,
+  0x49, 0x0b, 0x7b, 0x58, 0x74, 0xba, 0xe2, 0xdf, 0xe6, 0xd7, 0x88, 0x32,
+  0xb4, 0x37, 0x50, 0xa3, 0xb5, 0x63, 0xc7, 0x01, 0x5a, 0x95, 0xb2, 0xd2,
+  0x6c, 0x78, 0xa8, 0xce, 0xa6, 0xec, 0xd0, 0x5a, 0x2a, 0x45, 0x19, 0x86,
+  0x84, 0x55, 0x04, 0x0c, 0x32, 0x08, 0x9f, 0x08, 0x2c, 0x72, 0x64, 0xa5,
+  0x9e, 0xa8, 0xa9, 0xbc, 0x43, 0x58, 0x7a, 0xc8, 0x35, 0x63, 0x85, 0xc3,
+  0xbe, 0xb1, 0xd5, 0x17, 0xc9, 0xfe, 0xfa, 0x6f, 0x78, 0x91, 0xf8, 0xde,
+  0xbf, 0x08, 0x8b, 0xb6, 0x8d, 0x30, 0x5a, 0x5f, 0x31, 0xa7, 0xe8, 0xb2,
+  0x1b, 0x53, 0x9d, 0x30, 0xf0, 0x7f, 0x9a, 0x93, 0x2e, 0x2a, 0xde, 0x68,
+  0x71, 0x7d, 0x1d, 0x49, 0xe3, 0xa5, 0x5a, 0x14, 0x59, 0xa6, 0x95, 0xd0,
+  0x37, 0xea, 0x84, 0x7d, 0xba, 0xa6, 0xff, 0xeb, 0x88, 0x55, 0xb1, 0x0c,
+  0xb9, 0x29, 0xcb, 0xc9, 0x3a, 0x43, 0x7a, 0xd8, 0x2d, 0x8d, 0xf2, 0xb9,
+  0x61, 0x73, 0x1c, 0x7b, 0xdf, 0xf8, 0x62, 0x23, 0x91, 0x50, 0x9b, 0x51,
+  0xee, 0xe5, 0x56, 0x26, 0xad, 0x66, 0x9d, 0xd5, 0x9a, 0x11, 0xd7, 0x37,
+  0xe9, 0x25, 0x1b, 0xaf, 0x37, 0xe4, 0x39, 0x79, 0xac, 0x2b, 0x70, 0xf0,
+  0x0e, 0x47, 0x7d, 0x58, 0xd9, 0x1d, 0x5b, 0xbf, 0x98, 0x99, 0xde, 0x9b,
+  0x7c, 0x32, 0xe1, 0xca, 0xca, 0x52, 0x2d, 0x40, 0x98, 0x66, 0xa4, 0xce,
+  0x51, 0x70, 0x31, 0xa1, 0xeb, 0xda, 0x73, 0xee, 0xeb, 0xc6, 0xbf, 0x6b,
+  0x0f, 0xbc, 0x6a, 0x3a, 0xe4, 0xa6, 0x76, 0x24, 0xf7, 0xf2, 0xd5, 0x65,
+  0x27, 0x05, 0xb1, 0x10, 0x98, 0x4b, 0xd0, 0x8d, 0xd4, 0x5a, 0x6c, 0x61,
+  0xe3, 0x7b, 0x1d, 0xe8, 0x39, 0x62, 0x1d, 0xa1, 0x4b, 0xab, 0xb1, 0xcc,
+  0x4a, 0x28, 0x87, 0x5c, 0x11, 0xad, 0x33, 0x17, 0x57, 0xa3, 0x72, 0x00,
+  0x4b, 0xbe, 0xaf, 0xde, 0x3e, 0xb7, 0xf1, 0x38, 0x8f, 0x4c, 0xf1, 0x7f,
+  0x64, 0x89, 0xe1, 0xc1, 0xac, 0x80, 0xdf, 0x57, 0xb5, 0xfd, 0x5e, 0x98,
+  0xc5, 0xcc, 0x94, 0xf3, 0x2c, 0x97, 0x35, 0x58, 0xe0, 0xe0, 0xf8, 0x12,
+  0x3f, 0x53, 0xfc, 0x5e, 0xcc, 0xf5, 0xe6, 0x27, 0x59, 0xb4, 0xe9, 0xfb,
+  0xc5, 0xbf, 0x09, 0x5a, 0xce, 0x95, 0xf9, 0x39, 0xad, 0xf4, 0x84, 0xc1,
+  0x72, 0xea, 0x0c, 0x3f, 0x18, 0x13, 0xa2, 0x7a, 0xa2, 0xae, 0xf2, 0x6f,
+  0xe5, 0x54, 0x45, 0x50, 0x84, 0x6f, 0x25, 0x98, 0xd2, 0x2a, 0x06, 0xcc,
+  0x48, 0x78, 0x76, 0x25, 0x15, 0xca, 0xdd, 0xcd, 0x21, 0x5b, 0x8d, 0x1e,
+  0xe7, 0xf0, 0xf8, 0xd6, 0x83, 0x88, 0xa2, 0xc3, 0x8a, 0x0b, 0xb6, 0x9c,
+  0x8c, 0x46, 0x4a, 0xb7, 0x53, 0x70, 0x45, 0xdf, 0x27, 0x47, 0x14, 0x1f,
+  0x05, 0x17, 0x0d, 0x8e, 0x84, 0xdb, 0x70, 0x7f, 0x3c, 0xb3, 0x55, 0x29,
+  0xcd, 0xa3, 0x55, 0x5a, 0x71, 0xa1, 0xa6, 0xe2, 0x56, 0x61, 0x3c, 0x5c,
+  0x5e, 0x3a, 0x1b, 0x2f, 0x9a, 0x36, 0xc2, 0xdb, 0x57, 0xbe, 0x24, 0xa3,
+  0x9f, 0xbb, 0xb5, 0x89, 0xa3, 0xa0, 0x06, 0xca, 0xb9, 0xa6, 0x63, 0xef,
+  0xaf, 0x6f, 0x49, 0x68, 0x8f, 0x42, 0x3e, 0x36, 0x4b, 0x3b, 0x16, 0xb3,
+  0xd3, 0x3e, 0x57, 0x19, 0xfb, 0xd8, 0x5c, 0xf8, 0x3a, 0xfa, 0x79, 0xae,
+  0xac, 0x19, 0xf9, 0xf6, 0x3b, 0xf6, 0xc6, 0x78, 0x9f, 0xb6, 0x85, 0x32,
+  0xc4, 0x51, 0x53, 0x07, 0x47, 0x39, 0xf8, 0x32, 0x0a, 0x55, 0x0d, 0x92,
+  0x03, 0x5b, 0xd2, 0x4c, 0x5f, 0xd5, 0xf9, 0x0f, 0x1c, 0x64, 0xc7, 0xe7,
+  0x77, 0x2f, 0x3d, 0xff, 0x26, 0xdd, 0x79, 0xf8, 0x91, 0x95, 0xf8, 0xc1,
+  0x28, 0x6e, 0xab, 0xd1, 0x73, 0xf3, 0xc7, 0x37, 0xf4, 0x07, 0x89, 0x55,
+  0x32, 0x27, 0x99, 0x4c, 0x85, 0x3d, 0x73, 0xe1, 0xd6, 0x1e, 0x9e, 0xd8,
+  0x3f, 0x64, 0xd1, 0x01, 0xe1, 0x25, 0x20, 0x3e, 0x51, 0xaf, 0xb8, 0x24,
+  0x78, 0x28, 0xbf, 0xda, 0x4e, 0x4f, 0x93, 0x63, 0xe2, 0xe8, 0x46, 0x30,
+  0x85, 0xc0, 0x3d, 0x61, 0xfe, 0x4b, 0x5e, 0x88, 0x21, 0x0b, 0xf2, 0x32,
+  0x96, 0x1e, 0x61, 0xa6, 0xea, 0xef, 0xe4, 0xbc, 0xd6, 0x3a, 0xa8, 0x28,
+  0xcb, 0x37, 0xb3, 0x70, 0x58, 0x18, 0x46, 0x36, 0xc6, 0xcf, 0xfe, 0x4a,
+  0x3a, 0x66, 0x2c, 0xce, 0x42, 0x54, 0x94, 0x25, 0x48, 0x59, 0x36, 0x64,
+  0x5c, 0xee, 0xf2, 0x47, 0xe7, 0x66, 0x5f, 0x39, 0x55, 0x6f, 0x91, 0x1c,
+  0x24, 0x07, 0x9e, 0x8f, 0xc2, 0x82, 0x2b, 0x17, 0xea, 0x62, 0x33, 0x46,
+  0x02, 0xab, 0x83, 0x87, 0xc5, 0x2e, 0x64, 0xc5, 0x64, 0x49, 0x3f, 0x67,
+  0xa8, 0x25, 0x41, 0x54, 0xb5, 0x90, 0x0a, 0xb7, 0x1a, 0xbd, 0x9c, 0x65,
+  0x33, 0x0a, 0x86, 0xd8, 0x7b, 0x51, 0xb8, 0x1b, 0x60, 0xfe, 0xd3, 0xc7,
+  0xfa, 0xf1, 0xe6, 0x26, 0xa4, 0xbf, 0xd1, 0x15, 0xcb, 0x68, 0x9b, 0xdf,
+  0x05, 0x11, 0xb0, 0xfa, 0xa1, 0x18, 0xdf, 0xbc, 0x3d, 0x1d, 0xc6, 0x5f,
+  0x0f, 0x07, 0x87, 0xe7, 0x8d, 0x1e, 0x42, 0x9b, 0x41, 0x8a, 0x43, 0x82,
+  0xb8, 0x88, 0x4a, 0xe5, 0x7a, 0xbf, 0x8b, 0x37, 0xd7, 0x7a, 0xc1, 0xfa,
+  0x86, 0x48, 0xb1, 0x60, 0x21, 0x2e, 0x9a, 0x27, 0x30, 0xd6, 0xfd, 0x94,
+  0x8e, 0x42, 0xbc, 0x04, 0x8c, 0x3d, 0xd3, 0x14, 0x41, 0x40, 0xa9, 0x3c,
+  0x34, 0x59, 0x79, 0x78, 0xa1, 0xee, 0xbe, 0x06, 0x4d, 0xb5, 0xfe, 0xf1,
+  0x73, 0x96, 0xf9, 0x24, 0xad, 0xae, 0xb3, 0x48, 0xc0, 0xc9, 0x9f, 0xa1,
+  0x16, 0x44, 0xc4, 0x8b, 0x07, 0x9a, 0xbd, 0x3a, 0xa5, 0xd7, 0x79, 0x9b,
+  0xf6, 0x64, 0xb7, 0xe2, 0x47, 0xd5, 0xb2, 0x21, 0x99, 0x49, 0xd9, 0xfb,
+  0xea, 0xcb, 0xf0, 0xf6, 0x7c, 0x7b, 0xba, 0xe4, 0x73, 0xf4, 0x9b, 0xbe,
+  0x82, 0xe5, 0x45, 0x23, 0xf0, 0x54, 0xfa, 0x70, 0x2e, 0x84, 0xd4, 0x31,
+  0xde, 0x01, 0x65, 0x7c, 0x7c, 0x44, 0x4a, 0x98, 0x27, 0xe4, 0x8f, 0x95,
+  0x0f, 0x0a, 0xcc, 0x35, 0xfe, 0x29, 0xc2, 0xbf, 0x6e, 0x0e, 0x39, 0x23,
+  0xf6, 0x82, 0x03, 0x7b, 0xe7, 0xa2, 0x09, 0x6f, 0x45, 0x96, 0x68, 0x29,
+  0xc8, 0xd6, 0x99, 0x41, 0x49, 0x8c, 0x8a, 0x80, 0xe4, 0xc2, 0x1e, 0xff,
+  0xb1, 0xbd, 0x67, 0xe1, 0x4a, 0x36, 0xdf, 0x01, 0x87, 0xd4, 0x5c, 0xe0,
+  0xa1, 0x82, 0x50, 0xe4, 0x9f, 0x86, 0x88, 0x31, 0x2f, 0xd9, 0xcd, 0x08,
+  0x46, 0x73, 0x14, 0xda, 0xce, 0x01, 0x75, 0x54, 0x35, 0xb1, 0x68, 0x4f,
+  0x86, 0x9c, 0xbd, 0xf7, 0xd8, 0x66, 0xca, 0x23, 0x08, 0xab, 0x55, 0x7c,
+  0x4b, 0xef, 0x8d, 0x92, 0x44, 0x97, 0xeb, 0xe3, 0xc7, 0xd8, 0xee, 0x1b,
+  0xfb, 0x4e, 0xb2, 0x39, 0x32, 0x37, 0xb6, 0x97, 0x3d, 0x4d, 0xf2, 0xe6,
+  0x39, 0x90, 0xc9, 0xf1, 0xe6, 0x5e, 0x7c, 0xfe, 0xe2, 0xf9, 0xd6, 0x96,
+  0x96, 0xb6, 0x63, 0xc0, 0xc4, 0x88, 0x00, 0xf6, 0x39, 0xc9, 0x2d, 0x26,
+  0xa4, 0xa1, 0x09, 0xbe, 0x61, 0x36, 0x72, 0xe7, 0x88, 0x89, 0x37, 0x47,
+  0xf7, 0x98, 0xbe, 0x4a, 0x8b, 0x48, 0x26, 0x38, 0x24, 0xba, 0x35, 0x83,
+  0x53, 0x95, 0x89, 0xb5, 0xf3, 0xc2, 0x2f, 0x95, 0x0a, 0x88, 0x1b, 0x39,
+  0x3f, 0x14, 0xd7, 0x81, 0x85, 0x18, 0xd5, 0x9b, 0x36, 0xcc, 0x6c, 0x3c,
+  0xe7, 0x6b, 0x8f, 0xfe, 0xa0, 0xfd, 0x7c, 0x43, 0xd3, 0x4d, 0x5d, 0x39,
+  0x5f, 0x8c, 0xa6, 0xe6, 0x06, 0x1a, 0x52, 0x7d, 0xc1, 0x4f, 0xc9, 0x49,
+  0x5e, 0x37, 0x22, 0x8c, 0x61, 0x2b, 0x28, 0x68, 0x6e, 0xd9, 0x9d, 0xc3,
+  0x03, 0xa7, 0x9d, 0xc6, 0x5b, 0xcd, 0xcf, 0x25, 0x4f, 0x5c, 0x86, 0x12,
+  0xeb, 0x6d, 0xeb, 0x73, 0xfe, 0x56, 0xbd, 0xb8, 0xea, 0x2f, 0x1b, 0xd8,
+  0xa7, 0xac, 0xf6, 0xcc, 0xb8, 0xfe, 0x3d, 0x29, 0x88, 0x48, 0x91, 0x26,
+  0x37, 0x74, 0xf2, 0x9a, 0x55, 0xc1, 0x68, 0x1d, 0x23, 0x2e, 0xb5, 0x21,
+  0x49, 0x79, 0xbe, 0xd2, 0x08, 0xfd, 0x1b, 0x2e, 0x5b, 0xae, 0x9f, 0xcd,
+  0x08, 0xba, 0x69, 0x86, 0x1a, 0x9b, 0x24, 0xc8, 0x02, 0xd0, 0xb2, 0x2d,
+  0x55, 0x2a, 0xe6, 0x7d, 0x22, 0x5e, 0x0a, 0xf1, 0xbf, 0x02, 0x1b, 0x95,
+  0x22, 0xef, 0x1d, 0xde, 0x1a, 0x4e, 0xb7, 0x66, 0x37, 0xb0, 0x19, 0xc0,
+  0x24, 0x66, 0x81, 0xb5, 0x1d, 0xf4, 0x9a, 0xf4, 0x57, 0xb3, 0x5b, 0x4b,
+  0xbe, 0x12, 0x3a, 0x59, 0x68, 0x5e, 0x43, 0x93, 0xa9, 0x81, 0xf1, 0x9a,
+  0xac, 0x73, 0x7f, 0x08, 0x70, 0x4f, 0x77, 0x88, 0x46, 0x3f, 0x81, 0x9e,
+  0x51, 0x0d, 0x9f, 0x75, 0x64, 0x69, 0x1f, 0xb6, 0x77, 0x1a, 0xab, 0xc1,
+  0xcb, 0x3a, 0xdf, 0x9f, 0x15, 0x84, 0xb3, 0xae, 0xb1, 0xdb, 0x96, 0x71,
+  0x6f, 0x9b, 0xb3, 0xb3, 0x12, 0xc9, 0xfc, 0xe3, 0x80, 0x36, 0x6a, 0x9e,
+  0xa1, 0x0a, 0xf8, 0xfa, 0x9f, 0xfb, 0xeb, 0x71, 0xc5, 0xd7, 0xce, 0x01,
+  0xf9, 0x2e, 0x33, 0x58, 0xa1, 0x2d, 0x0b, 0x4d, 0xbf, 0x62, 0x0b, 0x72,
+  0x2f, 0x46, 0xc6, 0x8c, 0x6a, 0x16, 0xa1, 0x74, 0x94, 0x08, 0x1f, 0xf2,
+  0x24, 0x11, 0xa6, 0xa0, 0x95, 0x70, 0xc9, 0x8c, 0x30, 0xc7, 0x08, 0xab,
+  0xd7, 0x80, 0xbd, 0xcf, 0x9e, 0x66, 0x70, 0xf1, 0x4e, 0xcb, 0xfb, 0x00,
+  0x79, 0x4b, 0xee, 0x54, 0xd7, 0xbb, 0x76, 0x0e, 0x02, 0x55, 0x46, 0xfe,
+  0x2f, 0xfd, 0xe5, 0x47, 0x9a, 0xac, 0x7f, 0xe8, 0x64, 0x49, 0xb7, 0xd3,
+  0x20, 0x5d, 0x0f, 0x76, 0xf0, 0x1f, 0x30, 0x29, 0x7f, 0x25, 0x44, 0x0a,
+  0xcf, 0x8c, 0xe9, 0xf2, 0x0c, 0xcd, 0xfd, 0x61, 0x60, 0xf5, 0x5d, 0x6d,
+  0x82, 0x92, 0x8f, 0xd8, 0xaa, 0x1f, 0x3d, 0x04, 0xbe, 0x23, 0xda, 0x83,
+  0x3f, 0x16, 0x3d, 0x70, 0xe1, 0x19, 0xd3, 0x2b, 0x45, 0x1d, 0x4c, 0xaa,
+  0x84, 0xc3, 0xcb, 0xf8, 0x63, 0x25, 0xb9, 0xef, 0xc6, 0xe8, 0x30, 0x1d,
+  0x27, 0x83, 0x8c, 0x7f, 0x1e, 0x5a, 0x00, 0x84, 0x96, 0xd9, 0xc7, 0x6a,
+  0xfc, 0xa1, 0x5f, 0x3f, 0xcc, 0x46, 0xe5, 0x54, 0x36, 0x3a, 0x0d, 0xd7,
+  0xf4, 0x59, 0x7f, 0xc6, 0xcb, 0x82, 0xc8, 0x46, 0xdf, 0xcb, 0x5d, 0xed,
+  0x45, 0xf9, 0x63, 0xc9, 0x44, 0x29, 0xc7, 0x5c, 0xa5, 0x9c, 0xa0, 0xd7,
+  0x66, 0xbb, 0xff, 0x21, 0x61, 0x28, 0x0e, 0x02, 0x6f, 0x5c, 0xd5, 0x65,
+  0xa2, 0x81, 0xce, 0x85, 0xab, 0x62, 0x18, 0xcd, 0xdd, 0x88, 0x6e, 0x1e,
+  0x6f, 0x75, 0xac, 0x6d, 0x11, 0xcb, 0xfb, 0xa5, 0x13, 0x6a, 0x3a, 0xfa,
+  0x11, 0xc9, 0x22, 0xb2, 0xef, 0x0e, 0xf9, 0x67, 0xfd, 0x4b, 0xfc, 0x4c,
+  0x71, 0x07, 0x92, 0x67, 0x46, 0x91, 0x6c, 0x49, 0x04, 0x23, 0x1f, 0x65,
+  0x5c, 0x4a, 0xb5, 0xc1, 0x4c, 0x04, 0x15, 0x36, 0xa7, 0x3b, 0xe8, 0xa7,
+  0x1e, 0xa6, 0x8f, 0x9c, 0x6c, 0x6f, 0x6c, 0xfe, 0xd5, 0xad, 0x51, 0xe7,
+  0x08, 0xb1, 0x30, 0x4b, 0x05, 0xfe, 0xc3, 0x78, 0x1f, 0xbb, 0x8d, 0x95,
+  0x29, 0x42, 0xaa, 0x4d, 0x97, 0x83, 0xc7, 0x9a, 0xa3, 0x0b, 0x51, 0x21,
+  0xe8, 0x82, 0x94, 0x20, 0xdf, 0x93, 0xb9, 0x72, 0xf4, 0xfe, 0x6d, 0xca,
+  0x29, 0x43, 0x34, 0xa8, 0xe5, 0x47, 0xc6, 0x5a, 0xda, 0x7a, 0xe5, 0xec,
+  0x51, 0x62, 0xb0, 0xc6, 0x59, 0x2f, 0x71, 0xd1, 0x40, 0x85, 0x41, 0x25,
+  0x14, 0x38, 0x5c, 0xdd, 0x9c, 0x8d, 0x2a, 0xba, 0x1a, 0xe9, 0xa8, 0x72,
+  0x55, 0x32, 0x60, 0x0b, 0xfd, 0x44, 0x8d, 0x69, 0xf2, 0x6a, 0x46, 0x62,
+  0x47, 0x49, 0x44, 0xc4, 0x22, 0xee, 0xb4, 0xac, 0x7c, 0xbb, 0x7e, 0x46,
+  0x88, 0x80, 0x56, 0x37, 0xb7, 0xbc, 0x3a, 0xea, 0x55, 0x33, 0xff, 0x48,
+  0xb5, 0x1d, 0x1f, 0x3e, 0x12, 0xae, 0x0f, 0x6b, 0xa6, 0x3e, 0x77, 0xfc,
+  0x00, 0x33, 0xcb, 0x99, 0x6d, 0x8b, 0x39, 0xb5, 0x83, 0x4d, 0x3e, 0x2d,
+  0xd9, 0xa0, 0x79, 0x6c, 0x18, 0x6d, 0x04, 0x9d, 0x9f, 0x41, 0xbd, 0xd9,
+  0xae, 0x2b, 0xf0, 0x3c, 0xe8, 0x18, 0x05, 0xec, 0x3f, 0x22, 0xd2, 0x67,
+  0x37, 0x93, 0xb9, 0x6e, 0xb2, 0x2a, 0x1f, 0xfb, 0x45, 0x76, 0xf0, 0x00,
+  0xb6, 0x14, 0xf3, 0x25, 0x51, 0xe8, 0x2f, 0x4a, 0x0d, 0xd7, 0xf9, 0x1f,
+  0x78, 0x47, 0xa5, 0xa6, 0x10, 0x28, 0x8f, 0x14, 0x20, 0x96, 0x48, 0x6c,
+  0x96, 0x90, 0x08, 0x2e, 0x62, 0x7b, 0xfc, 0xc8, 0x38, 0xc1, 0x3d, 0xb9,
+  0x87, 0xb1, 0x1a, 0xf5, 0x2c, 0xad, 0x6d, 0x07, 0x79, 0x04, 0x38, 0x51,
+  0x18, 0xaf, 0x72, 0x5d, 0x3c, 0x7a, 0x0e, 0x19, 0xb2, 0x43, 0xb7, 0xfe,
+  0x60, 0xc9, 0xcc, 0x30, 0xd4, 0x52, 0x64, 0x80, 0x9b, 0x1a, 0x9e, 0x12,
+  0xd1, 0x73, 0xba, 0x93, 0x12, 0xc3, 0x08, 0x26, 0x5d, 0xfc, 0xbb, 0xf2,
+  0x82, 0x6c, 0xb2, 0x6b, 0x5b, 0xab, 0x0e, 0x6c, 0x09, 0x0e, 0x4c, 0x75,
+  0x24, 0xa5, 0x12, 0x79, 0xac, 0x39, 0x88, 0xa1, 0xce, 0x82, 0xef, 0x2d,
+  0x5b, 0x70, 0x55, 0x68, 0x65, 0x58, 0xf4, 0x33, 0xeb, 0xd4, 0xf0, 0x07,
+  0x95, 0x58, 0x19, 0x34, 0x7d, 0x48, 0xa2, 0xf4, 0xa3, 0x9d, 0xff, 0xf1,
+  0x3f, 0xff, 0x22, 0x56, 0xb6, 0x17, 0xc8, 0xcb, 0x8f, 0xf9, 0xdc, 0x13,
+  0x5e, 0xc7, 0xe7, 0xb6, 0xfa, 0xa8, 0x45, 0x73, 0x31, 0x40, 0x93, 0x4e,
+  0x84, 0x07, 0xf1, 0xa2, 0x53, 0xfe, 0xd8, 0x34, 0x8c, 0x91, 0x82, 0x98,
+  0xb0, 0xe9, 0xec, 0x51, 0x94, 0xf5, 0x55, 0x4b, 0x12, 0x43, 0xfa, 0xf8,
+  0x1c, 0xb5, 0x4a, 0x57, 0x37, 0x07, 0x17, 0x52, 0xab, 0xf2, 0xf1, 0xab,
+  0xa5, 0x43, 0xe2, 0x7a, 0xbb, 0x32, 0x24, 0xee, 0xbe, 0x4f, 0x42, 0xac,
+  0x05, 0xe8, 0x4b, 0x3e, 0x10, 0x7e, 0x37, 0x57, 0xf7, 0xc1, 0x1b, 0xc3,
+  0xa3, 0x3d, 0x31, 0xdf, 0xfa, 0xe8, 0x28, 0x2c, 0x93, 0x53, 0xa9, 0x63,
+  0x6b, 0xbe, 0x6d, 0xf4, 0x02, 0x47, 0x6e, 0x89, 0xda, 0x84, 0xb9, 0x16,
+  0x2c, 0x1b, 0xc3, 0xc3, 0x1b, 0xd3, 0x67, 0x93, 0x88, 0x7a, 0xdb, 0xd9,
+  0x5f, 0xcf, 0xa2, 0x7d, 0xd0, 0x32, 0x47, 0xb5, 0xed, 0x83, 0xe9, 0x82,
+  0xfb, 0xa1, 0xec, 0x2f, 0xba, 0x04, 0xcd, 0xb1, 0x91, 0xe2, 0x63, 0x5a,
+  0x67, 0xfd, 0x97, 0xed, 0xf3, 0xb0, 0x1f, 0x38, 0x4c, 0x1f, 0xeb, 0x7a,
+  0x4a, 0x9b, 0x3d, 0xbf, 0x7a, 0x30, 0x9d, 0xaa, 0x97, 0xe6, 0x18, 0xfb,
+  0x77, 0x29, 0x3f, 0xa7, 0x0b, 0xe6, 0x59, 0x96, 0x1b, 0x35, 0x9c, 0x7f,
+  0xf3, 0x8c, 0x2a, 0xbc, 0x32, 0x7b, 0xe2, 0x23, 0x33, 0x06, 0x72, 0x45,
+  0x7c, 0xde, 0x05, 0xc4, 0x44, 0x86, 0x5a, 0xbd, 0x61, 0x40, 0x35, 0xff,
+  0x60, 0x34, 0x3d, 0x3a, 0xf8, 0x56, 0x4b, 0xd4, 0x88, 0x8b, 0x01, 0xb7,
+  0x27, 0x84, 0x52, 0xb5, 0x82, 0x09, 0xd1, 0xf9, 0xff, 0xc8, 0x62, 0x05,
+  0x81, 0x5b, 0xad, 0xeb, 0x67, 0xab, 0x57, 0xa6, 0xb2, 0x3b, 0x34, 0xf4,
+  0x4a, 0x45, 0xd8, 0xb9, 0x06, 0xfb, 0x23, 0x43, 0xd5, 0xf2, 0x53, 0xbc,
+  0x9e, 0xde, 0x62, 0x6f, 0x12, 0xb6, 0x05, 0x94, 0x4b, 0x28, 0x44, 0x87,
+  0x5f, 0x2c, 0xf7, 0x45, 0x3a, 0x1a, 0xa4, 0x66, 0xcb, 0xe2, 0x76, 0x54,
+  0x6b, 0x13, 0xc8, 0x02, 0x48, 0x8c, 0x70, 0x07, 0x8c, 0x89, 0x38, 0x1b,
+  0x18, 0x9d, 0xf4, 0xb1, 0x6d, 0x23, 0xd4, 0x59, 0x5c, 0xe0, 0x00, 0xa6,
+  0xce, 0x35, 0x08, 0x1e, 0xca, 0xce, 0x56, 0x32, 0xf7, 0x4b, 0x64, 0xe6,
+  0xe8, 0x5e, 0xb5, 0x42, 0xeb, 0xd2, 0x5d, 0xb5, 0x6d, 0xd1, 0xf5, 0x4f,
+  0x1f, 0xf0, 0x25, 0x42, 0xaa, 0x23, 0x87, 0x1e, 0xbb, 0x23, 0xa3, 0xa2,
+  0x41, 0xc6, 0xa0, 0x52, 0xca, 0x1b, 0xc3, 0x32, 0x29, 0xf5, 0x5b, 0x09,
+  0x29, 0x01, 0x0e, 0xb6, 0x6c, 0x3a, 0x20, 0xc9, 0xe4, 0x17, 0x9b, 0xb5,
+  0x23, 0x9a, 0xa3, 0x4c, 0xa3, 0x89, 0xf5, 0xac, 0x6f, 0xc5, 0x18, 0x37,
+  0xba, 0x1a, 0x9d, 0xd9, 0xc1, 0xfe, 0xa5, 0x85, 0xb8, 0xed, 0xa3, 0x67,
+  0x83, 0x28, 0x4b, 0x3e, 0x5a, 0xba, 0x63, 0x8e, 0x70, 0xa0, 0x3e, 0xa2,
+  0x2b, 0x68, 0xcc, 0xe4, 0x33, 0x7c, 0x7e, 0x49, 0x72, 0xe9, 0xd3, 0x11,
+  0x67, 0x16, 0x5a, 0xd3, 0x60, 0xe9, 0xaa, 0xd6, 0x34, 0xc1, 0xca, 0x36,
+  0x85, 0x98, 0xe3, 0x23, 0x27, 0x8d, 0x38, 0xc4, 0xa2, 0x5f, 0xb4, 0x4c,
+  0x65, 0x3c, 0xa7, 0xfc, 0xc9, 0x15, 0x23, 0xf0, 0x4c, 0xe7, 0xd5, 0x5f,
+  0xf4, 0x45, 0x44, 0xfc, 0xd3, 0x82, 0x9c, 0x4e, 0x9e, 0x36, 0x75, 0x4b,
+  0xe1, 0xe9, 0x60, 0x7a, 0x76, 0xeb, 0x40, 0x6d, 0xa5, 0x14, 0x71, 0xbf,
+  0xf6, 0xb8, 0xa8, 0x99, 0x1f, 0xdc, 0x99, 0x37, 0x46, 0x76, 0xd6, 0x8b,
+  0x8a, 0xab, 0x57, 0x3e, 0xae, 0xee, 0xa9, 0x07, 0xc7, 0xb6, 0x47, 0x24,
+  0x43, 0x6d, 0x92, 0xec, 0x25, 0xbd, 0xb2, 0x43, 0xc4, 0xe4, 0x6a, 0xb7,
+  0x14, 0x33, 0xfe, 0x2b, 0xf5, 0x8a, 0x5b, 0x7b, 0x4a, 0x9f, 0xfe, 0xd9,
+  0x7b, 0xad, 0x7b, 0x93, 0xe1, 0xaa, 0xb2, 0x37, 0xcc, 0x93, 0x84, 0xfd,
+  0xea, 0xab, 0xac, 0x75, 0x5b, 0x3d, 0x7e, 0x66, 0x97, 0x5d, 0x65, 0xbb,
+  0x31, 0x11, 0x42, 0xd2, 0xe1, 0x63, 0x3a, 0x9f, 0x8b, 0xd8, 0x79, 0x7c,
+  0xec, 0xcc, 0xe2, 0xc2, 0xf5, 0x95, 0x88, 0x51, 0x9d, 0x4b, 0x2e, 0x53,
+  0x89, 0xf5, 0x5b, 0x65, 0xb8, 0x61, 0x80, 0x15, 0x85, 0x32, 0x57, 0x37,
+  0xc7, 0x45, 0x63, 0xf9, 0x71, 0xe2, 0xb2, 0x1d, 0x0e, 0xbf, 0xde, 0xce,
+  0x9a, 0xb1, 0x95, 0x81, 0xdb, 0x0e, 0x34, 0xc5, 0x66, 0xd9, 0x63, 0x37,
+  0x13, 0x84, 0x30, 0xea, 0x5a, 0xd0, 0x3c, 0x58, 0x17, 0xe3, 0x53, 0xa7,
+  0xa1, 0x6d, 0xa1, 0xfc, 0x46, 0x03, 0x25, 0x1a, 0xbc, 0xc4, 0x7e, 0x89,
+  0xab, 0x4e, 0x66, 0xad, 0xbe, 0x6f, 0x3e, 0xb6, 0xcf, 0xc5, 0xb8, 0x69,
+  0x8f, 0x31, 0x3a, 0x22, 0xb2, 0xbb, 0x09, 0x2d, 0xb1, 0x98, 0xff, 0x1f,
+  0x58, 0x58, 0x64, 0x11, 0xb8, 0x58, 0x1c, 0xd0, 0x25, 0x8f, 0x77, 0x79,
+  0x4e, 0x26, 0x2e, 0x5b, 0xb1, 0x8f, 0xf7, 0x59, 0x3a, 0x0d, 0x85, 0x37,
+  0xd2, 0x6d, 0xf4, 0x9a, 0x71, 0xb5, 0x3f, 0xa3, 0xcf, 0x9c, 0x49, 0xa7,
+  0x95, 0xd5, 0xa9, 0xcb, 0x70, 0x19, 0xda, 0xfa, 0xcb, 0x46, 0xab, 0xb8,
+  0xce, 0x8b, 0xa7, 0xf8, 0x7e, 0x2c, 0xc4, 0x81, 0x31, 0x03, 0x59, 0xdf,
+  0xb6, 0x2a, 0x59, 0x5c, 0x1c, 0xc5, 0xa0, 0xc4, 0xfd, 0x47, 0xc5, 0x44,
+  0x2a, 0x24, 0x7c, 0x24, 0x2a, 0x3c, 0x7f, 0xe8, 0x58, 0x3d, 0x16, 0x04,
+  0x82, 0xc8, 0xc7, 0x0b, 0x4a, 0x61, 0x8e, 0x94, 0x0d, 0x0b, 0xbc, 0x1c,
+  0x46, 0x07, 0xe0, 0xd4, 0x85, 0x3b, 0x8a, 0x69, 0x2e, 0x59, 0x0b, 0xab,
+  0xeb, 0x2d, 0xd9, 0x20, 0x54, 0xff, 0x18, 0xf3, 0x2c, 0xa5, 0xa4, 0xf5,
+  0xf9, 0x47, 0xc5, 0x94, 0x11, 0x71, 0xf3, 0xda, 0x4b, 0x87, 0xc5, 0x36,
+  0xe1, 0x8d, 0xda, 0xd3, 0xc3, 0xd1, 0x4b, 0x9e, 0xbc, 0x15, 0x10, 0x0a,
+  0xb2, 0x73, 0x6b, 0x6b, 0x86, 0xb3, 0xa3, 0x9c, 0xe9, 0x05, 0xe9, 0x97,
+  0xe9, 0x58, 0xd5, 0xfd, 0xc7, 0x7a, 0x97, 0x72, 0x79, 0x86, 0xf6, 0x24,
+  0x30, 0x06, 0xa3, 0x75, 0xc9, 0x30, 0xb4, 0xe4, 0x29, 0x22, 0x5e, 0x68,
+  0xd1, 0x00, 0x0d, 0xd6, 0xac, 0x28, 0x7f, 0xbe, 0xea, 0xc1, 0xd3, 0xb5,
+  0xd2, 0xa8, 0x91, 0x86, 0xbe, 0xa2, 0xe7, 0x4f, 0x3f, 0x3e, 0xbf, 0x8d,
+  0x88, 0x63, 0x8c, 0x0f, 0x69, 0x2a, 0x91, 0xc3, 0x33, 0xca, 0x9e, 0x6a,
+  0x20, 0x13, 0xdf, 0x5d, 0xe7, 0x18, 0x75, 0x05, 0x84, 0x22, 0xda, 0xc2,
+  0x82, 0xdd, 0x11, 0xcd, 0x40, 0x56, 0xa0, 0x85, 0xfe, 0x25, 0xee, 0x4d,
+  0x25, 0x74, 0x35, 0x1a, 0x32, 0x1d, 0x9f, 0x26, 0x7b, 0xca, 0x4d, 0x43,
+  0xf7, 0x7f, 0xfc, 0xcc, 0x88, 0xae, 0xd8, 0xd2, 0xdf, 0xc2, 0x79, 0xd6,
+  0x24, 0x56, 0xc9, 0x2a, 0x07, 0x3c, 0xf1, 0x29, 0xdb, 0x88, 0xbc, 0x61,
+  0x91, 0xd3, 0x0a, 0x56, 0x53, 0x55, 0xd5, 0xf9, 0xcb, 0x36, 0xdd, 0x02,
+  0x1e, 0x35, 0x4a, 0x7b, 0x02, 0x81, 0x1f, 0x19, 0xfc, 0xca, 0x7b, 0x00,
+  0xdb, 0x84, 0xb4, 0x8c, 0xfe, 0x63, 0xbe, 0x58, 0xf5, 0x5a, 0x13, 0x00,
+  0x0f, 0xa9, 0xb8, 0xd3, 0x89, 0xa3, 0x73, 0x51, 0x43, 0xd5, 0xd2, 0x70,
+  0xee, 0xaf, 0x6e, 0x4e, 0xd9, 0x7b, 0x7f, 0x43, 0xea, 0xb6, 0x4f, 0xa9,
+  0x39, 0x05, 0x51, 0x50, 0x7a, 0x9d, 0xe2, 0x22, 0xb2, 0x49, 0xa0, 0xd6,
+  0xa9, 0xde, 0xae, 0x05, 0xd5, 0x2e, 0xf4, 0x50, 0x37, 0x65, 0x90, 0xb7,
+  0x43, 0xca, 0x1e, 0xc5, 0x1c, 0x71, 0x5b, 0x18, 0x2b, 0x2b, 0xe5, 0xf4,
+  0xbb, 0xc2, 0x88, 0x84, 0x86, 0xbd, 0xcf, 0xe2, 0xab, 0xa7, 0xae, 0xe4,
+  0xa3, 0x45, 0x83, 0x30, 0xb5, 0x63, 0xf6, 0x8a, 0x80, 0xd2, 0x25, 0x31,
+  0x0c, 0x5f, 0xb3, 0xfe, 0xcf, 0x4f, 0x93, 0xeb, 0x41, 0x59, 0xe5, 0x74,
+  0xe3, 0x00, 0x73, 0xa7, 0xad, 0xd1, 0xd6, 0xef, 0x41, 0x9e, 0x90, 0x4d,
+  0x11, 0x6b, 0x4e, 0x22, 0x2f, 0x89, 0xd2, 0x74, 0xb5, 0xdb, 0x9d, 0x61,
+  0xb3, 0x22, 0x00, 0x63, 0xdb, 0x1c, 0xd8, 0x54, 0xb5, 0x58, 0x84, 0x52,
+  0x32, 0x6a, 0x12, 0x57, 0x05, 0x49, 0x31, 0x03, 0x76, 0xc8, 0x6e, 0xac,
+  0x14, 0x1b, 0xbb, 0x4f, 0x2b, 0xe4, 0x86, 0x06, 0x1e, 0x8a, 0xbc, 0xae,
+  0x17, 0x58, 0xb0, 0x77, 0xc7, 0x27, 0x47, 0x16, 0x14, 0xf4, 0xbf, 0xb7,
+  0x07, 0x34, 0xe1, 0xd5, 0x38, 0x80, 0x40, 0x71, 0x52, 0x96, 0x97, 0x61,
+  0x27, 0x59, 0x5b, 0xdf, 0xf4, 0xb8, 0x60, 0x0c, 0x7e, 0xdc, 0x4a, 0xd9,
+  0x3a, 0x3a, 0xfd, 0xf6, 0xf8, 0xe2, 0xec, 0xf4, 0xfd, 0xd1, 0xa9, 0xf5,
+  0xf6, 0xd2, 0xa1, 0x88, 0xb1, 0xbe, 0xd6, 0x61, 0xd0, 0x37, 0xa7, 0x78,
+  0x01, 0x51, 0x0f, 0xa2, 0xd2, 0x15, 0x51, 0x6d, 0xcc, 0xe7, 0xf2, 0xaf,
+  0x81, 0xdf, 0x9c, 0xf7, 0x90, 0x7a, 0x7c, 0x29, 0x0e, 0x3f, 0x27, 0x7b,
+  0x7f, 0x42, 0xa1, 0xb7, 0x01, 0xfb, 0x88, 0x6d, 0xc9, 0x2d, 0x22, 0x9e,
+  0xfd, 0x34, 0xce, 0xa4, 0x00, 0x26, 0x25, 0x68, 0xac, 0xd9, 0x29, 0xe1,
+  0x28, 0x91, 0x0b, 0xa6, 0xb5, 0x3a, 0xe1, 0x36, 0xf7, 0x07, 0x4e, 0x1a,
+  0x8c, 0x33, 0xd8, 0x32, 0x00, 0xdc, 0xaf, 0xc6, 0x78, 0xc3, 0x20, 0x06,
+  0x29, 0xc6, 0x27, 0xa4, 0xd3, 0x1e, 0x84, 0xce, 0x65, 0xdc, 0xfa, 0xd5,
+  0xc1, 0xba, 0x71, 0x3f, 0x6f, 0x14, 0x3f, 0xa8, 0x0b, 0x61, 0x7f, 0x7b,
+  0xfb, 0x27, 0x94, 0xa5, 0xfb, 0x42, 0xea, 0xd2, 0x85, 0x34, 0x66, 0xb5,
+  0xd7, 0x11, 0x11, 0xb9, 0x5e, 0x0a, 0x0f, 0xed, 0x5b, 0x3b, 0x9d, 0x70,
+  0x0e, 0x7e, 0x3c, 0xbf, 0x38, 0xfb, 0xfe, 0x2f, 0xbf, 0xf2, 0x27, 0x3c,
+  0xac, 0xce, 0x0f, 0x04, 0x61, 0xd3, 0xc6, 0x7f, 0xfa, 0x45, 0x5f, 0x5b,
+  0xf9, 0xb9, 0x76, 0xfb, 0xbd, 0x76, 0x35, 0xcf, 0x20, 0x41, 0x09, 0xd9,
+  0x90, 0x4c, 0x16, 0xaf, 0xb9, 0x91, 0xce, 0xea, 0xb5, 0x00, 0x1a, 0xbe,
+  0xe1, 0xea, 0x56, 0x71, 0xbf, 0x58, 0xb5, 0x0b, 0x90, 0x3d, 0x20, 0x45,
+  0xcf, 0x01, 0x20, 0x35, 0x4d, 0x93, 0x52, 0x31, 0x39, 0x59, 0x13, 0x80,
+  0x3e, 0x3b, 0x1f, 0x07, 0x27, 0x27, 0xbf, 0x7c, 0x12, 0x94, 0x9f, 0xbd,
+  0x3d, 0x0d, 0xa8, 0xee, 0x65, 0x07, 0xd4, 0xb7, 0x5a, 0xaa, 0x1e, 0x81,
+  0x55, 0x6c, 0x72, 0xa7, 0x67, 0xd2, 0x9b, 0xd7, 0x50, 0x8f, 0xfb, 0x75,
+  0x66, 0x94, 0x5a, 0xaa, 0xee, 0x9b, 0x4c, 0x09, 0x13, 0x63, 0xcc, 0x6d,
+  0xea, 0x58, 0x50, 0xc3, 0xcb, 0xff, 0x25, 0x83, 0xd1, 0x78, 0x1e, 0x39,
+  0x97, 0x08, 0x68, 0xef, 0xd2, 0x12, 0x7c, 0x70, 0x71, 0x41, 0xa9, 0x6f,
+  0x77, 0x15, 0xab, 0x5f, 0x86, 0x1b, 0x81, 0xae, 0xd9, 0x2a, 0xaf, 0x6f,
+  0x01, 0x85, 0xa7, 0x83, 0x09, 0x65, 0x57, 0xf3, 0x60, 0x49, 0xd7, 0x45,
+  0x57, 0x56, 0xb0, 0x80, 0x3f, 0x23, 0x0a, 0x2d, 0xbe, 0x53, 0xa2, 0x27,
+  0x55, 0x8b, 0x07, 0xb9, 0xfd, 0x84, 0x64, 0xf2, 0x8e, 0xa0, 0xbc, 0xb2,
+  0x39, 0x34, 0xfe, 0xf1, 0x74, 0xa1, 0x54, 0x70, 0x50, 0x00, 0xb7, 0xa6,
+  0x93, 0xf7, 0x86, 0x55, 0x4a, 0x64, 0x98, 0x07, 0x89, 0xf2, 0x92, 0xeb,
+  0x22, 0x77, 0x77, 0xff, 0x53, 0xa2, 0xa9, 0xee, 0x3c, 0x25, 0x7e, 0x3e,
+  0x8c, 0xfe, 0xe6, 0x29, 0xcd, 0x11, 0x17, 0x32, 0xb9, 0x1c, 0x28, 0x34,
+  0x2e, 0x9b, 0xc3, 0xfc, 0x41, 0x00, 0xc4, 0x46, 0xb6, 0x26, 0x50, 0xa2,
+  0x39, 0xa7, 0x83, 0xf7, 0x54, 0x67, 0x0f, 0xa0, 0x10, 0xe1, 0x08, 0xdc,
+  0x27, 0x1e, 0xef, 0x72, 0x24, 0x3a, 0x67, 0x1e, 0x23, 0x17, 0x28, 0xf3,
+  0x1f, 0xf8, 0xed, 0xb9, 0xfe, 0xb2, 0x6a, 0x28, 0x7d, 0x45, 0x4f, 0x65,
+  0xab, 0xc4, 0x82, 0x20, 0x66, 0xbd, 0x79, 0x87, 0x9a, 0xff, 0x5e, 0x9e,
+  0x1d, 0x9e, 0x9d, 0x98, 0xbf, 0x1c, 0xbd, 0x3b, 0xfe, 0xde, 0x5d, 0x62,
+  0xb2, 0x01, 0x6c, 0x26, 0x0a, 0x87, 0x01, 0xb5, 0xdc, 0xa4, 0x2f, 0x3d,
+  0x18, 0xc9, 0x14, 0xb0, 0x5f, 0xb4, 0x99, 0xdb, 0xbc, 0x63, 0x29, 0x15,
+  0x23, 0x5b, 0xd5, 0x1f, 0x85, 0x7a, 0x83, 0x94, 0x3e, 0x6e, 0xd5, 0x22,
+  0xa7, 0xdd, 0xce, 0x3c, 0x6e, 0x9d, 0x48, 0x28, 0x02, 0xfe, 0x45, 0xd7,
+  0x3e, 0xcb, 0xdc, 0x29, 0x84, 0x94, 0xf3, 0x2b, 0xab, 0xfd, 0xfb, 0x95,
+  0xee, 0x34, 0x83, 0x42, 0x28, 0x94, 0x29, 0xba, 0xea, 0xc8, 0xf5, 0x48,
+  0x29, 0xeb, 0x79, 0x83, 0x54, 0xfd, 0xac, 0xa9, 0x32, 0x9c, 0x63, 0xe0,
+  0x34, 0x5a, 0x59, 0xde, 0x1d, 0xa0, 0x21, 0xdd, 0xaa, 0xae, 0xb9, 0xf6,
+  0x98, 0x64, 0x02, 0x04, 0x0f, 0x84, 0x38, 0x31, 0x4a, 0x48, 0x3b, 0xc8,
+  0x09, 0x97, 0x69, 0x34, 0x73, 0x15, 0x4d, 0x0f, 0xca, 0xf9, 0x5e, 0x24,
+  0x36, 0xba, 0xbb, 0x14, 0xc9, 0x18, 0x54, 0x58, 0x54, 0x6a, 0x3b, 0x76,
+  0xda, 0x48, 0x7f, 0x51, 0x23, 0x69, 0xbb, 0x95, 0x17, 0xbf, 0xa4, 0x91,
+  0x17, 0x9d, 0x36, 0x6e, 0x7e, 0x51, 0x23, 0xb6, 0xbe, 0xb3, 0x51, 0x85,
+  0xbe, 0x3f, 0xbe, 0x4c, 0x0e, 0xcf, 0xde, 0xba, 0x3d, 0x7a, 0x69, 0xe1,
+  0x8e, 0x69, 0x32, 0x5a, 0x14, 0x66, 0x15, 0x89, 0x3e, 0x1b, 0x35, 0xa1,
+  0xa8, 0x19, 0x06, 0x41, 0x72, 0x58, 0x5e, 0x09, 0x1e, 0xcc, 0x97, 0x72,
+  0xfc, 0xa8, 0xe2, 0x68, 0xbb, 0x4f, 0x92, 0x27, 0x8f, 0xcf, 0x88, 0x2e,
+  0xe2, 0xda, 0xd1, 0xfc, 0xd1, 0xce, 0x26, 0xd6, 0xa0, 0xb4, 0xd2, 0x44,
+  0xac, 0x51, 0x4a, 0xa4, 0x10, 0x05, 0x67, 0x14, 0x11, 0x94, 0xbb, 0xc5,
+  0xaf, 0xb8, 0xe6, 0x67, 0x9c, 0x0a, 0xd7, 0x62, 0x4f, 0xf2, 0x37, 0xf2,
+  0x46, 0x7a, 0xd3, 0x42, 0x18, 0xed, 0x2a, 0x42, 0xb6, 0xb5, 0x63, 0xa4,
+  0x2a, 0x01, 0x8c, 0x1c, 0x82, 0x42, 0x82, 0x48, 0x06, 0xe7, 0x91, 0xeb,
+  0x70, 0x58, 0xad, 0x95, 0x4b, 0x96, 0x05, 0x57, 0x92, 0x6d, 0xc2, 0x7e,
+  0x67, 0x8f, 0xff, 0x78, 0x67, 0x34, 0x33, 0x06, 0x44, 0x08, 0xde, 0x24,
+  0xff, 0xbb, 0xa7, 0x97, 0x3d, 0xb3, 0xd7, 0xb0, 0x19, 0xf9, 0x14, 0x75,
+  0xb0, 0x26, 0x0c, 0x2d, 0xac, 0x1f, 0x8a, 0x26, 0xfd, 0x04, 0x3b, 0x8c,
+  0x94, 0x66, 0xa1, 0xc5, 0x70, 0x6f, 0x3e, 0x97, 0xcb, 0x38, 0xb1, 0xfc,
+  0x1b, 0x38, 0x7f, 0x9a, 0xdd, 0xe3, 0x41, 0x08, 0xc4, 0x5c, 0x35, 0x3d,
+  0xd0, 0xec, 0x42, 0xc4, 0x3c, 0xb2, 0x9a, 0xaa, 0x73, 0xad, 0x45, 0xc3,
+  0xbb, 0xf6, 0xb3, 0x9a, 0xa8, 0x58, 0x56, 0x02, 0x47, 0x70, 0x05, 0x26,
+  0x1c, 0x71, 0x02, 0xd5, 0xd4, 0xe6, 0x49, 0xeb, 0x47, 0xd9, 0xd8, 0x91,
+  0xce, 0x8e, 0xfc, 0x25, 0xc9, 0x00, 0x12, 0x9d, 0x73, 0x52, 0x0a, 0x2b,
+  0x26, 0x01, 0xec, 0xa8, 0x56, 0xa0, 0xf9, 0xc5, 0x03, 0x57, 0xb6, 0x48,
+  0x0b, 0x24, 0xea, 0x74, 0xf1, 0x82, 0xba, 0x30, 0x92, 0xc5, 0xe0, 0x52,
+  0x06, 0x5e, 0xf0, 0x1f, 0x87, 0x7a, 0x77, 0x6b, 0xc9, 0x62, 0xbd, 0xb4,
+  0xe1, 0xf6, 0x13, 0x0a, 0x22, 0x91, 0x5a, 0xb8, 0xf8, 0x29, 0x91, 0x9d,
+  0x0a, 0xae, 0x83, 0x9a, 0x7f, 0x14, 0x72, 0x24, 0xd6, 0x1d, 0x3f, 0xd7,
+  0xcb, 0x25, 0xdf, 0x61, 0x96, 0x8c, 0x4b, 0xcb, 0xd6, 0xd1, 0xf5, 0x2a,
+  0x53, 0xfb, 0x61, 0x6b, 0x9f, 0x75, 0xb7, 0x88, 0x7a, 0x78, 0x89, 0x4b,
+  0xad, 0xf4, 0x63, 0x3d, 0x9f, 0x8b, 0x35, 0x9a, 0x51, 0xd6, 0x8f, 0xe8,
+  0x4e, 0x55, 0x36, 0xa7, 0x82, 0xcb, 0x97, 0xae, 0xf0, 0x1b, 0x02, 0x4a,
+  0xb0, 0x28, 0x31, 0xcf, 0x63, 0xed, 0xa5, 0x51, 0x88, 0x7c, 0x63, 0xe0,
+  0x95, 0x7c, 0x96, 0x72, 0x52, 0xf8, 0x4a, 0x23, 0x6c, 0x65, 0x91, 0xdb,
+  0xad, 0x27, 0x65, 0xe4, 0xf0, 0x23, 0xc2, 0x40, 0x19, 0x81, 0x5f, 0xda,
+  0x7f, 0xcb, 0x1b, 0x01, 0x79, 0x50, 0xc7, 0x9d, 0x48, 0xa3, 0x5d, 0x54,
+  0x9c, 0xf5, 0xe6, 0x08, 0xb3, 0x80, 0x2f, 0x4d, 0x8b, 0x46, 0x20, 0x42,
+  0x15, 0xb1, 0x1c, 0x99, 0xe5, 0x79, 0x1f, 0x02, 0x4b, 0xca, 0xab, 0x46,
+  0xe8, 0x54, 0x12, 0x50, 0xe6, 0xf3, 0xfc, 0xdc, 0xa4, 0xc5, 0x75, 0xc6,
+  0xca, 0x96, 0xc7, 0xf9, 0x45, 0x7b, 0x5d, 0x6f, 0x18, 0x73, 0xec, 0x61,
+  0xe6, 0xc7, 0x6a, 0x1a, 0x77, 0xf8, 0x5f, 0x77, 0x77, 0xec, 0x3c, 0xd0,
+  0xa0, 0xe6, 0x0d, 0xe0, 0xdd, 0x34, 0x0b, 0xdf, 0x81, 0xe4, 0xe9, 0x3e,
+  0x65, 0xea, 0x56, 0xad, 0x52, 0xe8, 0x74, 0x56, 0xeb, 0x89, 0xa7, 0xa4,
+  0x8e, 0x10, 0x4c, 0x49, 0x8a, 0x76, 0x41, 0xd1, 0x71, 0xba, 0x62, 0x19,
+  0x0d, 0xc6, 0x09, 0x42, 0xe2, 0x9d, 0xe8, 0xc1, 0x12, 0x83, 0x00, 0xb4,
+  0xb8, 0x29, 0xac, 0x1d, 0x41, 0xcb, 0x97, 0xd8, 0xe4, 0x44, 0x05, 0xe2,
+  0x45, 0x79, 0x09, 0x44, 0xce, 0xdc, 0x93, 0xde, 0x78, 0x76, 0xed, 0x78,
+  0xee, 0xb1, 0x51, 0xce, 0x0f, 0x86, 0x43, 0xdd, 0x26, 0x87, 0xe1, 0x8e,
+  0x90, 0x18, 0x02, 0x88, 0x0a, 0x24, 0xcb, 0x30, 0x62, 0xc5, 0x4b, 0x23,
+  0x9d, 0xe0, 0xe3, 0x2e, 0x8b, 0xb7, 0xb7, 0x2c, 0xa3, 0x13, 0x10, 0x7b,
+  0x88, 0x1f, 0x09, 0xfb, 0x4a, 0x47, 0x7c, 0xbf, 0x7a, 0x26, 0xe3, 0xe5,
+  0x5f, 0x31, 0xad, 0x98, 0x67, 0xe4, 0xf3, 0xa9, 0xb8, 0x27, 0x67, 0xa0,
+  0x11, 0x40, 0xed, 0xa2, 0x82, 0xbb, 0xcf, 0xc2, 0x41, 0x7f, 0xcb, 0xa3,
+  0xea, 0xfd, 0x53, 0x83, 0xfe, 0x36, 0x32, 0xe8, 0xe7, 0xee, 0xe0, 0xf0,
+  0xc7, 0x92, 0xbd, 0xbd, 0xcf, 0x14, 0x56, 0xcd, 0x8e, 0x9a, 0x69, 0xe2,
+  0x3e, 0xe8, 0x7d, 0xd1, 0x3c, 0xd7, 0x07, 0x30, 0x38, 0xfc, 0x96, 0x77,
+  0x78, 0xbd, 0x4f, 0xbd, 0xb0, 0x9f, 0x1a, 0xa7, 0xb0, 0x46, 0x8c, 0xa6,
+  0xc9, 0x52, 0x26, 0x10, 0x3e, 0xb6, 0x2e, 0xfb, 0x31, 0xcd, 0x81, 0xb1,
+  0x5b, 0x9a, 0x65, 0x60, 0x1e, 0xed, 0x85, 0xf7, 0x9d, 0x97, 0xd6, 0x90,
+  0xde, 0xde, 0xe3, 0x3d, 0x69, 0xae, 0x58, 0xad, 0xdc, 0x8a, 0x9d, 0x39,
+  0xc9, 0x1a, 0xb3, 0x26, 0xce, 0x07, 0xc4, 0x49, 0x2b, 0x57, 0x55, 0x0a,
+  0xfa, 0x4a, 0x94, 0x8b, 0x1d, 0x2c, 0xe1, 0x48, 0x65, 0x35, 0x3a, 0xa5,
+  0xde, 0x17, 0x84, 0xdb, 0x83, 0x5a, 0x20, 0x8e, 0x13, 0xf2, 0xc4, 0xa1,
+  0x36, 0xef, 0x95, 0x75, 0xd6, 0x69, 0xbd, 0xd8, 0x5e, 0x30, 0x43, 0x3c,
+  0x48, 0x3e, 0x32, 0xa2, 0x32, 0xc4, 0xe9, 0x76, 0x76, 0x3f, 0x73, 0x4b,
+  0xe4, 0xd6, 0x81, 0xbc, 0x1b, 0x92, 0x67, 0x3f, 0xf0, 0xa4, 0xb7, 0x95,
+  0x27, 0xea, 0x19, 0x16, 0x4a, 0xf4, 0x60, 0x5f, 0xca, 0xab, 0xee, 0x2b,
+  0x2c, 0x8f, 0xcf, 0x49, 0xdc, 0x09, 0x8f, 0xe1, 0x20, 0x39, 0x83, 0x27,
+  0xa6, 0xc5, 0xdc, 0xca, 0x18, 0xfd, 0xd4, 0xe5, 0x5d, 0xb5, 0xb7, 0xee,
+  0x2b, 0xb7, 0xc6, 0xda, 0x25, 0x0d, 0x8b, 0x6f, 0xab, 0x98, 0xb5, 0x57,
+  0x8a, 0xba, 0x1b, 0xb3, 0xe4, 0xe2, 0xe8, 0xf2, 0x02, 0xb0, 0x1e, 0x88,
+  0x80, 0xee, 0x9d, 0x6b, 0x44, 0xc2, 0x96, 0xe5, 0xfb, 0x13, 0x81, 0xe6,
+  0x94, 0x12, 0x27, 0x22, 0x98, 0x14, 0xc6, 0xae, 0x38, 0xff, 0x53, 0xdf,
+  0x63, 0x5c, 0xba, 0x59, 0x73, 0x9e, 0x72, 0x17, 0x12, 0x6b, 0xd3, 0xd5,
+  0xec, 0xed, 0x39, 0x7c, 0x02, 0x97, 0xbf, 0xe2, 0x9b, 0xd4, 0x02, 0x4e,
+  0xf5, 0xea, 0x75, 0x28, 0x6d, 0xad, 0x8f, 0x40, 0xcf, 0x31, 0x64, 0x33,
+  0x08, 0x5c, 0xda, 0x8f, 0x8b, 0x16, 0x20, 0x9d, 0xb0, 0x58, 0x61, 0x7c,
+  0xce, 0x53, 0x37, 0x13, 0x49, 0xa2, 0x49, 0x9e, 0xef, 0xec, 0x44, 0x38,
+  0x20, 0xd2, 0x91, 0x11, 0xab, 0xa2, 0xda, 0x09, 0xde, 0x1e, 0x6f, 0xb1,
+  0xe7, 0x0c, 0xba, 0x66, 0x4d, 0x76, 0x4b, 0xff, 0x8a, 0x6c, 0x65, 0x9a,
+  0x31, 0x95, 0xd3, 0xde, 0xbc, 0xb1, 0x94, 0xf9, 0x0e, 0x09, 0x00, 0x3a,
+  0x69, 0x1d, 0xf1, 0xc2, 0xd9, 0x01, 0x5a, 0x5f, 0x29, 0xf5, 0x38, 0x2e,
+  0xc5, 0x05, 0x1a, 0xf4, 0x2c, 0x90, 0xe0, 0x7b, 0x2f, 0xc2, 0x1d, 0x31,
+  0xbc, 0x3c, 0xbb, 0x90, 0x1d, 0x16, 0x5e, 0xce, 0x12, 0x06, 0xa7, 0x47,
+  0x1c, 0x5b, 0x41, 0x2f, 0x52, 0xdf, 0xd9, 0xa6, 0xd8, 0x5a, 0x6a, 0x38,
+  0xef, 0xab, 0x2c, 0x03, 0x2e, 0x28, 0x4d, 0x44, 0x86, 0xf6, 0xad, 0xe4,
+  0xd4, 0x2a, 0x0d, 0xa2, 0x9e, 0x4c, 0xef, 0x25, 0x3e, 0x68, 0x67, 0x7c,
+  0x82, 0x39, 0x05, 0x94, 0xf6, 0x91, 0x24, 0x83, 0x12, 0x8d, 0xa2, 0x00,
+  0xe5, 0x6c, 0x25, 0x98, 0xee, 0x5e, 0xe4, 0x43, 0x74, 0x66, 0x99, 0x2e,
+  0x55, 0xc8, 0xeb, 0xa6, 0xf1, 0x7c, 0x57, 0xa8, 0x49, 0x44, 0xd2, 0x82,
+  0xd9, 0x20, 0x05, 0xf6, 0x90, 0x52, 0x78, 0xa2, 0xbb, 0xda, 0x63, 0xa3,
+  0x2a, 0x4f, 0x84, 0x6e, 0x49, 0x2e, 0x4f, 0xb5, 0x1d, 0x9c, 0xda, 0xed,
+  0x6e, 0xfe, 0xf3, 0xb3, 0x8b, 0x4b, 0x7b, 0xef, 0xd3, 0x67, 0xf1, 0x83,
+  0xce, 0xf9, 0x21, 0x8e, 0x78, 0xae, 0xfa, 0xa8, 0xb7, 0x1b, 0x2a, 0x3d,
+  0xad, 0x45, 0xf3, 0x78, 0x65, 0x51, 0xd0, 0x8e, 0x36, 0x44, 0x46, 0x7c,
+  0x05, 0x24, 0x97, 0xf0, 0x5a, 0x39, 0x99, 0xc3, 0xbe, 0x54, 0xba, 0x70,
+  0xe2, 0xd5, 0x7d, 0x9c, 0x92, 0xfb, 0x6c, 0x37, 0xdc, 0x1d, 0xe4, 0x3d,
+  0xbb, 0x38, 0xa2, 0x4a, 0xdf, 0x97, 0x37, 0xfc, 0xb7, 0xa0, 0xef, 0x9c,
+  0xb9, 0x27, 0x3f, 0x8c, 0x97, 0x8b, 0xc7, 0xee, 0xa0, 0xf8, 0x94, 0x31,
+  0x3f, 0xd0, 0xbe, 0xcd, 0x13, 0xf5, 0xe6, 0xec, 0x99, 0x87, 0x45, 0x82,
+  0xd8, 0x94, 0xbd, 0x02, 0x6c, 0x0b, 0x7e, 0xb0, 0x2e, 0x5f, 0x59, 0x37,
+  0xca, 0x19, 0x1f, 0x89, 0x16, 0xb3, 0xed, 0xb3, 0xe7, 0xae, 0x85, 0x39,
+  0xdd, 0x57, 0xd2, 0xc0, 0xb1, 0x16, 0x53, 0xa2, 0x1f, 0xf6, 0x75, 0xbb,
+  0xe0, 0xca, 0xe0, 0x8d, 0xc1, 0xcf, 0xb9, 0x76, 0x5e, 0xd8, 0x7c, 0x70,
+  0x55, 0x18, 0xbc, 0xae, 0xd0, 0x8f, 0x15, 0x02, 0x02, 0x9d, 0xa3, 0xb3,
+  0xed, 0x9e, 0xf1, 0x6e, 0xff, 0x92, 0xb0, 0x44, 0x16, 0xd4, 0xc4, 0x63,
+  0xf7, 0xee, 0x56, 0x52, 0xb9, 0xf2, 0x62, 0x91, 0x41, 0x53, 0x4b, 0xab,
+  0x29, 0xd1, 0x68, 0x1b, 0x41, 0x52, 0x71, 0xa2, 0xc9, 0x7d, 0x10, 0xfc,
+  0x02, 0x6c, 0xc8, 0x7d, 0x43, 0x6e, 0xa1, 0xe3, 0x93, 0x23, 0xb7, 0x54,
+  0x4c, 0xc1, 0x8d, 0x83, 0xec, 0x34, 0x7e, 0x2a, 0x80, 0x68, 0xaf, 0x8a,
+  0x41, 0x72, 0x4e, 0x95, 0xed, 0xa0, 0x39, 0xd5, 0xff, 0xe1, 0x5a, 0xe3,
+  0x83, 0x02, 0x4f, 0xac, 0xb9, 0x3c, 0x91, 0x35, 0x98, 0x17, 0x66, 0x65,
+  0xf1, 0x13, 0xfa, 0xab, 0x47, 0x17, 0x1b, 0x0c, 0xf7, 0x95, 0x7b, 0xb9,
+  0x36, 0x23, 0x31, 0x76, 0x7b, 0xf7, 0x91, 0xe7, 0xb2, 0xaf, 0x8c, 0x51,
+  0xcf, 0x55, 0x94, 0x55, 0x34, 0xd3, 0x79, 0xd6, 0x32, 0xce, 0xdc, 0xc2,
+  0x95, 0x3e, 0xd3, 0x12, 0xe1, 0x5e, 0x53, 0x7c, 0x21, 0x1c, 0x8c, 0x6c,
+  0xd9, 0x04, 0x82, 0x10, 0x92, 0x3a, 0x67, 0xda, 0x2a, 0x48, 0xda, 0x4e,
+  0x2d, 0x12, 0xd7, 0x86, 0x03, 0x49, 0x5a, 0xd2, 0x0b, 0x96, 0x73, 0xa5,
+  0x3b, 0xb9, 0x9d, 0x32, 0x7d, 0xcf, 0x79, 0x27, 0xda, 0x6d, 0x63, 0xef,
+  0xb0, 0x56, 0xef, 0x04, 0xbb, 0x28, 0xdc, 0x51, 0xe4, 0x45, 0x20, 0xbf,
+  0xb0, 0xb9, 0xe1, 0x7d, 0x13, 0xe0, 0xf9, 0x0b, 0xd7, 0xd4, 0x15, 0x38,
+  0xba, 0x55, 0xb6, 0x1f, 0xb4, 0xe4, 0x8f, 0x25, 0xe8, 0xce, 0xed, 0x93,
+  0x6c, 0x39, 0x72, 0x0a, 0x67, 0xe4, 0x48, 0x79, 0xdf, 0xe0, 0xcd, 0x70,
+  0x59, 0x12, 0x89, 0x47, 0xf1, 0xe0, 0xa0, 0xb9, 0x52, 0xda, 0x8d, 0x1d,
+  0x52, 0x5c, 0x03, 0x40, 0x7e, 0x23, 0x1c, 0xca, 0x37, 0xe2, 0xad, 0xa1,
+  0xea, 0x50, 0x01, 0xf5, 0xeb, 0x62, 0x26, 0x08, 0x3f, 0xef, 0x4b, 0x9f,
+  0x8b, 0x6b, 0x83, 0xeb, 0x68, 0x5b, 0x67, 0x80, 0x2f, 0x48, 0x4b, 0x4b,
+  0xf8, 0x60, 0xe3, 0xe4, 0x13, 0x80, 0xcf, 0x6a, 0x4b, 0x73, 0x1c, 0xe1,
+  0x20, 0xa3, 0xcb, 0x58, 0x54, 0x5e, 0x8d, 0x75, 0x96, 0x1e, 0x81, 0x0c,
+  0xcd, 0xb7, 0x3c, 0xc6, 0xbf, 0x5a, 0xc1, 0xc0, 0x51, 0x65, 0x7f, 0x85,
+  0x3a, 0x39, 0xe0, 0x0b, 0x87, 0xb3, 0x6d, 0x78, 0x94, 0xc5, 0x22, 0xf5,
+  0x6c, 0xfa, 0xe7, 0xaf, 0xc4, 0x6f, 0x25, 0x7e, 0x11, 0xad, 0x21, 0xd9,
+  0x0d, 0x33, 0xbd, 0xd8, 0xb5, 0x4e, 0x40, 0x02, 0xd4, 0x09, 0x4a, 0xdc,
+  0x87, 0xd5, 0x11, 0xaf, 0xe4, 0xf0, 0xeb, 0xe4, 0xfd, 0xdb, 0x17, 0x04,
+  0xec, 0xb8, 0xce, 0xaa, 0xb9, 0xb1, 0x5a, 0x9c, 0x61, 0x7e, 0xf6, 0x8d,
+  0xd7, 0xd8, 0x9e, 0x83, 0x09, 0x69, 0xbc, 0x5f, 0x84, 0x99, 0x58, 0x0d,
+  0x66, 0x09, 0x29, 0x31, 0xf1, 0x5a, 0x73, 0x8c, 0x95, 0x0c, 0xcb, 0x2b,
+  0xa6, 0x1c, 0x70, 0x2d, 0x75, 0x04, 0xd8, 0x8b, 0x67, 0x4e, 0x80, 0x51,
+  0xb9, 0xf4, 0x32, 0xc9, 0x8a, 0x6b, 0x32, 0x0e, 0x22, 0x27, 0xea, 0x05,
+  0x0b, 0xcd, 0x43, 0x3e, 0xf7, 0xa4, 0xc8, 0x86, 0xaf, 0x41, 0x49, 0x47,
+  0xb8, 0xd3, 0x7b, 0xef, 0x85, 0xef, 0x5b, 0x20, 0xde, 0x41, 0x40, 0x66,
+  0x98, 0x6d, 0x1c, 0x5a, 0x8a, 0xf7, 0xec, 0x4b, 0xfb, 0x2c, 0x39, 0x92,
+  0xf2, 0xc2, 0xab, 0x0e, 0xb1, 0xe4, 0x0d, 0x51, 0x80, 0xd5, 0x4c, 0x50,
+  0xd5, 0x8c, 0x75, 0x1e, 0x6f, 0xee, 0xbd, 0x57, 0x5e, 0xb5, 0x5d, 0x27,
+  0xa0, 0x8d, 0xb6, 0x1b, 0x13, 0x83, 0xca, 0xe7, 0x37, 0xfe, 0xe1, 0x7c,
+  0xc9, 0xb7, 0xf4, 0x79, 0x17, 0x25, 0xa9, 0x32, 0x30, 0xf3, 0x33, 0xf1,
+  0xf5, 0xa8, 0xf3, 0xd6, 0x3f, 0x3c, 0x48, 0x96, 0xa5, 0x08, 0x60, 0xaf,
+  0x7b, 0x1f, 0xd9, 0x95, 0x33, 0x43, 0xc5, 0xcd, 0xae, 0x8b, 0xfc, 0xef,
+  0x9a, 0x5c, 0x4c, 0x77, 0xb3, 0x56, 0xf6, 0xf0, 0x1e, 0xdf, 0x13, 0x81,
+  0x71, 0x97, 0x4e, 0x73, 0x11, 0x8a, 0x14, 0x44, 0x73, 0x0f, 0x3c, 0x93,
+  0x5d, 0xcb, 0x05, 0xdd, 0x60, 0x01, 0xa0, 0x20, 0x23, 0x85, 0x70, 0xb3,
+  0x16, 0xe8, 0xf6, 0xe5, 0x73, 0xd1, 0xbb, 0x54, 0x37, 0xa6, 0x9b, 0x97,
+  0x26, 0x62, 0x0a, 0x66, 0xb3, 0xae, 0x98, 0x7e, 0x29, 0xd7, 0x9e, 0x2c,
+  0xa5, 0xad, 0xee, 0x61, 0x2b, 0xa5, 0xd0, 0x5f, 0xef, 0xf3, 0x42, 0x60,
+  0xb0, 0xc1, 0xeb, 0x2f, 0x97, 0xf8, 0x23, 0xa5, 0x42, 0xf9, 0x11, 0xf6,
+  0x92, 0xf7, 0xfc, 0x67, 0xee, 0x24, 0xb4, 0x58, 0xe1, 0x94, 0x12, 0xac,
+  0xe7, 0x39, 0x21, 0xec, 0x59, 0x62, 0x47, 0x8a, 0x94, 0x71, 0x8e, 0x50,
+  0xf6, 0x5e, 0xd9, 0xcf, 0x4f, 0x4b, 0x92, 0xa6, 0xde, 0xf7, 0x78, 0x4b,
+  0xbd, 0x03, 0x0d, 0xb8, 0x33, 0x0e, 0x8a, 0x56, 0x45, 0x52, 0xf7, 0xf4,
+  0x2b, 0xd9, 0x1b, 0x7a, 0x5f, 0x5a, 0x93, 0x75, 0xd9, 0x1b, 0x9f, 0xed,
+  0xf8, 0x0a, 0xeb, 0x84, 0xc2, 0x74, 0x9c, 0x64, 0xbb, 0xf4, 0x05, 0xde,
+  0x19, 0xc7, 0x53, 0xaa, 0xef, 0x39, 0xd5, 0xa2, 0x9c, 0xca, 0x08, 0xe6,
+  0x1e, 0xdb, 0x6b, 0x09, 0xdd, 0x4b, 0x5f, 0x7d, 0x4a, 0x8e, 0xdf, 0x7a,
+  0x0f, 0x3e, 0x73, 0x03, 0x4c, 0xa7, 0xa4, 0x0d, 0x3c, 0xb0, 0xb7, 0xaa,
+  0x96, 0x62, 0xa5, 0xde, 0xa3, 0xbc, 0x33, 0x4e, 0x4b, 0xe6, 0xae, 0xc1,
+  0xf4, 0x07, 0xcf, 0xf0, 0x76, 0x38, 0xbc, 0x31, 0xb7, 0xda, 0xb8, 0x01,
+  0x3a, 0xb0, 0xd0, 0xd0, 0x51, 0x77, 0xed, 0x3f, 0x7b, 0xb9, 0xe2, 0x59,
+  0xb9, 0x34, 0x6b, 0x7b, 0xd5, 0x7b, 0xef, 0x7d, 0x16, 0x1e, 0x73, 0x35,
+  0x09, 0x14, 0xc4, 0x6c, 0x8e, 0x1a, 0x9d, 0xb4, 0x64, 0x93, 0xf2, 0x28,
+  0xff, 0x43, 0xdd, 0x83, 0x15, 0xd1, 0x72, 0xd5, 0xff, 0xe1, 0xf7, 0xf7,
+  0x73, 0x1f, 0x09, 0xcd, 0xbe, 0xc1, 0x2a, 0x43, 0xf4, 0x60, 0xdc, 0xe2,
+  0xe1, 0x76, 0x48, 0x11, 0xcc, 0x8e, 0xd7, 0x02, 0xaf, 0xb9, 0xd1, 0x23,
+  0x16, 0x85, 0x93, 0x1c, 0x6c, 0x08, 0x4a, 0xe2, 0xf2, 0xc4, 0xa7, 0x6f,
+  0x23, 0x99, 0x2f, 0x7e, 0x28, 0xcf, 0x93, 0xba, 0xd3, 0x39, 0x06, 0xf5,
+  0xcd, 0x82, 0xcd, 0x6e, 0x3b, 0x22, 0xe7, 0x66, 0xf3, 0x5e, 0xdb, 0x73,
+  0xd2, 0x0b, 0x7d, 0x83, 0xda, 0x78, 0x68, 0x7a, 0xcb, 0x76, 0xb9, 0x25,
+  0x66, 0x86, 0x17, 0xfe, 0xbe, 0x2a, 0xe9, 0xaf, 0x9a, 0x6e, 0xbf, 0xc9,
+  0x49, 0x91, 0x21, 0x48, 0x4f, 0x70, 0xc5, 0xde, 0x67, 0x44, 0xb5, 0x21,
+  0xa8, 0x8b, 0x59, 0xa5, 0x9b, 0x6c, 0x7c, 0xab, 0x47, 0x46, 0x1a, 0x71,
+  0x68, 0x64, 0xef, 0xad, 0xe7, 0x76, 0x6a, 0x61, 0xd2, 0x5c, 0x1c, 0x75,
+  0xad, 0x00, 0xf7, 0x28, 0xef, 0x9a, 0x8b, 0xcb, 0xe1, 0xf9, 0x3e, 0xf5,
+  0x99, 0xe3, 0x71, 0xe6, 0x40, 0x1c, 0x0e, 0xb3, 0xbf, 0x49, 0x16, 0x4a,
+  0xed, 0x9e, 0x7e, 0xb9, 0xe4, 0xe9, 0xa1, 0xb8, 0xf7, 0x8e, 0x27, 0x24,
+  0x7e, 0xcd, 0x3a, 0xf8, 0x2f, 0x7d, 0x26, 0xd8, 0x3e, 0xf5, 0xf3, 0xb3,
+  0x17, 0x8c, 0x7a, 0x06, 0x69, 0x48, 0x91, 0x77, 0xf7, 0xf0, 0xe7, 0xce,
+  0xa6, 0xb9, 0x59, 0x14, 0xb7, 0x56, 0x5f, 0x14, 0x3a, 0x2a, 0x5d, 0x60,
+  0xf7, 0xc2, 0x2b, 0x3d, 0x1a, 0x9e, 0x37, 0xd4, 0xe2, 0x5f, 0x7a, 0xe2,
+  0xa5, 0xd0, 0xf2, 0xa4, 0x1c, 0x48, 0x34, 0xf2, 0x75, 0xe1, 0xcd, 0xc1,
+  0xab, 0x1d, 0x7b, 0xfd, 0x0a, 0xb1, 0xc5, 0x6d, 0xf6, 0xe0, 0x76, 0x1d,
+  0xc7, 0xeb, 0x8d, 0xba, 0x98, 0x17, 0xe4, 0x84, 0x70, 0x8f, 0xd8, 0x06,
+  0xbe, 0xff, 0x9e, 0x65, 0xbc, 0xe5, 0x43, 0x92, 0x38, 0x93, 0xad, 0x79,
+  0x61, 0x04, 0x22, 0xab, 0x05, 0x74, 0xbc, 0x10, 0x9c, 0xa9, 0xb2, 0x69,
+  0x46, 0x7c, 0x7a, 0x6c, 0xa3, 0x60, 0x63, 0xf7, 0x03, 0x7b, 0x0f, 0x65,
+  0x9f, 0x38, 0x50, 0x69, 0xcb, 0xd0, 0x17, 0xe4, 0x1b, 0x13, 0x47, 0x95,
+  0x59, 0xf1, 0x83, 0x0f, 0x97, 0x5f, 0x9f, 0x5d, 0x0c, 0x93, 0x6d, 0x4a,
+  0x4b, 0xbd, 0xbc, 0x38, 0xfe, 0xf2, 0x83, 0xb1, 0xfd, 0x6d, 0x8c, 0xee,
+  0x6d, 0x5a, 0xe4, 0xe6, 0xe6, 0x18, 0x36, 0x59, 0x61, 0xd6, 0xf1, 0x5a,
+  0x4b, 0x53, 0x30, 0x39, 0xa7, 0xb9, 0x2b, 0xcb, 0x8a, 0xcb, 0x13, 0x81,
+  0x15, 0xe0, 0xa6, 0x94, 0xc5, 0x60, 0xea, 0x34, 0xf2, 0x31, 0x13, 0x0a,
+  0xab, 0x74, 0x76, 0x6d, 0xde, 0xc9, 0xaa, 0x55, 0x68, 0x45, 0x72, 0xf9,
+  0xf5, 0xc1, 0xe9, 0x37, 0x43, 0xa5, 0x2d, 0xff, 0xee, 0xbb, 0xef, 0x7c,
+  0xc8, 0x4f, 0xbd, 0xbf, 0xbd, 0x0d, 0xfd, 0xf2, 0x26, 0xfd, 0xf4, 0x69,
+  0x50, 0x67, 0x6b, 0x6b, 0xc3, 0xa3, 0xa3, 0xe4, 0xe0, 0x64, 0x78, 0xb6,
+  0xe6, 0x92, 0xb1, 0x37, 0x77, 0x89, 0xa4, 0xe5, 0x3a, 0x6b, 0xcc, 0x5f,
+  0xd6, 0xd6, 0x4e, 0x0e, 0x2e, 0xc9, 0x72, 0x95, 0xaa, 0xa8, 0x34, 0xcf,
+  0x44, 0xac, 0x90, 0x4e, 0xef, 0x89, 0x47, 0xee, 0x2a, 0x07, 0xda, 0xf9,
+  0x5e, 0xeb, 0xa9, 0x77, 0xc9, 0x15, 0xcd, 0xcd, 0x73, 0x4f, 0x74, 0x17,
+  0x82, 0x59, 0x22, 0x30, 0xa6, 0x19, 0x93, 0x32, 0x84, 0xad, 0x25, 0xce,
+  0x7b, 0xc5, 0x7c, 0xe7, 0xd9, 0x88, 0x2b, 0xe2, 0xf6, 0x18, 0x7a, 0x08,
+  0x00, 0x9a, 0x47, 0x40, 0xb0, 0x64, 0x08, 0xc7, 0xc4, 0x0b, 0x9a, 0x7c,
+  0x18, 0x1e, 0x7c, 0x75, 0x44, 0xcf, 0x7e, 0x95, 0x35, 0x6e, 0x6a, 0xb9,
+  0xf0, 0x3b, 0x7d, 0xe5, 0x34, 0x6b, 0xea, 0x71, 0x3a, 0xcf, 0x36, 0xa8,
+  0x4f, 0xa3, 0xbe, 0x30, 0xee, 0xbb, 0xc6, 0x59, 0xad, 0x77, 0x85, 0x02,
+  0x0a, 0x79, 0x1e, 0x94, 0xfe, 0x7e, 0xbb, 0x17, 0x47, 0x07, 0x6f, 0xdf,
+  0x1f, 0x69, 0x5d, 0x65, 0x66, 0xe5, 0x34, 0x8d, 0xde, 0x50, 0xbd, 0x69,
+  0x17, 0xf9, 0xa0, 0x6b, 0x7e, 0x61, 0xda, 0x30, 0xbf, 0xa1, 0xda, 0xcf,
+  0xf1, 0xcf, 0xb9, 0xfa, 0x01, 0x78, 0x76, 0x70, 0x95, 0x6f, 0x73, 0xeb,
+  0xfa, 0xbd, 0xd4, 0xce, 0x89, 0x30, 0x8d, 0xa8, 0xe6, 0xcb, 0xae, 0x09,
+  0xf8, 0x34, 0x3e, 0xdf, 0xd9, 0xd9, 0x59, 0x31, 0x0e, 0x98, 0x06, 0x72,
+  0x81, 0x9a, 0xa1, 0xec, 0xd3, 0xe3, 0xdb, 0xae, 0x7d, 0xd7, 0x63, 0xda,
+  0x6f, 0x58, 0xb7, 0x2b, 0xb2, 0xac, 0x71, 0xed, 0xe6, 0x4d, 0x16, 0xef,
+  0xf2, 0xb8, 0x2c, 0xed, 0x0a, 0xb4, 0x26, 0x07, 0x15, 0x6f, 0xf3, 0x46,
+  0x29, 0xd7, 0xf0, 0x06, 0x77, 0xdc, 0x98, 0x32, 0xa0, 0x99, 0xaa, 0x1e,
+  0xba, 0x4d, 0xd2, 0x6f, 0x00, 0x4c, 0x19, 0x37, 0x83, 0xb2, 0xba, 0xde,
+  0x9e, 0xed, 0x43, 0x3b, 0x31, 0x0f, 0xbd, 0x23, 0x98, 0x6b, 0x62, 0xb4,
+  0x5c, 0xcb, 0x20, 0x51, 0xd3, 0xc4, 0x96, 0xe6, 0x5a, 0x7a, 0x42, 0xbf,
+  0x7e, 0xc6, 0x2c, 0x30, 0xfb, 0xcf, 0x95, 0x8e, 0x5c, 0xeb, 0xe9, 0x45,
+  0x3e, 0x42, 0xfb, 0x0f, 0x8e, 0xc3, 0x81, 0x91, 0x05, 0xe6, 0x2b, 0xc4,
+  0x43, 0x85, 0x2d, 0x62, 0xfe, 0x5a, 0x99, 0x2d, 0x33, 0x68, 0x3e, 0x41,
+  0x84, 0x4a, 0x99, 0x4f, 0x4e, 0x19, 0xa4, 0xc8, 0xfc, 0x9c, 0xaa, 0x89,
+  0x57, 0xc4, 0x0c, 0xcb, 0x5f, 0x30, 0x07, 0x48, 0x4b, 0x4d, 0x5b, 0x3c,
+  0x1f, 0x35, 0xdc, 0xfd, 0x66, 0xbf, 0x8f, 0xfd, 0x53, 0xdb, 0xdd, 0xf2,
+  0x84, 0x8f, 0x7b, 0x83, 0xe2, 0xd9, 0x2f, 0xe4, 0xc6, 0xf5, 0xf6, 0xce,
+  0xd0, 0xf4, 0x22, 0xf8, 0xd6, 0xc2, 0x15, 0x2a, 0xad, 0xf9, 0x73, 0x7e,
+  0x61, 0x0b, 0xb3, 0x1a, 0xdb, 0x80, 0x7a, 0x3e, 0xf9, 0x1b, 0x87, 0xe7,
+  0xf2, 0x37, 0xc2, 0xc4, 0xe5, 0x77, 0x34, 0x78, 0x92, 0xd6, 0xe6, 0xde,
+  0x25, 0x71, 0xae, 0xea, 0x2a, 0x20, 0x76, 0xb0, 0x3c, 0x51, 0xb5, 0xc6,
+  0x37, 0x1d, 0x56, 0xf4, 0x70, 0xdf, 0x4c, 0x0d, 0xdd, 0x0e, 0xff, 0x7b,
+  0x7b, 0x50, 0xd7, 0x37, 0xdb, 0xf9, 0xe4, 0x63, 0x55, 0xa7, 0xc9, 0x8f,
+  0x6b, 0x9d, 0x8c, 0xca, 0xee, 0x20, 0xfe, 0x37, 0x66, 0xf0, 0x67, 0xcd,
+  0xd4, 0xf2, 0x51, 0xfc, 0x16, 0x23, 0xe8, 0xf7, 0xa9, 0x55, 0xfd, 0xd2,
+  0x47, 0xf3, 0xc0, 0x47, 0x4b, 0xf5, 0xfb, 0x0b, 0x46, 0x17, 0x11, 0x85,
+  0x66, 0x90, 0xcc, 0x00, 0x69, 0x64, 0x4b, 0x7c, 0xa3, 0x6b, 0xb1, 0x8a,
+  0x1f, 0xf6, 0x76, 0x76, 0x76, 0xf7, 0x77, 0x3f, 0x7f, 0xb5, 0xb3, 0xbf,
+  0xbb, 0xbb, 0xbb, 0xb7, 0xbf, 0xbb, 0xbf, 0xbf, 0xb7, 0xf3, 0xd3, 0xf6,
+  0xfa, 0xb2, 0xa9, 0x7b, 0xff, 0xe5, 0x92, 0x06, 0xcd, 0xa8, 0xd7, 0x99,
+  0x5e, 0xee, 0x47, 0x3b, 0x7a, 0x8c, 0x6a, 0xb2, 0x9e, 0xd4, 0xb3, 0x11,
+  0xe1, 0xba, 0xf8, 0x70, 0xfa, 0x83, 0xa9, 0x8d, 0x52, 0x9c, 0x79, 0x03,
+  0x7a, 0x7b, 0xf6, 0xdd, 0xe9, 0xc9, 0xd9, 0xc1, 0xdb, 0xe4, 0xf2, 0x2c,
+  0x39, 0x80, 0x0b, 0x2f, 0x22, 0x27, 0x41, 0x11, 0x49, 0xc8, 0x68, 0x2e,
+  0xe3, 0xe1, 0x95, 0xb3, 0x12, 0x7f, 0x93, 0x85, 0x30, 0xa2, 0x13, 0xdd,
+  0x7e, 0x96, 0x30, 0xd1, 0xa8, 0xa5, 0xc1, 0x4d, 0x33, 0x7b, 0xfc, 0x46,
+  0x78, 0xca, 0x97, 0x7b, 0x0c, 0xb1, 0x70, 0x56, 0x38, 0xba, 0xa3, 0x27,
+  0x5f, 0x8a, 0xd1, 0x4b, 0x5c, 0x4a, 0xe0, 0x09, 0xb6, 0x74, 0xfa, 0x26,
+  0x03, 0x30, 0x5d, 0x09, 0x26, 0xae, 0xee, 0xd5, 0x01, 0x7d, 0xd9, 0x3a,
+  0x39, 0x82, 0x7f, 0x81, 0xba, 0x43, 0xfa, 0xe5, 0x56, 0x30, 0xc0, 0xb3,
+  0xa5, 0x43, 0x32, 0x97, 0x79, 0xf6, 0x09, 0xa3, 0x6e, 0xcb, 0x5e, 0xe6,
+  0x1f, 0x74, 0xa3, 0x03, 0xcb, 0x92, 0xfa, 0x15, 0xf2, 0x4a, 0xbb, 0x0c,
+  0xa4, 0x66, 0xe4, 0x73, 0xf4, 0x1d, 0x15, 0xc9, 0xee, 0x13, 0xf4, 0x1b,
+  0xff, 0x1e, 0xdf, 0xb6, 0x59, 0xa7, 0xdc, 0x81, 0x0f, 0xc3, 0xe3, 0xd3,
+  0xaf, 0x10, 0xe1, 0xfe, 0xee, 0xec, 0xe2, 0xed, 0xd0, 0x34, 0x6b, 0xe4,
+  0x15, 0x1a, 0xbf, 0x2c, 0x49, 0x12, 0x4a, 0xaf, 0xf8, 0x5c, 0xd2, 0xa7,
+  0xff, 0xc8, 0xdb, 0xa9, 0xe7, 0xb3, 0xcb, 0xcf, 0x7c, 0xdb, 0x85, 0x4a,
+  0x08, 0xc5, 0x6f, 0x0d, 0x6f, 0x37, 0xfe, 0x79, 0x96, 0x8e, 0x6f, 0xc8,
+  0xd8, 0xe6, 0xcd, 0x0a, 0xc8, 0xec, 0x36, 0xe5, 0x74, 0x6c, 0x93, 0x0d,
+  0xb5, 0xdd, 0x94, 0xd8, 0x8e, 0x68, 0xa5, 0xac, 0x7c, 0x3e, 0x74, 0xcf,
+  0xd3, 0x62, 0xf6, 0xfa, 0xd5, 0x34, 0xbd, 0xc6, 0x07, 0xc3, 0x63, 0xe0,
+  0x7d, 0x4c, 0x3e, 0xff, 0xd4, 0x4f, 0xd2, 0xb5, 0x81, 0xf6, 0x8e, 0xb1,
+  0x01, 0x90, 0x87, 0x83, 0xba, 0x48, 0x12, 0x40, 0x62, 0x05, 0x12, 0x45,
+  0xda, 0x08, 0xaa, 0x45, 0x4c, 0xc3, 0xdd, 0x02, 0x37, 0x28, 0x43, 0xca,
+  0x6c, 0xdb, 0x46, 0xc7, 0x76, 0x68, 0x5e, 0x29, 0x30, 0x82, 0x96, 0x3c,
+  0x7f, 0x4e, 0xed, 0xe0, 0xc5, 0xae, 0x14, 0x2f, 0x4f, 0x39, 0x75, 0x86,
+  0x40, 0x8c, 0x0c, 0x8f, 0x27, 0x1c, 0xa3, 0x68, 0xb4, 0xeb, 0x44, 0x62,
+  0x4f, 0x40, 0xa4, 0x75, 0x5c, 0x71, 0x70, 0x80, 0x29, 0x39, 0x98, 0xcb,
+  0xa8, 0xae, 0x1b, 0xd3, 0x95, 0x94, 0xca, 0x21, 0x30, 0x0c, 0x41, 0xf8,
+  0x36, 0x6c, 0x0d, 0xfb, 0x75, 0x85, 0x33, 0x71, 0x2b, 0x79, 0xcd, 0xac,
+  0x25, 0xb6, 0xa4, 0x14, 0x5d, 0x5e, 0xf4, 0x75, 0xf6, 0x61, 0x62, 0xd6,
+  0xed, 0x3d, 0xe9, 0xbc, 0x90, 0x74, 0xc7, 0x19, 0x7d, 0xdc, 0x08, 0x70,
+  0xde, 0x39, 0x1a, 0xfb, 0x76, 0xa5, 0x41, 0x5b, 0xd3, 0xa6, 0xf4, 0xb8,
+  0xdc, 0x1c, 0x49, 0x66, 0xe7, 0x51, 0xb5, 0x33, 0xb8, 0x06, 0x48, 0x99,
+  0xbd, 0x05, 0x2c, 0x4e, 0xda, 0x15, 0x39, 0x4b, 0x5d, 0x6d, 0x08, 0x6f,
+  0xda, 0x18, 0x44, 0xe9, 0xde, 0x33, 0x6b, 0x44, 0x4d, 0xe5, 0x4d, 0x9d,
+  0x4d, 0xaf, 0xc8, 0x14, 0xb2, 0x57, 0x08, 0x97, 0x34, 0x76, 0x45, 0x32,
+  0x84, 0x07, 0x7c, 0x51, 0x18, 0x4b, 0x25, 0x15, 0x7c, 0x0e, 0xcb, 0x92,
+  0x6b, 0x88, 0x75, 0x57, 0x47, 0xbd, 0x2d, 0x43, 0x38, 0xb6, 0xf9, 0x27,
+  0x06, 0xe0, 0xd9, 0xe6, 0x5a, 0xa2, 0xc3, 0xcb, 0x16, 0xe0, 0x5b, 0x47,
+  0xe7, 0x8e, 0x66, 0xeb, 0x61, 0x4e, 0x74, 0x3e, 0x04, 0xd6, 0xf0, 0xca,
+  0x06, 0x2a, 0xbf, 0x2e, 0x88, 0xae, 0xb3, 0x4f, 0xc4, 0x36, 0x2b, 0x63,
+  0x73, 0xf6, 0x9a, 0xd5, 0xea, 0x65, 0xbc, 0xd4, 0x1a, 0x7e, 0x0e, 0x59,
+  0x48, 0xb3, 0x4d, 0x44, 0x54, 0x64, 0x73, 0x09, 0xa2, 0x9e, 0xd5, 0x40,
+  0xb5, 0xf2, 0x6c, 0xad, 0x4a, 0xd2, 0x98, 0xcc, 0x2d, 0xcc, 0x44, 0xd0,
+  0xb6, 0xe6, 0x33, 0x62, 0xa8, 0x29, 0xdb, 0x82, 0x50, 0x82, 0xbd, 0x0f,
+  0x23, 0x77, 0x87, 0xce, 0x45, 0x0b, 0x82, 0xdb, 0x1a, 0xe5, 0x62, 0xe4,
+  0x16, 0x96, 0xf6, 0x08, 0xc0, 0xab, 0xd4, 0xe4, 0x61, 0x58, 0x4d, 0x4d,
+  0x6b, 0x0d, 0x78, 0xb3, 0x27, 0xac, 0x20, 0x46, 0xa0, 0x20, 0x77, 0x69,
+  0x51, 0xdb, 0x9d, 0x63, 0x66, 0xeb, 0x56, 0x2e, 0xc4, 0x35, 0xa0, 0xd8,
+  0x43, 0x71, 0x23, 0x92, 0x77, 0xb9, 0xbc, 0x79, 0x5c, 0xd4, 0x84, 0x5d,
+  0x52, 0xd3, 0x6f, 0xfa, 0xc0, 0xd2, 0x20, 0x2f, 0x56, 0x0b, 0x1d, 0xe9,
+  0xc4, 0x93, 0x3e, 0x8c, 0xb1, 0x82, 0x72, 0xba, 0xe6, 0x08, 0x89, 0x43,
+  0x95, 0x32, 0x20, 0x03, 0x44, 0x0d, 0x1d, 0xd6, 0x55, 0xf5, 0x2f, 0xda,
+  0x79, 0xc4, 0x81, 0x67, 0x20, 0xc9, 0x7e, 0xf2, 0x65, 0x5a, 0xe7, 0xe3,
+  0x9e, 0x14, 0x45, 0x90, 0x22, 0x09, 0xa8, 0xb3, 0xad, 0x85, 0x13, 0x92,
+  0x4d, 0xe6, 0xdb, 0xdd, 0x1a, 0x24, 0xdf, 0x69, 0x95, 0x0b, 0x63, 0x44,
+  0x32, 0x79, 0x7f, 0x3e, 0x06, 0x8e, 0xdb, 0xa2, 0x41, 0x68, 0x3e, 0x64,
+  0x7f, 0x8a, 0x9f, 0x1d, 0x2c, 0xd9, 0xf8, 0x88, 0xe3, 0x00, 0xc4, 0xaa,
+  0xa6, 0xf5, 0xad, 0x0d, 0x6a, 0x61, 0xad, 0x44, 0x14, 0x21, 0x6b, 0x8e,
+  0x75, 0x69, 0x36, 0xf2, 0x05, 0xfa, 0x82, 0x90, 0x57, 0xa1, 0xc1, 0x17,
+  0x0f, 0x1b, 0xc5, 0x8e, 0xd4, 0xda, 0x42, 0xa6, 0x6c, 0x15, 0x30, 0xec,
+  0x4c, 0x2b, 0xa2, 0xfa, 0x7d, 0x33, 0x61, 0x34, 0x35, 0x22, 0x40, 0xcf,
+  0x2e, 0x8f, 0x7e, 0x97, 0x1c, 0x74, 0x63, 0xe0, 0x74, 0x33, 0xa9, 0x18,
+  0x96, 0x92, 0xb1, 0x76, 0x83, 0xa1, 0xef, 0x0c, 0x31, 0x65, 0x56, 0xcc,
+  0x14, 0xcb, 0xbf, 0x26, 0x19, 0xb2, 0xce, 0xdb, 0x5b, 0x97, 0x92, 0x21,
+  0x81, 0x92, 0x7a, 0xb6, 0xf6, 0x1a, 0xa2, 0x03, 0xf7, 0xae, 0x0a, 0x09,
+  0x93, 0xba, 0xe7, 0x29, 0x67, 0xa8, 0x7c, 0x32, 0x07, 0x5b, 0x53, 0x14,
+  0x68, 0x9a, 0xaf, 0x6f, 0xb4, 0xa0, 0x20, 0x81, 0xb0, 0x09, 0x8e, 0x4c,
+  0xa6, 0x16, 0x53, 0x2b, 0x73, 0xf1, 0x2b, 0xaf, 0xa0, 0x89, 0x6d, 0x81,
+  0x76, 0xff, 0x47, 0x3a, 0x72, 0x1f, 0xf5, 0x62, 0x91, 0x2b, 0x90, 0xfb,
+  0x72, 0xc5, 0x76, 0x50, 0x7b, 0xcb, 0xea, 0xb1, 0xe3, 0xdb, 0xec, 0x5c,
+  0xe1, 0xa5, 0x58, 0x08, 0xba, 0x02, 0x00, 0xff, 0x40, 0xf0, 0x1b, 0x77,
+  0xaa, 0x4a, 0x4d, 0xff, 0x62, 0x02, 0xed, 0x24, 0xdd, 0x11, 0x5c, 0x30,
+  0x59, 0x48, 0x27, 0x19, 0xcc, 0x6f, 0x5a, 0x6d, 0xa7, 0xdc, 0x80, 0xa8,
+  0x16, 0xb3, 0x4a, 0xbd, 0x18, 0x9e, 0x1d, 0x7e, 0x33, 0x6c, 0xa5, 0xfc,
+  0x98, 0xd6, 0xf0, 0x21, 0x2d, 0x1d, 0xd4, 0xd9, 0xd0, 0x46, 0x1a, 0x1e,
+  0x37, 0x1d, 0xf1, 0x64, 0xe9, 0x1c, 0x3d, 0xec, 0x31, 0x5d, 0x36, 0xad,
+  0x66, 0xa9, 0xc2, 0xc6, 0x38, 0xf3, 0xd8, 0x68, 0x8b, 0x72, 0xcd, 0xbb,
+  0xf9, 0x78, 0xff, 0x94, 0xb5, 0xca, 0x44, 0x66, 0x2b, 0xe5, 0xba, 0x06,
+  0xa3, 0x8c, 0xc9, 0x86, 0x88, 0x49, 0x10, 0xab, 0x48, 0xfd, 0xc3, 0x09,
+  0xe4, 0x9d, 0x39, 0xc3, 0xe6, 0x5e, 0x73, 0xbb, 0x9b, 0xee, 0xa0, 0x65,
+  0xe3, 0xcc, 0xb9, 0x38, 0xa3, 0x75, 0x7d, 0xbb, 0x72, 0x8d, 0x85, 0x54,
+  0x0f, 0x21, 0xdd, 0x4a, 0x7b, 0x4d, 0xab, 0x03, 0xcd, 0xb6, 0xb0, 0x7a,
+  0x96, 0x2e, 0xba, 0x08, 0x3f, 0x1e, 0x24, 0xc9, 0x94, 0x49, 0x32, 0x7b,
+  0x90, 0x1c, 0x16, 0xd1, 0x0d, 0x88, 0x9b, 0x03, 0x5e, 0x89, 0xcf, 0x3f,
+  0x0f, 0x74, 0xc1, 0x4f, 0xf6, 0xe9, 0x7d, 0xf3, 0x6b, 0xcf, 0xfb, 0x31,
+  0x25, 0xbc, 0x08, 0x79, 0x1b, 0xa0, 0x87, 0x5a, 0x17, 0x48, 0xc4, 0xc2,
+  0xf0, 0x2a, 0x73, 0xf1, 0x17, 0x6d, 0x88, 0x25, 0xd8, 0x65, 0x3d, 0x27,
+  0xf7, 0xd7, 0xd8, 0xbc, 0xe6, 0x8e, 0xa6, 0x35, 0xe3, 0x8e, 0x96, 0x18,
+  0x66, 0x2a, 0x26, 0xbb, 0xbd, 0xf5, 0xb4, 0x66, 0xa3, 0xb9, 0x0f, 0xe8,
+  0x52, 0x25, 0x23, 0x60, 0x58, 0x4a, 0xc3, 0x34, 0xc9, 0xd2, 0x19, 0xbb,
+  0x3b, 0x3a, 0xfb, 0xc8, 0x96, 0xc4, 0x72, 0x32, 0xe2, 0xc3, 0xf2, 0xee,
+  0x7c, 0xf8, 0x25, 0xdd, 0x39, 0x48, 0x56, 0xa6, 0x5a, 0x61, 0x82, 0x58,
+  0xe2, 0xd7, 0x4a, 0xc4, 0x5c, 0x62, 0x57, 0xab, 0xde, 0xc3, 0x73, 0x84,
+  0x9a, 0x34, 0xa3, 0x36, 0x49, 0x6b, 0xe8, 0x98, 0x28, 0x4a, 0x7e, 0x1a,
+  0x46, 0x0d, 0xb5, 0xdf, 0xd3, 0xae, 0x3c, 0xb5, 0xbb, 0xc7, 0x57, 0xde,
+  0x47, 0x5b, 0x9a, 0x09, 0x36, 0xbc, 0xe4, 0x47, 0xed, 0x0e, 0x76, 0x7c,
+  0xfd, 0xca, 0x26, 0x35, 0x56, 0x48, 0xa2, 0xa2, 0x29, 0x5e, 0xf3, 0x54,
+  0x14, 0x1a, 0x09, 0x40, 0x93, 0x9d, 0xd7, 0xe4, 0x67, 0xbb, 0xcc, 0x6e,
+  0x60, 0x4e, 0x92, 0xb0, 0x07, 0x52, 0x92, 0x6b, 0x36, 0x9b, 0x73, 0xf2,
+  0x57, 0xa4, 0xa4, 0x2a, 0xce, 0xd1, 0x73, 0x77, 0xa4, 0x5e, 0xd8, 0xe5,
+  0x96, 0x3e, 0x72, 0xae, 0x88, 0x14, 0x21, 0xe3, 0x74, 0x0d, 0x28, 0x9f,
+  0x59, 0xc6, 0x2d, 0x35, 0x4b, 0x13, 0x55, 0x0f, 0xdb, 0x0c, 0xf0, 0xb4,
+  0x9f, 0x71, 0xd9, 0xda, 0xea, 0x98, 0xc2, 0xfa, 0x2d, 0x28, 0x63, 0x6a,
+  0x95, 0xf0, 0xd8, 0x11, 0x49, 0x03, 0x06, 0x89, 0x0c, 0x25, 0xc5, 0xe8,
+  0x5c, 0xb3, 0xa3, 0x9b, 0xb6, 0x96, 0x72, 0xe5, 0xba, 0x30, 0x9a, 0x55,
+  0xcf, 0x4c, 0xbb, 0xd3, 0xdc, 0x74, 0x68, 0x03, 0x74, 0x3a, 0x5a, 0x2d,
+  0x49, 0x64, 0xa1, 0x6e, 0x61, 0x4b, 0x6c, 0xd1, 0x2e, 0x45, 0x14, 0xf2,
+  0x69, 0x76, 0x85, 0x2e, 0x5f, 0x03, 0xbd, 0xa4, 0xff, 0x3f, 0x64, 0x66,
+  0x48, 0x3d, 0x27, 0x08, 0x18, 0x98, 0x8f, 0xe6, 0x1e, 0xfb, 0x85, 0xa0,
+  0x4e, 0x21, 0xf0, 0x09, 0xdf, 0xa9, 0xe3, 0xb0, 0x84, 0xf8, 0x9a, 0xeb,
+  0x07, 0xf9, 0xa7, 0x63, 0xcf, 0xb3, 0x6e, 0x85, 0x28, 0x11, 0x15, 0xdc,
+  0xdc, 0x9a, 0xab, 0xa3, 0x0a, 0xc8, 0x5f, 0xd0, 0x61, 0x7b, 0x91, 0x7d,
+  0x49, 0x14, 0xc7, 0x87, 0x65, 0xea, 0x4f, 0xab, 0xda, 0x72, 0x6b, 0xda,
+  0x53, 0xde, 0xfc, 0xd6, 0x95, 0xc1, 0xc4, 0xf3, 0x7d, 0xf3, 0x42, 0xff,
+  0x83, 0xb8, 0x33, 0xfe, 0xcc, 0x5f, 0x18, 0x90, 0x3c, 0x93, 0x2f, 0x9c,
+  0x53, 0x5b, 0xf6, 0x81, 0x7d, 0x79, 0x89, 0xd8, 0xea, 0xd7, 0xc5, 0x93,
+  0xd3, 0x9e, 0x15, 0x7e, 0x5e, 0xd9, 0xec, 0x3b, 0x35, 0x6d, 0x71, 0xc8,
+  0xf8, 0xaf, 0xfc, 0xae, 0x18, 0x8f, 0x0f, 0xd4, 0xc4, 0x80, 0xb3, 0x29,
+  0xc4, 0xf7, 0xb2, 0xb7, 0xbb, 0xcd, 0x9d, 0xd1, 0x52, 0xb4, 0xd0, 0xeb,
+  0x64, 0x4b, 0x3a, 0x3c, 0x07, 0x0e, 0x02, 0xca, 0x46, 0xb9, 0x81, 0x53,
+  0xee, 0x07, 0xe1, 0x70, 0x66, 0x02, 0x88, 0x46, 0xa0, 0x8c, 0xae, 0x26,
+  0x73, 0xd7, 0x32, 0x41, 0x61, 0x29, 0xeb, 0xb3, 0xe6, 0x16, 0xa8, 0x67,
+  0x55, 0xbe, 0x0d, 0x2a, 0xea, 0xee, 0x5b, 0x4d, 0x19, 0x45, 0x54, 0x52,
+  0x14, 0x8d, 0xbd, 0xb7, 0xb9, 0xb0, 0x79, 0xad, 0xa8, 0x07, 0xb3, 0xa3,
+  0x2f, 0x0e, 0x4e, 0xbf, 0x3a, 0x82, 0x26, 0x00, 0xd9, 0x4e, 0x07, 0x34,
+  0xa7, 0xdd, 0x3e, 0x59, 0x8c, 0x61, 0x0a, 0x99, 0x19, 0x03, 0x84, 0xad,
+  0x1e, 0x48, 0xaa, 0x34, 0x27, 0xa6, 0xa4, 0xb2, 0x79, 0xb1, 0xdc, 0x02,
+  0x4c, 0x5b, 0x4b, 0xd4, 0xa3, 0x0a, 0x0d, 0x02, 0x30, 0xe6, 0x8a, 0xdd,
+  0xaf, 0xf5, 0x62, 0x34, 0x47, 0x29, 0x16, 0xd8, 0x67, 0x4e, 0xcc, 0xa8,
+  0x9f, 0x65, 0xd0, 0x3e, 0x8b, 0x6b, 0x9a, 0xb6, 0x64, 0x6d, 0xfa, 0x0a,
+  0x36, 0xfd, 0xc0, 0xf7, 0xaa, 0x31, 0x2f, 0xc6, 0xee, 0xce, 0x8e, 0xa3,
+  0x2c, 0x4b, 0x6d, 0x83, 0x81, 0xb4, 0xac, 0x92, 0x9d, 0xfe, 0xab, 0x57,
+  0xcb, 0x04, 0xa1, 0x6d, 0x14, 0x54, 0x08, 0x2f, 0x9e, 0xdc, 0x66, 0x9f,
+  0x1e, 0x5d, 0xd6, 0x66, 0xc4, 0xa2, 0x41, 0x89, 0x39, 0x01, 0x05, 0xd6,
+  0x56, 0x6b, 0x11, 0x0f, 0x0f, 0x47, 0x6b, 0x10, 0x07, 0xb3, 0xa5, 0xc9,
+  0x30, 0x95, 0x6b, 0x89, 0xb5, 0x3f, 0x40, 0x1d, 0xa2, 0xce, 0xa0, 0x39,
+  0xe1, 0x02, 0x73, 0x1b, 0x8e, 0x7d, 0xd2, 0xc4, 0x78, 0x06, 0xfc, 0x92,
+  0x29, 0xba, 0x0a, 0x47, 0xa3, 0x2a, 0xc1, 0x87, 0x73, 0xf2, 0xff, 0x1d,
+  0x9f, 0x7e, 0xc5, 0xee, 0x10, 0x63, 0xdb, 0xc3, 0x97, 0xbe, 0xdd, 0xb1,
+  0xf4, 0x3f, 0x48, 0xb5, 0x6c, 0x2a, 0x10, 0x45, 0x38, 0x0c, 0xa6, 0xab,
+  0xcf, 0x0b, 0x29, 0x51, 0x6d, 0x57, 0x7f, 0x89, 0xaf, 0xf2, 0x32, 0xe9,
+  0x7b, 0xca, 0x89, 0x10, 0x8f, 0x91, 0x66, 0x32, 0x7b, 0x50, 0xcb, 0x48,
+  0xbe, 0x80, 0xd6, 0x35, 0x32, 0x63, 0x9b, 0x65, 0x3b, 0x97, 0xcd, 0x73,
+  0xec, 0xa0, 0x40, 0x37, 0x89, 0x7c, 0x92, 0x3f, 0x83, 0xf3, 0xdd, 0xd1,
+  0x44, 0x9e, 0xd6, 0x95, 0x96, 0xab, 0xb3, 0xcd, 0x7a, 0x4c, 0x9a, 0x55,
+  0x4f, 0x7d, 0x3f, 0x5d, 0x37, 0x24, 0xd7, 0x93, 0xf3, 0xa5, 0x3a, 0xad,
+  0x36, 0xd8, 0xd4, 0xcb, 0xf2, 0x9f, 0xef, 0xe7, 0x8a, 0x1e, 0xd2, 0x41,
+  0xa5, 0x9b, 0xaa, 0x98, 0x38, 0x9f, 0x86, 0xf4, 0x38, 0x1a, 0x08, 0xb9,
+  0xe4, 0xf7, 0xf9, 0xd3, 0x69, 0xfc, 0x73, 0xfc, 0xbe, 0x4e, 0x4d, 0xe4,
+  0x00, 0x90, 0x4a, 0x2b, 0xc4, 0x74, 0x36, 0x85, 0x5c, 0x6d, 0x19, 0xd2,
+  0xc2, 0x21, 0x39, 0xf2, 0xb6, 0x5a, 0xb2, 0x96, 0x08, 0x57, 0x05, 0x68,
+  0xeb, 0x68, 0x0f, 0x81, 0x1f, 0x05, 0x97, 0xd7, 0x2d, 0x30, 0x9e, 0xe6,
+  0xf9, 0x45, 0x51, 0x64, 0x64, 0xa4, 0xa2, 0xaa, 0x64, 0xce, 0xf6, 0x42,
+  0xcf, 0x9e, 0xa2, 0x6a, 0x21, 0x35, 0x9d, 0x01, 0x34, 0x30, 0x9d, 0x4f,
+  0xeb, 0x1b, 0x54, 0x31, 0xb3, 0xae, 0xa8, 0x50, 0xbd, 0xc2, 0xe7, 0xb9,
+  0x5d, 0xd2, 0xa7, 0x58, 0x99, 0x82, 0x72, 0xdd, 0x9a, 0x8a, 0xf6, 0x0c,
+  0xac, 0xad, 0x91, 0x13, 0x7e, 0x9b, 0x5c, 0xf1, 0xc3, 0x70, 0x02, 0xd5,
+  0x97, 0xbe, 0xd2, 0x1f, 0xef, 0x62, 0x0c, 0x8f, 0x78, 0xe6, 0x3d, 0xef,
+  0xc9, 0x53, 0x4f, 0x1c, 0xeb, 0xef, 0x91, 0xb8, 0x22, 0x0e, 0x9d, 0x27,
+  0xc8, 0xa2, 0x5b, 0xbd, 0xed, 0x4d, 0xf3, 0x6d, 0x01, 0x38, 0x7d, 0x60,
+  0x99, 0xa1, 0x66, 0x46, 0x67, 0xb9, 0x38, 0x85, 0xec, 0xfc, 0xc3, 0xa5,
+  0x50, 0x49, 0xa9, 0x78, 0xf7, 0x6b, 0x09, 0xf9, 0x45, 0x43, 0x21, 0xcd,
+  0x48, 0xb7, 0x60, 0xf3, 0x17, 0xb1, 0x6e, 0xce, 0x8a, 0xc4, 0x37, 0x31,
+  0x42, 0xee, 0x60, 0xcf, 0x66, 0xc0, 0x9c, 0x9f, 0x0d, 0x2f, 0xc9, 0x8d,
+  0x80, 0xab, 0x4f, 0xed, 0xd1, 0x6f, 0x8f, 0x2e, 0xbe, 0x3c, 0x1b, 0x1e,
+  0x99, 0xf5, 0x78, 0x7b, 0xf4, 0xe5, 0x07, 0x92, 0x5a, 0xb4, 0x3b, 0xd8,
+  0xf5, 0x4c, 0xd9, 0x31, 0xe2, 0xff, 0xa2, 0xba, 0xae, 0x48, 0x91, 0xc3,
+  0x36, 0x65, 0x3d, 0x48, 0xeb, 0x79, 0x5a, 0x15, 0x8f, 0xeb, 0x92, 0x4e,
+  0x33, 0xf6, 0x55, 0xe6, 0xc8, 0x25, 0x60, 0x0a, 0x1f, 0xc9, 0x43, 0x42,
+  0x25, 0x43, 0x98, 0x97, 0x72, 0x94, 0x98, 0x46, 0xbb, 0xde, 0x77, 0x4e,
+  0xcd, 0x3b, 0xf6, 0x4c, 0xcb, 0xe1, 0x73, 0xb5, 0x17, 0xc1, 0x27, 0x84,
+  0xcd, 0x7b, 0x68, 0xf5, 0x68, 0x61, 0xd4, 0x99, 0x96, 0x7c, 0x6b, 0xa2,
+  0x5c, 0x20, 0xb5, 0x8d, 0x7b, 0x3c, 0x6f, 0x70, 0x85, 0xb3, 0x41, 0x21,
+  0xa5, 0x0b, 0x6b, 0xde, 0xdc, 0x5c, 0xa7, 0x95, 0x60, 0x64, 0x99, 0x57,
+  0xb6, 0xb2, 0xce, 0xb8, 0x8c, 0x01, 0xdf, 0xda, 0x12, 0x0f, 0x67, 0xcc,
+  0xae, 0xd0, 0x78, 0x6d, 0x8a, 0x11, 0x7c, 0x8f, 0x71, 0x0a, 0x45, 0x39,
+  0xd7, 0xfe, 0xb3, 0x7c, 0xb6, 0x34, 0xf3, 0x7e, 0x1d, 0x16, 0xde, 0x3a,
+  0x77, 0xcb, 0x45, 0xcf, 0x25, 0x8f, 0x94, 0xfc, 0x1c, 0xac, 0x08, 0x48,
+  0x5a, 0x12, 0xfa, 0xdd, 0xa9, 0x68, 0xe2, 0x14, 0x14, 0x3e, 0xbb, 0x94,
+  0x16, 0xe0, 0x99, 0x90, 0xcb, 0x8b, 0x05, 0xaa, 0x36, 0x2b, 0x01, 0x26,
+  0x97, 0x14, 0xc4, 0xc2, 0x55, 0x10, 0x75, 0xb4, 0xa4, 0x08, 0x09, 0xf0,
+  0xe6, 0x0b, 0xcf, 0x3b, 0xb7, 0x8e, 0xff, 0xe2, 0x8c, 0x7a, 0x81, 0x93,
+  0xb5, 0xb5, 0xb5, 0xb7, 0x47, 0x97, 0x07, 0xc7, 0x27, 0x47, 0x6f, 0x93,
+  0xe3, 0xd3, 0x77, 0x67, 0x17, 0xef, 0x0f, 0x2e, 0x05, 0x8e, 0xf1, 0xd6,
+  0x7a, 0xe4, 0x5c, 0x95, 0x35, 0xa9, 0x25, 0xe4, 0x79, 0xeb, 0xb0, 0x85,
+  0xcd, 0x2a, 0x5e, 0x4b, 0x19, 0x75, 0x9e, 0x86, 0xac, 0x35, 0x07, 0x6b,
+  0x89, 0xc0, 0x38, 0x5c, 0x59, 0x3a, 0xd2, 0x0b, 0xb6, 0x6d, 0xec, 0x7d,
+  0xa0, 0xd3, 0x69, 0x79, 0x94, 0x88, 0x6e, 0x78, 0x65, 0x53, 0xb6, 0xca,
+  0x28, 0xdf, 0x89, 0xae, 0x24, 0x30, 0xf6, 0x64, 0xff, 0x78, 0x9b, 0x0b,
+  0x5a, 0x7b, 0x25, 0x0b, 0xb4, 0xde, 0x0c, 0x58, 0x39, 0xa8, 0x1d, 0x8f,
+  0x40, 0xe7, 0xaa, 0x04, 0xaa, 0xc4, 0x6f, 0xd3, 0xd2, 0xc2, 0x60, 0x45,
+  0x8d, 0x16, 0xc0, 0x30, 0x1e, 0xfc, 0xc4, 0x5f, 0x5f, 0xe2, 0x65, 0x59,
+  0xa3, 0x64, 0x80, 0x46, 0x8a, 0xa5, 0x11, 0xc5, 0x51, 0x6d, 0x56, 0xca,
+  0x9e, 0x75, 0xd0, 0x2e, 0x59, 0x81, 0xad, 0xd1, 0x39, 0xe1, 0xaa, 0xf5,
+  0x9b, 0xda, 0xb4, 0xf1, 0x7a, 0xa3, 0x31, 0xf5, 0x8f, 0x85, 0x38, 0x99,
+  0xe6, 0x62, 0x6b, 0x8d, 0xb9, 0xf5, 0x0b, 0xa5, 0xac, 0xb3, 0x48, 0x50,
+  0x67, 0xf1, 0xe7, 0xdb, 0x5e, 0xe1, 0x47, 0x9c, 0x36, 0x77, 0x6e, 0x95,
+  0xe8, 0xba, 0xff, 0xd6, 0x3c, 0x34, 0x59, 0xcc, 0xe6, 0x5a, 0xed, 0x5b,
+  0x34, 0x6a, 0xf8, 0xf2, 0x74, 0x09, 0x59, 0x69, 0x83, 0xf2, 0x01, 0xc7,
+  0xcf, 0x3b, 0x99, 0x03, 0x1e, 0x07, 0xf6, 0x77, 0xa3, 0xa1, 0x40, 0x14,
+  0x9b, 0xb5, 0xd1, 0xbb, 0x6e, 0xf9, 0xce, 0xb6, 0xe6, 0x82, 0x09, 0x19,
+  0xda, 0x67, 0xbb, 0xf5, 0x3e, 0x53, 0x87, 0x35, 0xc2, 0xfc, 0x6f, 0x2a,
+  0xfd, 0x17, 0x6d, 0x59, 0x69, 0x50, 0xae, 0x8a, 0x30, 0xf8, 0xd8, 0x1a,
+  0x94, 0xff, 0x62, 0x1b, 0xd2, 0xe3, 0x4b, 0x7a, 0xfd, 0xb4, 0x63, 0xbb,
+  0xea, 0xf6, 0x40, 0xa4, 0xb8, 0x91, 0x27, 0x0f, 0x5a, 0xe8, 0x82, 0x38,
+  0x15, 0x01, 0x37, 0x22, 0x67, 0x29, 0xf8, 0x08, 0x44, 0x52, 0x22, 0x20,
+  0xa6, 0xdb, 0x77, 0x81, 0xf2, 0x0d, 0xe5, 0x2d, 0xd9, 0xf2, 0x5a, 0xb2,
+  0xd5, 0x4b, 0xa5, 0x63, 0x14, 0x99, 0x30, 0xdd, 0x41, 0xe8, 0x15, 0x6b,
+  0x9a, 0xf5, 0xab, 0x2f, 0x29, 0x16, 0x11, 0xd2, 0x9f, 0x4b, 0xcd, 0x43,
+  0xc8, 0x93, 0x51, 0x9d, 0xa5, 0x35, 0x0c, 0x2a, 0x24, 0xd4, 0xf0, 0x9d,
+  0x61, 0xdd, 0xb0, 0x8e, 0xb4, 0xcd, 0x2b, 0x64, 0x07, 0x11, 0x3d, 0x49,
+  0x5e, 0xd3, 0xb3, 0x44, 0x8a, 0xe3, 0xb1, 0xc2, 0x64, 0x5e, 0x2b, 0x1a,
+  0xe0, 0x30, 0xcd, 0x70, 0x25, 0x7a, 0x86, 0x85, 0x9e, 0xd3, 0x03, 0xa9,
+  0x6a, 0xf8, 0xeb, 0xae, 0xe8, 0xd0, 0xfa, 0xfc, 0xc6, 0x7c, 0x63, 0x3d,
+  0xb9, 0x26, 0x1b, 0x69, 0x64, 0xba, 0x1e, 0x08, 0xd0, 0x09, 0x3f, 0xfe,
+  0xe6, 0x22, 0xbd, 0x4a, 0xb3, 0xe9, 0x1f, 0xf6, 0x76, 0x86, 0xe9, 0xf5,
+  0x62, 0x9a, 0xfe, 0x1b, 0x5e, 0x7c, 0xf3, 0xec, 0xd9, 0xde, 0xce, 0x67,
+  0x9f, 0xef, 0xac, 0x77, 0xd1, 0x07, 0x8e, 0x93, 0x05, 0x08, 0x1b, 0x70,
+  0xb2, 0x90, 0xdc, 0xc5, 0x77, 0x06, 0xe3, 0xeb, 0x1c, 0x46, 0x1d, 0x29,
+  0x4a, 0x32, 0x07, 0x29, 0x5b, 0x93, 0x10, 0x93, 0x9c, 0x3f, 0x6c, 0x76,
+  0x70, 0x6d, 0xf6, 0xf5, 0xef, 0x77, 0xf7, 0x59, 0x94, 0x5d, 0xc3, 0xf9,
+  0x9e, 0xf2, 0x8e, 0x4d, 0x5e, 0xe7, 0x85, 0xb9, 0x81, 0xbe, 0x48, 0x9a,
+  0xf4, 0xda, 0xee, 0x55, 0x61, 0x49, 0xe0, 0x74, 0x08, 0x1b, 0xdf, 0xbc,
+  0xa2, 0x4d, 0x9e, 0x9b, 0xa9, 0xda, 0x04, 0x17, 0xc6, 0x46, 0x0d, 0x25,
+  0x6b, 0x9e, 0x55, 0xc8, 0x5c, 0xbd, 0xae, 0xd2, 0x99, 0x26, 0x9d, 0xd0,
+  0xfb, 0x04, 0x5b, 0x1b, 0xcc, 0xa7, 0x5a, 0x7c, 0x9d, 0xfd, 0x16, 0xb9,
+  0xdb, 0x70, 0xd3, 0x79, 0xed, 0xaa, 0x63, 0xf2, 0x75, 0x73, 0x2c, 0x45,
+  0xc5, 0x36, 0xc8, 0xa5, 0xb2, 0xce, 0x3e, 0x95, 0x75, 0x8c, 0xaa, 0x67,
+  0x2b, 0x49, 0xf7, 0x27, 0x3a, 0xd2, 0x01, 0xfe, 0x0e, 0x56, 0x8f, 0x94,
+  0x19, 0x01, 0xd7, 0xe7, 0x9c, 0x47, 0x6f, 0xeb, 0x4b, 0xb1, 0xf3, 0x2d,
+  0x6f, 0x8d, 0x2b, 0x75, 0xe0, 0xcb, 0xe4, 0xb5, 0x7a, 0x89, 0x76, 0xbf,
+  0x78, 0x83, 0x0d, 0xb1, 0xfb, 0xc5, 0xbf, 0xd9, 0x9f, 0xed, 0xc9, 0xcf,
+  0xf6, 0xbe, 0xf8, 0xb7, 0xc1, 0x00, 0xfd, 0xa3, 0x1d, 0xb2, 0xa1, 0xbf,
+  0xde, 0x10, 0xd6, 0xa4, 0x54, 0x8e, 0x30, 0xff, 0x8b, 0xcc, 0x76, 0x2e,
+  0x4a, 0x85, 0xb5, 0x5e, 0xd7, 0x2f, 0xfb, 0xb3, 0xdc, 0x93, 0x88, 0xaa,
+  0x95, 0x5b, 0x79, 0xed, 0x53, 0xcf, 0xd5, 0xb1, 0x49, 0xb7, 0x71, 0x10,
+  0xb4, 0x23, 0x30, 0x4a, 0xbc, 0xfc, 0xef, 0xb4, 0x53, 0xff, 0x7d, 0x2d,
+  0x91, 0xe8, 0x26, 0x2d, 0xc7, 0x03, 0x02, 0x1e, 0xba, 0x6d, 0x99, 0xee,
+  0x88, 0x79, 0x91, 0xa9, 0x65, 0x4a, 0xe3, 0xa0, 0x3b, 0xd0, 0x2b, 0xb1,
+  0xf4, 0x47, 0xa9, 0x4a, 0x6b, 0xf3, 0x5f, 0xf4, 0x19, 0x4e, 0x79, 0x31,
+  0x3a, 0x46, 0x43, 0xd2, 0x01, 0xcf, 0xfe, 0xe1, 0xfb, 0xef, 0x45, 0xa1,
+  0x32, 0x7f, 0x91, 0x9e, 0xdf, 0x18, 0x59, 0x34, 0x31, 0xe2, 0x6d, 0x86,
+  0x9a, 0x2d, 0x52, 0x15, 0x4b, 0xae, 0xfc, 0x2b, 0x19, 0x29, 0x37, 0x62,
+  0x96, 0xf6, 0x60, 0x78, 0x78, 0x7c, 0x0c, 0xc4, 0x28, 0x26, 0xf5, 0x88,
+  0xc5, 0x18, 0xf6, 0xe6, 0x26, 0x20, 0x1e, 0x0e, 0x96, 0xe8, 0x6f, 0x7d,
+  0x5a, 0x3b, 0x2c, 0x3b, 0x76, 0xbf, 0x69, 0x4c, 0x0d, 0x70, 0x59, 0x4a,
+  0xec, 0x59, 0xd6, 0x72, 0xde, 0xac, 0xf3, 0x83, 0xd7, 0xf9, 0xba, 0x04,
+  0xb1, 0xf8, 0x27, 0xeb, 0x8e, 0x04, 0x8b, 0xd7, 0x03, 0x8b, 0xf6, 0x86,
+  0x55, 0xa7, 0xfc, 0xef, 0xd9, 0x9b, 0xdd, 0x9d, 0xf8, 0x13, 0x88, 0xda,
+  0x12, 0xed, 0xdf, 0x1b, 0x17, 0x10, 0x5c, 0xf5, 0x7c, 0x3e, 0xe1, 0xa7,
+  0xa5, 0xaa, 0x34, 0x0a, 0x7c, 0xbd, 0x59, 0x1f, 0xd1, 0x0d, 0x4b, 0xff,
+  0xb7, 0xa4, 0x1f, 0x88, 0x58, 0xc9, 0xb3, 0xf5, 0x62, 0x34, 0xcb, 0x5b,
+  0x1d, 0xde, 0xa6, 0x01, 0x7e, 0x41, 0x03, 0xfe, 0x2e, 0xb3, 0xbb, 0x23,
+  0x23, 0xd5, 0x8e, 0x75, 0xbf, 0x8d, 0xab, 0xb2, 0x1c, 0xa5, 0xd5, 0x86,
+  0x84, 0x73, 0xb4, 0x9f, 0x1b, 0xbb, 0x7b, 0xcf, 0x9e, 0xbf, 0xd8, 0x18,
+  0x88, 0x9e, 0x06, 0x11, 0xd1, 0xf8, 0xc4, 0x23, 0xdc, 0x84, 0xa5, 0xcc,
+  0x60, 0xd4, 0x34, 0x52, 0xf5, 0x63, 0xc1, 0x55, 0x92, 0x62, 0xf4, 0xb9,
+  0x37, 0xfc, 0xb5, 0x7f, 0xa3, 0xef, 0xbc, 0xc1, 0x27, 0xfe, 0x2d, 0x9f,
+  0xbc, 0xb1, 0x23, 0xfc, 0x37, 0x1a, 0xcb, 0x1b, 0x19, 0x84, 0x59, 0x57,
+  0x4d, 0x27, 0xac, 0xb7, 0xd6, 0xa2, 0x72, 0x2d, 0xba, 0xb8, 0xba, 0x88,
+  0x6b, 0x18, 0x34, 0x10, 0x0c, 0xfd, 0x09, 0x47, 0x3f, 0xa0, 0xad, 0xba,
+  0x64, 0xba, 0xed, 0x4f, 0x7d, 0xd3, 0x4a, 0x9f, 0x5a, 0xe9, 0x3b, 0x81,
+  0x0d, 0xb6, 0xc6, 0x3e, 0x2d, 0x44, 0x4f, 0xb2, 0x29, 0xa7, 0xf0, 0xb2,
+  0x88, 0x2a, 0x50, 0x96, 0x00, 0x01, 0x1c, 0x7e, 0x75, 0xbc, 0x21, 0xc0,
+  0x1b, 0x36, 0x13, 0x7b, 0x31, 0xff, 0xb4, 0x85, 0x18, 0x8e, 0xd3, 0x39,
+  0x9d, 0xfe, 0x35, 0x25, 0xa4, 0x4d, 0x09, 0x47, 0x42, 0xdf, 0xe5, 0xc4,
+  0x67, 0xf3, 0x31, 0xb9, 0x75, 0xa6, 0xe4, 0xf1, 0xae, 0x98, 0x47, 0xd2,
+  0x6b, 0xc6, 0xcc, 0x4b, 0x2d, 0x80, 0x12, 0xc4, 0x7c, 0xe6, 0x36, 0x73,
+  0xb2, 0xff, 0xce, 0x06, 0x3d, 0x6d, 0xa6, 0x9e, 0x3c, 0x6a, 0x7e, 0xc5,
+  0xf2, 0x44, 0x45, 0xc4, 0xfa, 0x40, 0x6b, 0x76, 0xf3, 0x4e, 0xf0, 0xa5,
+  0x07, 0xb2, 0xf7, 0x47, 0x99, 0xe4, 0x5b, 0xb2, 0xdb, 0x84, 0x15, 0x43,
+  0x92, 0x9f, 0xaf, 0x6d, 0xb1, 0xbc, 0x2f, 0x12, 0xf0, 0x4a, 0xf3, 0x5b,
+  0x12, 0x77, 0x6c, 0x95, 0xae, 0xc7, 0x4b, 0x6b, 0xae, 0x40, 0x1f, 0xcf,
+  0x88, 0x43, 0xe3, 0x88, 0x62, 0xe0, 0x13, 0x66, 0x8e, 0x1e, 0xc4, 0xd9,
+  0x40, 0x2d, 0x6c, 0xfc, 0x09, 0x87, 0xe0, 0x35, 0x2d, 0x03, 0x7e, 0xfd,
+  0xc5, 0xc6, 0x9a, 0xad, 0x15, 0x65, 0x35, 0xf7, 0x4e, 0x00, 0x99, 0x37,
+  0xa8, 0x3f, 0x1e, 0x8f, 0x20, 0x81, 0xb5, 0x31, 0xa2, 0x63, 0x41, 0x41,
+  0x08, 0xa3, 0x4d, 0x4d, 0x27, 0x52, 0x69, 0xd7, 0x3a, 0xa8, 0xb9, 0xf1,
+  0x8c, 0xd2, 0x14, 0x48, 0x7b, 0xdc, 0x20, 0xb4, 0x2a, 0xde, 0xdb, 0xb0,
+  0xe4, 0xa8, 0xf0, 0x99, 0x42, 0xe0, 0x55, 0x99, 0x16, 0x80, 0x5d, 0x93,
+  0x62, 0x5c, 0x4e, 0x9b, 0xf7, 0x07, 0x56, 0x7b, 0xca, 0x83, 0xcb, 0x57,
+  0x64, 0x8e, 0xa2, 0xe0, 0x88, 0xbc, 0xa3, 0x44, 0x60, 0xf9, 0xe8, 0x1b,
+  0x9a, 0xee, 0xdd, 0xc1, 0x75, 0x7e, 0xc5, 0x93, 0x61, 0x44, 0xe4, 0x75,
+  0xb6, 0x6d, 0xfe, 0xd9, 0x33, 0x3f, 0xdf, 0x23, 0xad, 0x8c, 0xfe, 0xf2,
+  0x0c, 0x78, 0x2c, 0xff, 0xee, 0xf7, 0xce, 0x86, 0x3d, 0x17, 0xf4, 0x97,
+  0xdc, 0xde, 0xf9, 0x12, 0xd5, 0x91, 0x5e, 0xf6, 0x95, 0xaf, 0x14, 0x59,
+  0x72, 0xaa, 0x6a, 0xfa, 0xa0, 0x12, 0x32, 0xb4, 0xc8, 0x24, 0x5d, 0x50,
+  0x7a, 0x8a, 0x05, 0x8f, 0x08, 0x90, 0x42, 0x14, 0x75, 0xd2, 0xbb, 0x73,
+  0x71, 0xcf, 0x50, 0x3a, 0x0f, 0x6e, 0xd6, 0xec, 0x7e, 0xab, 0xe7, 0x23,
+  0x6d, 0x8d, 0x78, 0xbf, 0xa3, 0xe4, 0x78, 0x62, 0x10, 0xb1, 0x3a, 0x2d,
+  0x3e, 0xbf, 0x29, 0x75, 0x15, 0xbd, 0x9c, 0x61, 0x2c, 0x73, 0xde, 0x5d,
+  0xc1, 0x76, 0x69, 0x42, 0x06, 0xf2, 0xe5, 0x75, 0xb3, 0x45, 0x9f, 0xc9,
+  0xa6, 0x35, 0x6c, 0x75, 0x29, 0x4a, 0xaa, 0x5f, 0x15, 0xe0, 0x01, 0x7f,
+  0x68, 0xc3, 0x3f, 0xfb, 0xe5, 0xb8, 0xc9, 0x8c, 0xad, 0x4b, 0x6c, 0x69,
+  0x33, 0x96, 0x73, 0x47, 0x33, 0xa6, 0x24, 0xc6, 0x16, 0x9e, 0xf6, 0xf9,
+  0xf6, 0x14, 0x95, 0xa8, 0xff, 0x6e, 0x90, 0x9c, 0x00, 0x31, 0x5e, 0xa7,
+  0xcc, 0xc7, 0xa3, 0x37, 0xac, 0xee, 0x06, 0xb3, 0x75, 0x58, 0x07, 0x5f,
+  0xe3, 0x0c, 0x16, 0x62, 0xb6, 0xd0, 0x2d, 0x05, 0xe2, 0x49, 0x67, 0x74,
+  0xb2, 0x7e, 0x21, 0xfa, 0x48, 0x0f, 0xbe, 0x70, 0xfb, 0x1c, 0x7c, 0xfe,
+  0xec, 0xf7, 0x43, 0x1e, 0x97, 0xdd, 0xb0, 0x5e, 0x23, 0x0c, 0xda, 0x12,
+  0x05, 0xd4, 0x13, 0xeb, 0xf6, 0x10, 0x30, 0xa4, 0x32, 0x63, 0xa7, 0x0b,
+  0x11, 0x2c, 0x10, 0x29, 0x10, 0x62, 0xc2, 0xa6, 0x35, 0xec, 0x32, 0xaa,
+  0x19, 0x49, 0xdb, 0x68, 0x1d, 0x76, 0xe3, 0x34, 0xb3, 0xc6, 0x35, 0xaf,
+  0x55, 0x69, 0xe1, 0xe6, 0xf0, 0xc5, 0x08, 0xdd, 0xae, 0x0d, 0xd7, 0x51,
+  0x27, 0xa9, 0x5f, 0xe9, 0x9d, 0xf9, 0x0b, 0x29, 0x67, 0xa3, 0xca, 0xac,
+  0x7a, 0x56, 0xf1, 0xd5, 0xc0, 0x18, 0x21, 0xaf, 0x80, 0xe6, 0xd7, 0x97,
+  0xef, 0x4f, 0x12, 0xe5, 0x35, 0xba, 0x72, 0xaa, 0xa2, 0x22, 0x33, 0x31,
+  0x44, 0xf1, 0x8c, 0xb0, 0x3e, 0x24, 0x4f, 0xf1, 0x2d, 0xc7, 0x73, 0x4b,
+  0x09, 0xef, 0x09, 0x4d, 0x4e, 0xeb, 0xc8, 0x7a, 0x4f, 0xf0, 0xab, 0xb4,
+  0x8f, 0xcc, 0x36, 0xd9, 0xa0, 0x29, 0xd8, 0xe8, 0x25, 0x1b, 0xd4, 0x55,
+  0xfa, 0xc5, 0x06, 0xe6, 0x13, 0x3f, 0xf6, 0xa6, 0x6f, 0x63, 0x10, 0x39,
+  0x85, 0xf4, 0xcc, 0x9b, 0x3f, 0xb7, 0x66, 0x09, 0x3f, 0xd7, 0xa6, 0xde,
+  0x70, 0xbe, 0x48, 0xa0, 0x73, 0xeb, 0xbb, 0x5e, 0xfb, 0x6f, 0x0e, 0x4b,
+  0x62, 0x1a, 0xa5, 0x02, 0x9d, 0x0e, 0xe6, 0x3a, 0xb6, 0x3f, 0xcb, 0x91,
+  0xfb, 0x1a, 0x34, 0xf4, 0xf8, 0x29, 0xbe, 0x54, 0x51, 0x64, 0x21, 0xa0,
+  0x2c, 0xdd, 0x78, 0x0b, 0xa8, 0xe4, 0x35, 0xab, 0x99, 0xb3, 0xdd, 0x77,
+  0x5f, 0xc2, 0xcb, 0x00, 0x99, 0xb3, 0x3b, 0x40, 0x32, 0xa4, 0x63, 0x46,
+  0xb7, 0x0d, 0x58, 0xe3, 0x7d, 0x1d, 0x13, 0xba, 0x6e, 0x51, 0xb9, 0x6a,
+  0xd2, 0xeb, 0x2c, 0xc7, 0x64, 0xd7, 0x3c, 0x1f, 0xa3, 0xd6, 0xfd, 0x9b,
+  0x3f, 0x4f, 0xca, 0x6b, 0x92, 0x5c, 0x3d, 0x73, 0xd0, 0xe8, 0x4f, 0x00,
+  0x92, 0xf7, 0xe4, 0xa3, 0xdc, 0x61, 0x9c, 0x15, 0xd6, 0xe2, 0xf5, 0xdf,
+  0x4b, 0x20, 0xaa, 0xef, 0xc8, 0x15, 0x3a, 0x96, 0xb6, 0x6d, 0xd3, 0xbc,
+  0x1e, 0xa6, 0x7d, 0xfb, 0x0b, 0xff, 0x5b, 0x3a, 0x39, 0xa9, 0xb4, 0xcc,
+  0x85, 0x52, 0xa5, 0x8e, 0xec, 0xf4, 0xc1, 0x16, 0x89, 0x82, 0x83, 0x8b,
+  0x18, 0xce, 0xf9, 0xde, 0x9a, 0x4a, 0x86, 0xde, 0xc6, 0x9f, 0x37, 0x38,
+  0x47, 0x60, 0xe3, 0xf5, 0x06, 0x24, 0x18, 0xc9, 0xa5, 0xd9, 0x28, 0x43,
+  0x1e, 0x99, 0x5c, 0x4e, 0x1b, 0x7c, 0x2b, 0xf6, 0x59, 0x77, 0x10, 0x26,
+  0x47, 0x77, 0x40, 0x70, 0x2d, 0x3b, 0x33, 0xd2, 0x07, 0x4f, 0xc2, 0x4d,
+  0xe0, 0xca, 0xb7, 0x12, 0x15, 0xf1, 0xa8, 0x61, 0xa0, 0x8c, 0x5c, 0xba,
+  0x50, 0xcb, 0x40, 0x7a, 0x42, 0x3c, 0x40, 0xe2, 0xe6, 0x5c, 0x14, 0x73,
+  0x4a, 0x73, 0x1f, 0x37, 0xf0, 0xb6, 0xf0, 0x59, 0x1a, 0x24, 0x1f, 0x8a,
+  0x09, 0x17, 0x57, 0x27, 0x63, 0x39, 0xaf, 0xc6, 0x8b, 0x19, 0xb9, 0x2a,
+  0xc6, 0xe4, 0x20, 0xc3, 0xc5, 0xc3, 0xea, 0x41, 0x2b, 0x3c, 0xef, 0x77,
+  0x98, 0x9d, 0x23, 0xec, 0x30, 0x97, 0xef, 0x02, 0x8a, 0x42, 0x00, 0x2c,
+  0x71, 0x88, 0x43, 0x2b, 0xb0, 0xe4, 0x27, 0x22, 0x80, 0x28, 0x32, 0x78,
+  0xf4, 0xee, 0xe8, 0xe2, 0xe2, 0xe8, 0x82, 0xe6, 0xfb, 0xa0, 0x53, 0x8d,
+  0x4b, 0x69, 0x90, 0x5d, 0xa8, 0x51, 0x61, 0xbf, 0xbe, 0xa7, 0x46, 0xb3,
+  0x92, 0x48, 0x14, 0x4a, 0x31, 0x2a, 0x58, 0x10, 0x4c, 0xf7, 0xc3, 0xe5,
+  0x0e, 0x7c, 0xf7, 0x22, 0x60, 0xdf, 0x36, 0x6c, 0x00, 0x18, 0x14, 0x1c,
+  0x90, 0x2d, 0xdd, 0xc2, 0xb5, 0x50, 0x09, 0x01, 0xfe, 0x42, 0xb3, 0xeb,
+  0x6f, 0xb2, 0x96, 0x9a, 0x3a, 0x10, 0xa4, 0x6e, 0x26, 0xc1, 0xf4, 0xa9,
+  0xf5, 0x4f, 0x60, 0xc8, 0x57, 0x74, 0x46, 0xc9, 0x76, 0xc2, 0x64, 0xd4,
+  0xcd, 0x62, 0x9e, 0x4f, 0xac, 0xb7, 0xd7, 0xfc, 0xdc, 0xa8, 0x7f, 0x09,
+  0x9f, 0xf2, 0x5a, 0xb1, 0x2e, 0x88, 0x6a, 0xaa, 0x33, 0xc2, 0xf7, 0xb6,
+  0x75, 0x6a, 0x55, 0x27, 0x48, 0x7c, 0x63, 0xd0, 0x98, 0x12, 0x9b, 0xb7,
+  0xd3, 0xc4, 0x65, 0xef, 0x67, 0xf0, 0x32, 0x92, 0xb4, 0x50, 0xf8, 0x8d,
+  0x2f, 0x19, 0xc8, 0x97, 0x35, 0x73, 0x78, 0x77, 0x57, 0xdb, 0xf6, 0x02,
+  0xd9, 0xa1, 0xd5, 0x7e, 0xf2, 0x43, 0x9d, 0x8f, 0x7f, 0x72, 0x97, 0x07,
+  0xd2, 0x7f, 0xda, 0x7c, 0x54, 0x98, 0x3a, 0x99, 0x28, 0x31, 0x86, 0x39,
+  0x2b, 0xfb, 0xc3, 0xf0, 0xe8, 0x22, 0x39, 0xf8, 0x8a, 0x18, 0xbd, 0xff,
+  0xc9, 0x05, 0xa6, 0xe7, 0xe4, 0x76, 0x58, 0x13, 0x7e, 0x45, 0xa1, 0x28,
+  0xc9, 0x26, 0x7e, 0x25, 0xda, 0x41, 0x6b, 0x65, 0x73, 0xad, 0x5f, 0xe0,
+  0xae, 0xfb, 0xf6, 0x1a, 0x92, 0xbb, 0xf0, 0x91, 0x55, 0x7c, 0xca, 0x1a,
+  0xd2, 0x21, 0xf3, 0x57, 0x91, 0xc9, 0x8d, 0x38, 0x24, 0xa1, 0x6b, 0x23,
+  0xbd, 0xaf, 0x03, 0xb3, 0x93, 0x57, 0xe9, 0x20, 0xd9, 0x78, 0x5f, 0xfe,
+  0xdd, 0x28, 0x03, 0xe9, 0xf6, 0xb3, 0xc1, 0x4e, 0xb2, 0xf9, 0x5d, 0x5e,
+  0xbc, 0x7a, 0xf1, 0xa7, 0xe4, 0x78, 0x6b, 0xa3, 0x05, 0xe6, 0xe7, 0x92,
+  0x22, 0xa3, 0xb4, 0xb8, 0xb5, 0x4b, 0x76, 0x86, 0x93, 0xcd, 0xa0, 0x3a,
+  0x71, 0x3e, 0xd4, 0x4c, 0xe7, 0xbf, 0xb4, 0x45, 0xe4, 0x70, 0x4a, 0x5e,
+  0x40, 0xf2, 0xad, 0x2d, 0xef, 0x4e, 0x56, 0xbe, 0x79, 0x6a, 0x42, 0x53,
+  0xf7, 0xea, 0x45, 0xd0, 0xc4, 0x73, 0xdb, 0xc6, 0x07, 0x6e, 0xe3, 0x67,
+  0x36, 0xb1, 0x37, 0xd8, 0xd9, 0x4b, 0x36, 0xcf, 0x86, 0xdb, 0x7b, 0xb6,
+  0x85, 0xb0, 0x89, 0x3d, 0x34, 0x41, 0x0f, 0xb5, 0x5f, 0x7e, 0x4e, 0xdf,
+  0xff, 0x21, 0x2b, 0x7e, 0x4a, 0x36, 0xbf, 0xdf, 0xdd, 0x35, 0x0d, 0xfc,
+  0x29, 0x39, 0x38, 0xfe, 0x3e, 0x79, 0x3e, 0x30, 0x8d, 0x9d, 0xa6, 0x77,
+  0xd2, 0x9c, 0xb0, 0x12, 0x0f, 0xd1, 0x88, 0xf9, 0x7d, 0xd0, 0xc6, 0x8b,
+  0x4e, 0x1b, 0x27, 0xc6, 0x2e, 0xfc, 0x64, 0xae, 0x95, 0x9d, 0xc1, 0xb3,
+  0xbd, 0x24, 0x7f, 0xf1, 0xf9, 0x4b, 0x6d, 0x48, 0xda, 0xc0, 0xef, 0xdb,
+  0xde, 0x4a, 0x66, 0x3e, 0x31, 0xaa, 0xce, 0xd1, 0x27, 0x23, 0xd0, 0x20,
+  0x22, 0x2a, 0xf2, 0x14, 0xde, 0xa4, 0xd5, 0x44, 0xb6, 0x1b, 0x15, 0x1b,
+  0x31, 0x2b, 0x25, 0x94, 0xf0, 0x19, 0xdc, 0x96, 0xe6, 0xe2, 0xdc, 0x0f,
+  0xba, 0x43, 0xb6, 0xa9, 0x3e, 0xfa, 0xa7, 0xe4, 0xfd, 0xf0, 0xf8, 0xc8,
+  0x8c, 0x68, 0xc7, 0x74, 0xcd, 0xcd, 0x21, 0x77, 0x08, 0xbf, 0xc2, 0xe4,
+  0xbe, 0x02, 0xdb, 0xac, 0xb4, 0xa1, 0x3a, 0x37, 0x03, 0x59, 0xcd, 0xa6,
+  0x33, 0x17, 0x77, 0x8d, 0xef, 0x12, 0x24, 0xa5, 0x7f, 0x70, 0x4d, 0x26,
+  0x04, 0x5f, 0xb5, 0xf8, 0xf4, 0x37, 0x65, 0x61, 0x8e, 0x49, 0x55, 0x56,
+  0x84, 0x9c, 0xda, 0x68, 0x69, 0x0b, 0xdf, 0xbc, 0x3d, 0xe2, 0xec, 0xf8,
+  0xf7, 0x69, 0x61, 0x64, 0x24, 0x91, 0x5c, 0xd5, 0xb7, 0x14, 0xff, 0xe7,
+  0x70, 0x0e, 0xbf, 0x7f, 0xf2, 0x50, 0x7c, 0x32, 0xeb, 0xf8, 0xd9, 0x60,
+  0x97, 0x20, 0xdb, 0x64, 0xf5, 0xbe, 0x7b, 0x6f, 0xfe, 0xbd, 0xfb, 0x7c,
+  0x23, 0xa1, 0x5f, 0xb5, 0x2d, 0x78, 0x3d, 0xaf, 0x6b, 0x87, 0x67, 0x67,
+  0xdf, 0x1c, 0x33, 0x00, 0xe4, 0x50, 0xdc, 0xaa, 0xa4, 0x5c, 0x59, 0xab,
+  0x98, 0xa5, 0xab, 0xb1, 0xde, 0x5c, 0xb6, 0x12, 0x82, 0x71, 0xb7, 0x59,
+  0x36, 0x27, 0x34, 0x42, 0xd3, 0x91, 0x08, 0x8d, 0xc8, 0x68, 0x8b, 0x6d,
+  0x22, 0xf5, 0xa7, 0xc3, 0xc5, 0xd9, 0xd4, 0xd6, 0x85, 0x3b, 0x7a, 0xb0,
+  0x0c, 0x1c, 0xa9, 0xab, 0x3c, 0x8b, 0x2e, 0xda, 0x6c, 0x05, 0x75, 0x41,
+  0x63, 0x85, 0xa9, 0xaa, 0x8d, 0xd8, 0xbe, 0x1b, 0x43, 0xa3, 0xdd, 0x73,
+  0xa7, 0xf7, 0xc5, 0x6b, 0xbb, 0xe1, 0x71, 0xc4, 0x43, 0xa3, 0x45, 0xba,
+  0x0e, 0x43, 0xd4, 0xc8, 0x40, 0x10, 0xe0, 0xbc, 0xc8, 0x66, 0x14, 0x06,
+  0xcf, 0x00, 0xcf, 0x3b, 0x3d, 0x78, 0x7f, 0xf4, 0xe6, 0xdb, 0x83, 0x93,
+  0x0f, 0x47, 0xe6, 0x95, 0xdc, 0x7c, 0x6c, 0xd3, 0x41, 0xf8, 0xd0, 0xc7,
+  0x59, 0x3e, 0x2e, 0xa7, 0x14, 0x65, 0xda, 0xf8, 0xd3, 0xc6, 0x1a, 0xc3,
+  0xcb, 0x93, 0x75, 0x7a, 0x6b, 0x97, 0x5f, 0x33, 0xfb, 0x82, 0xfe, 0xb5,
+  0xc7, 0xff, 0xda, 0xfb, 0xd3, 0xfa, 0x56, 0x6b, 0xd0, 0x81, 0x95, 0x7c,
+  0x85, 0xe2, 0x93, 0xa8, 0x19, 0x88, 0x32, 0xcb, 0xc8, 0xdd, 0xe0, 0x59,
+  0x59, 0xd7, 0x18, 0x8d, 0xde, 0x6d, 0xf4, 0xec, 0xe6, 0xe8, 0xc1, 0xb7,
+  0xc1, 0xd7, 0xe9, 0xa5, 0x37, 0x50, 0x30, 0xd6, 0xb7, 0x7a, 0x56, 0xe5,
+  0x40, 0xa8, 0x9c, 0xda, 0xd0, 0x26, 0x98, 0x15, 0x32, 0xd9, 0x5c, 0xe7,
+  0xbf, 0xbc, 0x79, 0x7b, 0x70, 0x79, 0x44, 0x2f, 0xe8, 0xe7, 0x05, 0x8d,
+  0x68, 0xd3, 0x28, 0xa8, 0x3f, 0x9b, 0x12, 0x9a, 0x7e, 0x43, 0x03, 0x5a,
+  0xdf, 0xe2, 0x58, 0x06, 0x82, 0xea, 0x9d, 0x7e, 0x95, 0x85, 0x02, 0xb7,
+  0x5d, 0xc6, 0x79, 0xad, 0x88, 0x95, 0xcd, 0x75, 0xfe, 0xdd, 0xba, 0xf5,
+  0xe0, 0x4a, 0xb5, 0x13, 0x09, 0x57, 0x4e, 0x90, 0x64, 0x11, 0x64, 0xd6,
+  0x32, 0x24, 0xcd, 0xad, 0x8f, 0x04, 0x2b, 0xd8, 0xe3, 0xe4, 0xb1, 0xe6,
+  0xdb, 0x85, 0x97, 0x94, 0x76, 0xf2, 0x31, 0x95, 0xe5, 0xee, 0xde, 0xb3,
+  0x3f, 0x61, 0x3e, 0xdf, 0xac, 0x6f, 0x9b, 0xbb, 0x61, 0xfd, 0x4f, 0xf4,
+  0xe9, 0xbc, 0xf1, 0x6a, 0xbf, 0xc9, 0x67, 0xc8, 0x9e, 0x92, 0x1d, 0xc5,
+  0x70, 0x19, 0x5a, 0x75, 0x8f, 0xa9, 0x07, 0x13, 0x7a, 0xcf, 0x59, 0x62,
+  0xca, 0x6b, 0xa3, 0xe0, 0x01, 0xac, 0x17, 0x8a, 0x56, 0xa1, 0x1c, 0x07,
+  0x3b, 0x75, 0xf1, 0x39, 0xff, 0xfe, 0xe8, 0xf1, 0xbb, 0x3c, 0x46, 0xe1,
+  0x02, 0xa2, 0x6f, 0xce, 0x1e, 0x34, 0x91, 0x0c, 0xdf, 0x82, 0x4e, 0xce,
+  0x6b, 0x16, 0x68, 0xc6, 0x23, 0xf1, 0xed, 0xa8, 0x31, 0x02, 0x9d, 0xc0,
+  0x88, 0x96, 0x07, 0x28, 0x4a, 0x40, 0x1b, 0xf8, 0x20, 0x0b, 0xbd, 0xb3,
+  0xd3, 0x51, 0x6e, 0x34, 0x61, 0x9b, 0x1a, 0xe3, 0x59, 0xe5, 0x76, 0xea,
+  0xf5, 0xf8, 0xe5, 0x1e, 0xc9, 0xd2, 0x9a, 0xe5, 0x26, 0xad, 0xad, 0x0f,
+  0x09, 0xd1, 0x46, 0x79, 0xb6, 0xbd, 0x4e, 0x9d, 0x7c, 0x34, 0x0c, 0x83,
+  0x4d, 0x7a, 0xb6, 0x8f, 0x8d, 0xa8, 0x29, 0xb2, 0x6a, 0x25, 0xc0, 0x22,
+  0x12, 0x8c, 0xc2, 0x10, 0x7d, 0x0e, 0x7a, 0xf3, 0xce, 0x60, 0x30, 0xb0,
+  0xe6, 0x0e, 0x02, 0x69, 0x12, 0x83, 0x22, 0xfa, 0x3a, 0x9f, 0x17, 0x18,
+  0x73, 0xbc, 0x09, 0x65, 0x1e, 0x0a, 0xf5, 0x96, 0x00, 0x6f, 0xc4, 0x4f,
+  0x60, 0x8f, 0x86, 0xe7, 0xe3, 0xd8, 0x90, 0xcf, 0x6e, 0x28, 0xff, 0xc2,
+  0x6d, 0x6c, 0x11, 0x56, 0xf4, 0x8d, 0x7d, 0x8f, 0x52, 0x04, 0xc7, 0xca,
+  0x29, 0x5b, 0x58, 0x1e, 0xf6, 0x3c, 0x01, 0xc8, 0xb9, 0x58, 0xdb, 0x83,
+  0x2d, 0x7e, 0xa3, 0x5d, 0xe9, 0x31, 0xf6, 0x80, 0x84, 0x5c, 0x79, 0x0f,
+  0x3e, 0x03, 0xb0, 0x26, 0x10, 0xf6, 0xa4, 0x60, 0xf7, 0x80, 0xde, 0x20,
+  0x73, 0xab, 0x36, 0x4b, 0x3b, 0xc2, 0x11, 0x4d, 0x36, 0x33, 0x74, 0x7f,
+  0xc9, 0x72, 0x14, 0x66, 0x99, 0x5a, 0x93, 0x78, 0x8c, 0xda, 0x56, 0x82,
+  0x8e, 0x54, 0x07, 0xef, 0xdc, 0x55, 0x84, 0x36, 0xeb, 0x33, 0x37, 0x8b,
+  0x26, 0x22, 0xaa, 0xf4, 0x10, 0x7e, 0x8e, 0x55, 0xf1, 0xf2, 0xb1, 0xb6,
+  0x68, 0x83, 0xe5, 0x9d, 0xb9, 0x71, 0xb7, 0x72, 0x5b, 0x74, 0x99, 0x19,
+  0x65, 0xef, 0xb2, 0xad, 0xd7, 0x20, 0x72, 0x2f, 0x49, 0xef, 0xcd, 0xd5,
+  0x53, 0x64, 0x84, 0xcf, 0x04, 0xd2, 0x01, 0x5e, 0x99, 0x13, 0xcf, 0xcf,
+  0x68, 0x47, 0xa8, 0x35, 0x92, 0x52, 0x57, 0x24, 0x29, 0xd9, 0x64, 0x43,
+  0x83, 0xe9, 0x91, 0xd5, 0xa1, 0x47, 0x0a, 0x78, 0x39, 0x23, 0x96, 0x52,
+  0xd1, 0xd4, 0xd5, 0x3c, 0xa7, 0x9e, 0x1b, 0x11, 0x3d, 0x94, 0x7d, 0x93,
+  0x03, 0x97, 0x48, 0x7e, 0x0e, 0xc6, 0x55, 0xe8, 0x6c, 0xa5, 0xc5, 0xc4,
+  0xfb, 0x88, 0x8d, 0x4f, 0x8b, 0xfb, 0x89, 0xe0, 0xbd, 0x45, 0x1f, 0x9c,
+  0x15, 0x1a, 0x12, 0x16, 0xf3, 0xea, 0xfa, 0x9a, 0xad, 0xb6, 0xa4, 0x3b,
+  0xb4, 0xf8, 0x26, 0x3b, 0xa1, 0x59, 0x21, 0x14, 0xf4, 0xc3, 0xb2, 0xd9,
+  0xbc, 0xb4, 0x95, 0xf4, 0xc4, 0xeb, 0xd2, 0xda, 0xcc, 0x1a, 0x93, 0xe4,
+  0x75, 0x6b, 0x6c, 0xd2, 0x15, 0x12, 0x34, 0xda, 0x31, 0xe4, 0xb3, 0x8b,
+  0x35, 0x14, 0x40, 0x29, 0x1c, 0x21, 0x83, 0x2e, 0x3a, 0x88, 0xf6, 0x1c,
+  0x02, 0xc5, 0x21, 0x51, 0xef, 0x2d, 0xd4, 0x0a, 0xdb, 0x35, 0x19, 0xa5,
+  0xce, 0xe4, 0x5a, 0x4b, 0x5a, 0xde, 0x5e, 0xaa, 0xca, 0x74, 0x5c, 0x88,
+  0x1c, 0x2a, 0xef, 0x32, 0xc7, 0xf3, 0xe8, 0x1c, 0x8e, 0x8e, 0xfc, 0x57,
+  0x4e, 0xbf, 0x15, 0x26, 0x9d, 0x00, 0xaf, 0x95, 0x57, 0x18, 0x64, 0x67,
+  0x56, 0x06, 0x89, 0xd7, 0x24, 0xbb, 0x4a, 0xca, 0x16, 0x87, 0x32, 0xfa,
+  0x26, 0x71, 0x6b, 0x6d, 0x91, 0xf7, 0x08, 0xb3, 0xb5, 0x78, 0xa6, 0x09,
+  0x17, 0x0f, 0xd2, 0x0a, 0x08, 0x16, 0xa3, 0xe7, 0xe2, 0xbf, 0x3a, 0xca,
+  0x75, 0xbb, 0x48, 0xeb, 0x5a, 0x6b, 0x02, 0x9b, 0x00, 0x7b, 0x80, 0x14,
+  0x3a, 0x1b, 0xc2, 0xbf, 0x94, 0x75, 0xc2, 0x4e, 0x86, 0x07, 0xad, 0x23,
+  0x48, 0x83, 0x33, 0x67, 0x21, 0x1a, 0xc8, 0x43, 0x31, 0x92, 0x17, 0xb8,
+  0x82, 0xfe, 0x68, 0x8d, 0xf3, 0x8d, 0xfa, 0x63, 0x95, 0xe8, 0xab, 0x09,
+  0x0b, 0x46, 0xad, 0x83, 0xf9, 0xd8, 0x39, 0x3d, 0xbf, 0x38, 0xfb, 0xea,
+  0xe2, 0x68, 0x38, 0x4c, 0xde, 0x1f, 0x5d, 0xb2, 0xad, 0x7f, 0xc9, 0xd0,
+  0xbb, 0x6b, 0xd4, 0x8e, 0x46, 0xac, 0x41, 0xc9, 0x98, 0x14, 0x72, 0xa2,
+  0x8e, 0x04, 0xe4, 0x3c, 0x51, 0x49, 0x64, 0xdc, 0x8e, 0x6c, 0xc4, 0x4f,
+  0x05, 0xb1, 0x77, 0x03, 0x6f, 0x3f, 0x30, 0x4d, 0x08, 0x48, 0x5a, 0xe7,
+  0xb9, 0x73, 0xa3, 0x42, 0x31, 0x66, 0x94, 0x93, 0xcd, 0x39, 0x74, 0x2e,
+  0x74, 0xba, 0xb2, 0xcd, 0x9f, 0x18, 0xde, 0x1f, 0xcc, 0x6c, 0x4a, 0x19,
+  0xb8, 0x3f, 0x18, 0xe3, 0x57, 0x36, 0xc5, 0x1f, 0x92, 0xef, 0x4d, 0x9b,
+  0x13, 0x63, 0xbc, 0x4a, 0xc9, 0xdb, 0x21, 0x4a, 0xdd, 0x3a, 0xae, 0xe5,
+  0xdc, 0x2b, 0xe6, 0x9c, 0x70, 0x8a, 0x61, 0xf5, 0x48, 0x9d, 0x49, 0x70,
+  0xc5, 0x70, 0x39, 0x5d, 0xc1, 0xd4, 0xd9, 0x2f, 0x4b, 0xad, 0xb1, 0x24,
+  0x39, 0xc9, 0xae, 0x50, 0x87, 0x05, 0x9f, 0x33, 0xcd, 0xed, 0x10, 0x29,
+  0xf5, 0xee, 0x7b, 0xfa, 0xd1, 0x4e, 0xf2, 0xec, 0xf3, 0x97, 0x3b, 0x9f,
+  0xf3, 0x5f, 0xf5, 0xbf, 0xaf, 0x9e, 0xef, 0x08, 0x3b, 0xbe, 0xf9, 0xd7,
+  0xf3, 0xfd, 0xe7, 0xbb, 0xfb, 0xc4, 0xd3, 0xb8, 0xb3, 0xbf, 0x63, 0xfe,
+  0xef, 0xb9, 0xfc, 0x84, 0xc8, 0x28, 0x5f, 0xed, 0x7d, 0xfe, 0x19, 0xd0,
+  0x30, 0xb4, 0x3f, 0xa6, 0xe6, 0x23, 0xfd, 0xa6, 0xec, 0x83, 0x2e, 0x0a,
+  0x9a, 0xcf, 0x1f, 0xda, 0x9e, 0x48, 0x0a, 0xaf, 0x53, 0x19, 0x6c, 0x1a,
+  0xb8, 0xad, 0x01, 0xaa, 0x5e, 0x55, 0xa6, 0xb0, 0xf1, 0x2b, 0x17, 0xda,
+  0x61, 0xc8, 0xdb, 0x5c, 0x49, 0x0f, 0xfc, 0x6b, 0xad, 0x77, 0x18, 0x68,
+  0xee, 0x51, 0xbd, 0xfd, 0xdc, 0x4f, 0x6b, 0x22, 0xf9, 0x1a, 0x08, 0xdc,
+  0x64, 0xa9, 0xe4, 0xbd, 0xb1, 0x96, 0x6b, 0xf3, 0x0b, 0x4b, 0x77, 0xaa,
+  0x31, 0xff, 0xdc, 0xef, 0xb1, 0xe7, 0x8a, 0xde, 0x92, 0xdd, 0x90, 0x84,
+  0x5f, 0xb3, 0xb9, 0x08, 0x91, 0x6f, 0xb5, 0x36, 0xcf, 0x9a, 0x5b, 0x7e,
+  0x37, 0x53, 0x5e, 0xad, 0x67, 0x9b, 0xc3, 0xc5, 0x55, 0x95, 0x23, 0x43,
+  0x0e, 0x9a, 0xfb, 0x30, 0xf7, 0xdb, 0x7b, 0x4a, 0x73, 0x6e, 0x44, 0xd8,
+  0xc1, 0x76, 0xe5, 0xfa, 0xde, 0xe2, 0xe4, 0x0c, 0x6c, 0xb3, 0x95, 0x33,
+  0x95, 0x20, 0xd4, 0xd6, 0x34, 0xc6, 0xab, 0x76, 0xcb, 0xf6, 0xf9, 0x0d,
+  0xd1, 0x39, 0x6d, 0x5e, 0x1c, 0xea, 0x95, 0xe2, 0x8a, 0xe7, 0xe7, 0x75,
+  0x67, 0x07, 0x9f, 0xa2, 0xdd, 0xe8, 0x7d, 0x4f, 0xbe, 0x81, 0xf3, 0x64,
+  0x0f, 0xdd, 0xca, 0xa1, 0x39, 0x6c, 0xbd, 0x16, 0x6d, 0x64, 0x1c, 0x17,
+  0x94, 0xef, 0xd8, 0x91, 0x74, 0xcf, 0x01, 0xbe, 0x6e, 0x9b, 0xf3, 0x6f,
+  0x9f, 0x29, 0x78, 0xc0, 0xb9, 0xdc, 0x09, 0xb1, 0x8e, 0x52, 0x2d, 0x87,
+  0x2d, 0x15, 0x61, 0xfd, 0xdf, 0x5b, 0xd8, 0x16, 0x2e, 0x33, 0x86, 0xb5,
+  0x51, 0x53, 0x34, 0x9f, 0x53, 0x3f, 0x97, 0xd6, 0x4a, 0xbb, 0x51, 0x5a,
+  0xb5, 0x6a, 0x26, 0xac, 0x71, 0x8d, 0x10, 0x73, 0xbd, 0x9a, 0xeb, 0x02,
+  0xe9, 0x8e, 0xac, 0x47, 0xfc, 0x6e, 0x6d, 0x6d, 0x78, 0x7e, 0x74, 0xf4,
+  0x36, 0x39, 0x39, 0x7e, 0x7f, 0x7c, 0xe9, 0x69, 0xe1, 0xf6, 0xf6, 0x50,
+  0x4f, 0xab, 0x56, 0x8f, 0xeb, 0x4c, 0x87, 0xa3, 0x5e, 0xe6, 0xef, 0xe9,
+  0xfd, 0x3d, 0xcb, 0x24, 0x8b, 0x62, 0xda, 0x7d, 0x0f, 0xf6, 0x36, 0x98,
+  0x9d, 0xa8, 0x06, 0xb7, 0xa7, 0xc5, 0xd5, 0x46, 0xa3, 0x31, 0xbd, 0xeb,
+  0x33, 0xbb, 0x40, 0xff, 0x2f, 0x82, 0xd3, 0x68, 0xab, 0x4b, 0xc2, 0x22,
+  0x6b, 0x53, 0x7a, 0x04, 0xdb, 0xda, 0xe9, 0x15, 0xcd, 0x6d, 0xc6, 0xd0,
+  0x6a, 0xcf, 0x2d, 0x07, 0xd8, 0xde, 0x7d, 0x06, 0xb6, 0x83, 0x59, 0xce,
+  0xb9, 0x96, 0x3e, 0xa6, 0x18, 0xa5, 0x4c, 0xe4, 0xc6, 0x83, 0x1c, 0xf7,
+  0xbf, 0xe8, 0x9d, 0x0e, 0x0b, 0xa8, 0xd5, 0x6f, 0xd5, 0x5c, 0x8f, 0xcf,
+  0x4c, 0x40, 0x91, 0x3c, 0xdb, 0xb1, 0xe9, 0x0a, 0x73, 0xc8, 0x1c, 0xd1,
+  0xef, 0xe9, 0x63, 0xbb, 0x89, 0x51, 0x42, 0x16, 0xa4, 0xca, 0x57, 0x8b,
+  0x22, 0xb8, 0xee, 0xfe, 0xc2, 0xef, 0x9a, 0xf1, 0xbf, 0xdc, 0xc1, 0xf5,
+  0x76, 0x95, 0x56, 0x7d, 0xa3, 0x6e, 0x3d, 0xf4, 0xd5, 0xa5, 0xca, 0x3b,
+  0x42, 0xf0, 0xc6, 0xec, 0xef, 0xc9, 0x5c, 0x9d, 0xcb, 0x8e, 0x8a, 0xe8,
+  0x72, 0x4e, 0x4a, 0xc4, 0x25, 0xa7, 0x72, 0x00, 0x68, 0xe8, 0x94, 0xe9,
+  0xab, 0x1e, 0x4e, 0xa7, 0xe0, 0x38, 0x86, 0x61, 0x5d, 0x45, 0x27, 0xa3,
+  0x28, 0x03, 0x01, 0x62, 0x95, 0x5a, 0xcd, 0x69, 0x98, 0x32, 0x96, 0x50,
+  0x9f, 0x9e, 0x25, 0xbb, 0x9f, 0xd3, 0x38, 0x9e, 0x36, 0x9e, 0x77, 0x65,
+  0x35, 0xb6, 0x39, 0xc5, 0xb0, 0x11, 0xbc, 0x04, 0x53, 0x4e, 0x8b, 0x40,
+  0xcd, 0x35, 0x9e, 0x5d, 0x05, 0xc5, 0x02, 0xb4, 0x47, 0x46, 0x89, 0xc4,
+  0xd3, 0xe1, 0x8e, 0x42, 0x80, 0x9b, 0xd5, 0x22, 0xba, 0x6b, 0x64, 0x5e,
+  0xbc, 0x0a, 0xa5, 0x95, 0x4d, 0x40, 0xe5, 0x69, 0x20, 0x97, 0x88, 0xd9,
+  0x6b, 0xf7, 0xf9, 0x04, 0xaa, 0xb4, 0xe3, 0x9a, 0x33, 0xeb, 0xc5, 0x9b,
+  0x8f, 0xb1, 0xd2, 0x88, 0x59, 0x22, 0xd8, 0x69, 0x7b, 0x26, 0x0a, 0x0c,
+  0x4d, 0x6b, 0x09, 0x8f, 0xc2, 0x26, 0xf4, 0x07, 0xca, 0x6f, 0x76, 0x71,
+  0x01, 0xb2, 0x9f, 0x48, 0x34, 0xaf, 0xbb, 0xaf, 0x50, 0xae, 0x40, 0xd3,
+  0x4c, 0xd5, 0x99, 0xf0, 0xde, 0x6e, 0xec, 0xf6, 0x98, 0x89, 0xa9, 0xc5,
+  0x1b, 0xf6, 0xee, 0x8e, 0x51, 0x5a, 0xa7, 0xe5, 0xa8, 0x53, 0xb2, 0x3e,
+  0xb4, 0x44, 0x31, 0xac, 0x3e, 0x66, 0x67, 0x77, 0xe7, 0x9b, 0xe5, 0xb3,
+  0x0e, 0x0e, 0xfd, 0x95, 0x2f, 0xef, 0x3d, 0x5f, 0xb1, 0x68, 0x67, 0x15,
+  0x8c, 0xf1, 0x4c, 0x31, 0x90, 0x50, 0x04, 0x5d, 0xe4, 0x25, 0x58, 0x36,
+  0xb3, 0xf1, 0xb3, 0xeb, 0x14, 0x95, 0x7f, 0x57, 0xf4, 0x5e, 0x73, 0x42,
+  0x3a, 0x5d, 0x79, 0x2f, 0xa8, 0x6c, 0xfe, 0x65, 0x4d, 0x6e, 0xb1, 0x39,
+  0x98, 0xf6, 0x9c, 0xed, 0x6a, 0xd3, 0xc9, 0x99, 0x9b, 0xc1, 0x7b, 0x9b,
+  0x25, 0x67, 0xaf, 0x2d, 0x24, 0x74, 0xf7, 0x54, 0xd9, 0xf5, 0x82, 0x99,
+  0x30, 0x4a, 0xb6, 0xf5, 0x89, 0x98, 0x5a, 0xce, 0xab, 0x91, 0xcd, 0x04,
+  0x1f, 0xe2, 0xfd, 0x04, 0xc1, 0x3b, 0x4e, 0x55, 0x65, 0x95, 0xe2, 0xbd,
+  0x9d, 0x8b, 0x81, 0x9c, 0xb2, 0xe3, 0x72, 0x26, 0xd5, 0x3f, 0xf9, 0x78,
+  0x15, 0x5e, 0x62, 0x3f, 0x33, 0x2f, 0x0e, 0x90, 0xe9, 0xcb, 0x1b, 0xc5,
+  0x0a, 0x7b, 0x4a, 0x2b, 0xa3, 0x68, 0x58, 0xc3, 0x61, 0x01, 0x34, 0xd0,
+  0x93, 0x5d, 0x8b, 0x96, 0xec, 0xa7, 0x48, 0xe2, 0xd7, 0xca, 0x80, 0xc9,
+  0x4c, 0xf9, 0xe4, 0xec, 0x3f, 0x3c, 0x3b, 0x7d, 0x77, 0xfc, 0x95, 0xa5,
+  0x32, 0x62, 0x21, 0xde, 0xa2, 0xd8, 0x60, 0xf7, 0xb1, 0x1f, 0xe9, 0x96,
+  0xa2, 0xaa, 0x82, 0xbe, 0x35, 0xe2, 0xe9, 0xa3, 0xff, 0x03, 0x08, 0x90,
+  0xe2, 0x19, 0x39, 0xc8, 0x99, 0xff, 0xa3, 0xde, 0x72, 0xee, 0x86, 0x0e,
+  0x55, 0x1d, 0x67, 0x69, 0xa4, 0x55, 0xb3, 0x98, 0x5b, 0x10, 0xa1, 0x57,
+  0x94, 0x55, 0x78, 0xb4, 0x35, 0x15, 0x7d, 0x31, 0x67, 0xd1, 0x24, 0x09,
+  0xa5, 0x2d, 0x6f, 0x2e, 0xdf, 0x01, 0xe4, 0x4e, 0x10, 0x2e, 0x15, 0xb9,
+  0x00, 0x02, 0x5c, 0xce, 0x94, 0xd8, 0x37, 0x7d, 0xbc, 0xbc, 0xc6, 0x6f,
+  0x26, 0x69, 0x7d, 0xc3, 0x03, 0xc5, 0xa5, 0x91, 0x33, 0x4c, 0x1b, 0xb1,
+  0xb6, 0x74, 0x42, 0x86, 0xba, 0x03, 0xe3, 0x58, 0xf4, 0xaf, 0x8b, 0x0f,
+  0xd5, 0x89, 0x66, 0x3d, 0x58, 0x7c, 0x92, 0xa6, 0xb1, 0xa6, 0x08, 0x55,
+  0x22, 0xd6, 0x89, 0x9f, 0xbc, 0xa1, 0xb0, 0xcc, 0x3e, 0xf1, 0xc9, 0xcf,
+  0x98, 0x50, 0xce, 0x4f, 0x3f, 0x15, 0x29, 0xe9, 0x58, 0xdf, 0x8f, 0xaf,
+  0xbc, 0x8c, 0x36, 0xc6, 0x09, 0xea, 0xa6, 0x63, 0x1f, 0x31, 0x39, 0x58,
+  0x36, 0x7e, 0xbf, 0xd1, 0xaf, 0x1f, 0x66, 0xa3, 0x72, 0xaa, 0x89, 0x17,
+  0x96, 0x40, 0x42, 0x1f, 0xf2, 0x0b, 0xe6, 0x25, 0x1c, 0xa9, 0x6d, 0x3c,
+  0xb7, 0xa4, 0xc3, 0x4a, 0xb9, 0xfe, 0x73, 0x31, 0x23, 0x84, 0x87, 0x74,
+  0x14, 0xe0, 0xf6, 0x21, 0x19, 0x9f, 0x15, 0xe3, 0x69, 0x29, 0xbb, 0x9a,
+  0x12, 0xcc, 0x31, 0x53, 0xed, 0xa1, 0x53, 0xc4, 0xaf, 0x5c, 0x90, 0x87,
+  0x03, 0xf5, 0x43, 0x8c, 0xba, 0xb3, 0x2e, 0x8c, 0x1a, 0x18, 0x20, 0xbd,
+  0xcd, 0xbf, 0x10, 0x54, 0xbe, 0xc7, 0x6f, 0xc3, 0x05, 0x47, 0x4c, 0x57,
+  0x7f, 0x64, 0x87, 0x22, 0xc7, 0xfd, 0xfe, 0xa2, 0x1f, 0xd7, 0x47, 0x3b,
+  0x53, 0x6f, 0xf6, 0x53, 0x5a, 0x5d, 0x0b, 0x4b, 0x9f, 0x44, 0xd2, 0x60,
+  0x24, 0xda, 0xb2, 0x36, 0xd6, 0x31, 0x49, 0x4a, 0x89, 0x45, 0xcd, 0x40,
+  0x7d, 0x5a, 0x70, 0x4e, 0xa1, 0x64, 0x5c, 0xb1, 0x4b, 0xd2, 0x6e, 0x44,
+  0x4f, 0xe2, 0xfc, 0xde, 0x62, 0x51, 0x52, 0x77, 0x97, 0x69, 0x75, 0x0a,
+  0xe7, 0x9f, 0x95, 0xcb, 0xcc, 0x7b, 0x8d, 0x9c, 0x78, 0xb0, 0x84, 0x33,
+  0x71, 0x9c, 0xf0, 0xa7, 0xb4, 0xd2, 0xbd, 0xd6, 0x8f, 0x74, 0x4d, 0xf0,
+  0xef, 0xdf, 0x48, 0x9d, 0x32, 0x73, 0x9e, 0x85, 0x29, 0x45, 0xe8, 0x03,
+  0x3f, 0xdf, 0x11, 0xf7, 0x5b, 0x23, 0x70, 0xd5, 0x3a, 0x39, 0xb8, 0x38,
+  0x32, 0x9a, 0xed, 0x75, 0x01, 0x8e, 0x8a, 0xa2, 0xd1, 0xa4, 0xba, 0xac,
+  0x90, 0xc2, 0x68, 0x85, 0x9e, 0x0f, 0xfa, 0xe0, 0xbd, 0xf7, 0x26, 0x6d,
+  0x26, 0x01, 0x06, 0x70, 0xfe, 0xb6, 0xdb, 0x72, 0x63, 0xe5, 0x05, 0x86,
+  0xd4, 0x21, 0x9a, 0x04, 0xde, 0x52, 0x14, 0x22, 0x31, 0x9f, 0x2a, 0x95,
+  0x13, 0xf8, 0x3c, 0x10, 0xeb, 0x3e, 0x19, 0xb0, 0xce, 0x35, 0x4e, 0xb5,
+  0x4b, 0x45, 0xf8, 0x9b, 0x12, 0x73, 0xca, 0xb7, 0x5a, 0x61, 0x4f, 0xb7,
+  0x9d, 0x7a, 0x71, 0x97, 0xd1, 0xdf, 0x70, 0xcf, 0x90, 0x2e, 0xd2, 0xd5,
+  0x0b, 0x32, 0x8b, 0xb0, 0x67, 0xef, 0xf5, 0xc4, 0x53, 0x7e, 0x39, 0x05,
+  0x90, 0x30, 0xd6, 0xec, 0x98, 0x16, 0x26, 0x20, 0xf1, 0xeb, 0xb0, 0x39,
+  0x30, 0x91, 0xb3, 0x4a, 0xbb, 0x82, 0xe0, 0xc2, 0x23, 0x62, 0x4b, 0xba,
+  0x65, 0x05, 0xc0, 0x97, 0x4f, 0x51, 0xdf, 0xee, 0xef, 0xed, 0x68, 0x5d,
+  0x1f, 0xd6, 0xbc, 0xba, 0xea, 0x66, 0x49, 0x95, 0xdd, 0x8e, 0x7a, 0x31,
+  0xa0, 0x0f, 0x41, 0xa4, 0x22, 0x66, 0x4a, 0x7f, 0xc1, 0x8f, 0x81, 0x7a,
+  0x53, 0xba, 0x53, 0x48, 0x1d, 0x4b, 0xa1, 0x55, 0x4a, 0x4c, 0xd5, 0x75,
+  0x84, 0x03, 0x7b, 0x90, 0xd0, 0x23, 0x5f, 0x35, 0xee, 0x7f, 0xb3, 0xad,
+  0xf5, 0xac, 0xc9, 0x7f, 0x43, 0x09, 0xc4, 0x7a, 0xe0, 0xeb, 0xac, 0x55,
+  0x00, 0xdb, 0x66, 0x0a, 0xad, 0xf7, 0xd7, 0xcd, 0x5c, 0x6c, 0x4c, 0xa7,
+  0x4e, 0xe0, 0xeb, 0x63, 0xb4, 0xaa, 0x48, 0xaa, 0x73, 0x0a, 0x93, 0xc8,
+  0x2e, 0x2a, 0xaa, 0xf1, 0xd0, 0x4a, 0x71, 0xa0, 0x32, 0x75, 0x94, 0x01,
+  0x64, 0x89, 0xbd, 0x90, 0x26, 0x02, 0x90, 0xc0, 0x5d, 0x5e, 0x6b, 0xf0,
+  0xd1, 0xec, 0xed, 0x31, 0x63, 0x22, 0x1a, 0x26, 0x24, 0xc8, 0x9a, 0xb1,
+  0x37, 0x95, 0xd9, 0xf8, 0xa6, 0x64, 0x4c, 0xad, 0x99, 0x34, 0x2f, 0xd3,
+  0x73, 0x3d, 0xf9, 0x5f, 0xb2, 0x07, 0xbe, 0x71, 0x49, 0x7b, 0xb4, 0x11,
+  0x06, 0xcc, 0x43, 0x39, 0x70, 0x1b, 0xe2, 0xe8, 0xfb, 0xcb, 0x8b, 0x83,
+  0xe4, 0xeb, 0xa3, 0x83, 0xb7, 0x47, 0x17, 0xc3, 0xce, 0xa5, 0x2f, 0xf0,
+  0x0f, 0xd6, 0xd0, 0xc8, 0x09, 0x0c, 0xd5, 0x58, 0x89, 0x07, 0x04, 0xb7,
+  0xaf, 0x52, 0xcf, 0x6c, 0x1e, 0x3a, 0x48, 0xe6, 0x7c, 0x90, 0x41, 0xc4,
+  0xd1, 0x02, 0x10, 0x18, 0xd7, 0x10, 0x36, 0xb6, 0x8d, 0xb1, 0x91, 0x50,
+  0x04, 0x62, 0x50, 0x97, 0xb9, 0x9f, 0x31, 0xe3, 0xb8, 0xfa, 0xdc, 0x65,
+  0x32, 0x29, 0x35, 0x19, 0xb0, 0xbd, 0x72, 0x5f, 0xbb, 0x7c, 0x6f, 0x4f,
+  0x6c, 0xc9, 0x25, 0x23, 0x5e, 0xc3, 0xf5, 0xef, 0xfb, 0xe6, 0xbb, 0x7d,
+  0x33, 0xf9, 0x7d, 0x22, 0x73, 0x7c, 0xc8, 0xea, 0xf5, 0x8e, 0x0b, 0xb0,
+  0xfd, 0xf9, 0x35, 0xae, 0xc4, 0x14, 0x9c, 0xa4, 0xaf, 0xa3, 0x2d, 0xd1,
+  0xe9, 0x9a, 0x52, 0x7d, 0xa4, 0xae, 0x05, 0x81, 0x4b, 0xd5, 0x53, 0x92,
+  0xe5, 0x04, 0x05, 0xe9, 0x2d, 0x02, 0x50, 0x72, 0x66, 0xa6, 0xe0, 0xc1,
+  0xd0, 0x11, 0x19, 0x02, 0x74, 0x1d, 0x73, 0xf6, 0xf8, 0x52, 0x9f, 0x32,
+  0xd7, 0x32, 0x7b, 0xcc, 0x4c, 0xb7, 0xe4, 0x21, 0xff, 0x7e, 0x40, 0x00,
+  0x44, 0x30, 0xf8, 0x75, 0x2b, 0x3e, 0x2a, 0xce, 0x50, 0xa1, 0xe1, 0x96,
+  0xe6, 0xa8, 0x0f, 0x76, 0xcf, 0x2b, 0x74, 0x9f, 0x3e, 0xa9, 0x15, 0x42,
+  0xe4, 0x5d, 0x46, 0x81, 0x91, 0x51, 0x0f, 0xff, 0x26, 0xd7, 0x9d, 0xe5,
+  0xe2, 0x93, 0x2c, 0xd8, 0xbc, 0x5c, 0x20, 0x7f, 0x33, 0xa3, 0x34, 0x1b,
+  0xd0, 0xe3, 0xf6, 0xb9, 0x2c, 0xf9, 0xba, 0xac, 0x71, 0x17, 0x84, 0x8f,
+  0xd3, 0x25, 0x1f, 0x9b, 0x7e, 0xbc, 0x21, 0xf1, 0x2d, 0x4b, 0x12, 0xbb,
+  0xb6, 0xa6, 0x29, 0x55, 0xe7, 0x07, 0x97, 0x5f, 0x23, 0xba, 0x8a, 0x2d,
+  0xfc, 0x16, 0x8c, 0x29, 0x1a, 0x53, 0x0b, 0x53, 0xb2, 0xac, 0x01, 0xc7,
+  0xfa, 0xaf, 0x12, 0x33, 0xaa, 0x3e, 0x89, 0xe8, 0x5d, 0xce, 0x40, 0xa4,
+  0x29, 0xd7, 0xfa, 0x85, 0x8c, 0x6e, 0x55, 0x62, 0x04, 0xf4, 0xdd, 0xe6,
+  0xdb, 0x59, 0xbc, 0xe5, 0x06, 0x27, 0xc2, 0x6f, 0xf0, 0x98, 0xb0, 0xe9,
+  0x49, 0x99, 0x5b, 0x4b, 0xda, 0xcc, 0xc3, 0xf8, 0x05, 0x65, 0x3a, 0x73,
+  0x00, 0x6a, 0x52, 0xc6, 0x79, 0x0f, 0xbd, 0x23, 0xfd, 0xe7, 0xd9, 0xc3,
+  0x20, 0x24, 0xe0, 0x49, 0xbe, 0x5c, 0x34, 0x6d, 0xb1, 0xd2, 0xe1, 0x3f,
+  0xb6, 0x9a, 0x65, 0x55, 0x96, 0x8d, 0xd7, 0x07, 0x68, 0x3f, 0x69, 0x23,
+  0x27, 0x9a, 0x09, 0x2e, 0xb9, 0x2f, 0xd4, 0x54, 0x21, 0x7a, 0xb7, 0xaf,
+  0x18, 0xa6, 0xa3, 0xba, 0x9c, 0x2e, 0x1a, 0x0f, 0x7d, 0xfd, 0xf3, 0xfa,
+  0xec, 0x75, 0x7a, 0xf3, 0x78, 0xa0, 0x64, 0x9f, 0x05, 0x53, 0xd4, 0x19,
+  0x4b, 0xdf, 0xa8, 0x97, 0x08, 0x36, 0x56, 0x65, 0xd1, 0xae, 0x01, 0x07,
+  0xa0, 0xf7, 0xd6, 0xda, 0xda, 0x50, 0x17, 0x9b, 0xe8, 0x5e, 0xc3, 0x45,
+  0xff, 0x0e, 0xda, 0x24, 0xf5, 0x81, 0x83, 0x05, 0x63, 0xf3, 0x17, 0x25,
+  0x81, 0xcb, 0x78, 0x4d, 0x21, 0xc2, 0x79, 0x8d, 0xf3, 0xba, 0x3d, 0x28,
+  0xfc, 0xca, 0x86, 0x2b, 0x34, 0xbf, 0xec, 0xb2, 0x54, 0x4e, 0x7e, 0x09,
+  0xd7, 0xb9, 0x0d, 0xd1, 0xca, 0x86, 0x8f, 0x32, 0x4c, 0xd3, 0x25, 0xa0,
+  0x15, 0xa4, 0x2d, 0x1c, 0x97, 0x3a, 0xb9, 0xfd, 0xbf, 0xb7, 0x93, 0x1e,
+  0x57, 0x27, 0x88, 0x90, 0xf6, 0x2c, 0x92, 0xff, 0x0f, 0x80, 0x57, 0x42,
+  0xef, 0x4b, 0x6d, 0x0e, 0xda, 0x04, 0xb2, 0x03, 0x63, 0x42, 0xdd, 0x54,
+  0x63, 0xb7, 0xfb, 0x8d, 0x76, 0x90, 0xdd, 0x93, 0xfd, 0xa2, 0x36, 0x82,
+  0xd0, 0x85, 0x70, 0x11, 0x67, 0x4b, 0xc0, 0x04, 0xba, 0x8d, 0x2b, 0xeb,
+  0xd5, 0xa3, 0x7a, 0xaa, 0x5c, 0x75, 0x94, 0xd5, 0x7a, 0x94, 0x53, 0xd2,
+  0xb0, 0xe9, 0x5a, 0xd2, 0xb2, 0xdb, 0xa9, 0x1c, 0x21, 0xff, 0xa9, 0x49,
+  0x47, 0x02, 0xec, 0x92, 0xed, 0xef, 0x95, 0xe8, 0xf3, 0x8a, 0x1d, 0x2b,
+  0xe2, 0x94, 0xd1, 0x74, 0x1a, 0x8e, 0xd4, 0x4e, 0xaa, 0x16, 0x40, 0xd1,
+  0x4a, 0xd0, 0x5a, 0x0a, 0xf3, 0x08, 0x21, 0xc9, 0x88, 0xc3, 0x98, 0x93,
+  0xb6, 0xa9, 0x98, 0xa4, 0x5a, 0x32, 0x7a, 0xa5, 0x6a, 0x1a, 0x87, 0x5d,
+  0x29, 0xd7, 0x7d, 0xb9, 0xfb, 0x91, 0x84, 0x8f, 0xc8, 0x1c, 0x95, 0xcf,
+  0xf4, 0x55, 0x02, 0x1d, 0x92, 0xd4, 0xf3, 0x65, 0xf0, 0x86, 0x0f, 0x48,
+  0x71, 0x88, 0xcd, 0x6b, 0xca, 0xf2, 0x10, 0x97, 0x94, 0x70, 0x99, 0xc0,
+  0xff, 0x75, 0x93, 0x0b, 0xae, 0x94, 0x67, 0xbd, 0x5d, 0x43, 0x15, 0x1e,
+  0x3e, 0x82, 0x14, 0xb8, 0xa8, 0xaa, 0x05, 0x3e, 0x0c, 0xc2, 0x03, 0x33,
+  0xb0, 0xac, 0xaa, 0x72, 0x89, 0x1c, 0xfb, 0x39, 0xe5, 0x8c, 0xc2, 0xb0,
+  0x58, 0xe7, 0x27, 0x7e, 0xdd, 0xff, 0x24, 0x81, 0x58, 0x8b, 0x84, 0x13,
+  0x48, 0x84, 0x2a, 0x8e, 0x2e, 0x94, 0xbd, 0x5d, 0x18, 0xa6, 0x8c, 0xd9,
+  0x00, 0x4f, 0xa9, 0xb6, 0xa0, 0x7c, 0x69, 0xdd, 0xc9, 0xdf, 0xea, 0xc9,
+  0x2c, 0xd9, 0x8c, 0x7b, 0x09, 0x31, 0xb3, 0x5e, 0xe8, 0xc5, 0x9d, 0x5a,
+  0x45, 0xe0, 0x38, 0x8b, 0xbb, 0x6e, 0xaa, 0xc5, 0xb8, 0x09, 0xca, 0x97,
+  0xb6, 0x42, 0xf3, 0x76, 0x8e, 0x4b, 0xdf, 0xb6, 0x3f, 0x3e, 0x17, 0xf3,
+  0x9e, 0xad, 0x0f, 0xea, 0xd9, 0x66, 0xda, 0x4a, 0x72, 0xe1, 0x97, 0xd7,
+  0x92, 0xd6, 0x77, 0xb7, 0xec, 0x2e, 0xeb, 0x9f, 0xdb, 0x8c, 0xfa, 0x36,
+  0xfd, 0x11, 0xb2, 0x13, 0xbc, 0xbb, 0x57, 0x14, 0x31, 0x28, 0x1e, 0x55,
+  0x22, 0xe4, 0x8b, 0x50, 0x6b, 0xc8, 0x65, 0xb9, 0x66, 0x09, 0x12, 0x4d,
+  0x97, 0xfa, 0x02, 0x55, 0xe5, 0xe8, 0xef, 0xb6, 0x99, 0x48, 0xad, 0xf4,
+  0x63, 0x4b, 0x5c, 0xd5, 0x8e, 0x64, 0xb1, 0x83, 0x53, 0x05, 0x45, 0x93,
+  0xd5, 0x0f, 0x85, 0x2c, 0x4e, 0xe6, 0x6f, 0x90, 0xbc, 0x95, 0x43, 0x21,
+  0x5f, 0xe8, 0xaa, 0x13, 0xe1, 0xdd, 0x78, 0xce, 0x54, 0x28, 0xc1, 0x3e,
+  0x7a, 0xab, 0x3e, 0x55, 0x88, 0x1c, 0xcc, 0x0d, 0x59, 0x36, 0xba, 0x48,
+  0x66, 0x5e, 0xf5, 0x13, 0xa6, 0x0b, 0x34, 0xe2, 0x8d, 0x69, 0xb6, 0xb3,
+  0xe1, 0xd5, 0xe8, 0xda, 0x64, 0xd0, 0x7f, 0x09, 0xeb, 0xc7, 0x92, 0x15,
+  0xb2, 0xf7, 0x82, 0xc0, 0x6d, 0x5b, 0x91, 0xae, 0x98, 0x26, 0x7e, 0x6e,
+  0x67, 0x76, 0x5f, 0xed, 0x0d, 0x76, 0x5f, 0x7e, 0x3e, 0xd8, 0x19, 0xec,
+  0xee, 0x90, 0x7c, 0xa1, 0xae, 0x78, 0x9d, 0xe3, 0x79, 0x89, 0x7c, 0xaa,
+  0xf5, 0x5e, 0xf8, 0xcd, 0xd3, 0xa3, 0xcb, 0xef, 0xce, 0x2e, 0xbe, 0x49,
+  0x8e, 0x4f, 0x2f, 0x8f, 0x2e, 0xde, 0x1d, 0x1c, 0x3e, 0x95, 0xb0, 0xdf,
+  0x77, 0x5b, 0x7b, 0x35, 0xcb, 0x33, 0x37, 0x31, 0xa1, 0x6f, 0xd0, 0xcd,
+  0x59, 0xd6, 0xdc, 0xec, 0xec, 0xef, 0xae, 0xa4, 0xa4, 0x8e, 0xb8, 0x07,
+  0xdd, 0xfb, 0x3a, 0xa8, 0x5d, 0x1a, 0xd4, 0xf2, 0x56, 0x2c, 0x35, 0xe3,
+  0x90, 0xb1, 0x55, 0x16, 0x97, 0x0b, 0x31, 0x8f, 0x2a, 0x48, 0x60, 0x64,
+  0x15, 0xc1, 0x3e, 0x62, 0xf2, 0x5b, 0x4e, 0xaf, 0x15, 0x92, 0x19, 0xc1,
+  0xa0, 0x8b, 0xcc, 0x5d, 0xe3, 0xfa, 0xe0, 0x8d, 0xb8, 0x53, 0x98, 0xce,
+  0x76, 0x02, 0x15, 0x4f, 0xa5, 0xb2, 0xe4, 0xae, 0xd1, 0x6e, 0x91, 0x0a,
+  0xa5, 0x4c, 0x38, 0x38, 0xb1, 0x79, 0x22, 0x96, 0x85, 0x00, 0xd0, 0x07,
+  0xd5, 0xd3, 0xd1, 0xd7, 0x76, 0x89, 0x77, 0x1f, 0x3e, 0xdb, 0xe1, 0x5e,
+  0xad, 0x15, 0xd7, 0x8c, 0x81, 0xb5, 0x5c, 0xa3, 0x87, 0xd2, 0x11, 0x9c,
+  0x06, 0xaf, 0x37, 0xfc, 0x29, 0x28, 0x54, 0x44, 0x92, 0x06, 0x7a, 0xc8,
+  0x16, 0x43, 0x32, 0xdf, 0x51, 0xc8, 0x9d, 0x60, 0xfd, 0x4f, 0xcb, 0x5a,
+  0x50, 0xeb, 0x75, 0x8b, 0xa4, 0x30, 0xe1, 0xca, 0x54, 0xfe, 0xeb, 0xac,
+  0x6a, 0x03, 0x9d, 0x39, 0xa9, 0xd2, 0x7b, 0x94, 0x57, 0xc9, 0x1d, 0xe5,
+  0xe8, 0x5a, 0xd2, 0x2a, 0xaf, 0x45, 0x8a, 0x93, 0x9b, 0xf3, 0xe4, 0xfc,
+  0xe8, 0x7d, 0x5f, 0x0b, 0x1c, 0x9b, 0xbf, 0xb3, 0x33, 0x4a, 0xf9, 0x25,
+  0x39, 0xb7, 0x67, 0x9e, 0x15, 0x8a, 0xa5, 0x81, 0x4c, 0x14, 0xf0, 0x8f,
+  0x3f, 0x00, 0x3a, 0x34, 0x96, 0x81, 0x52, 0x20, 0xa3, 0x8a, 0xb9, 0xe4,
+  0xdc, 0xc2, 0x2e, 0x2d, 0x27, 0xad, 0xa7, 0x00, 0x96, 0x93, 0x4d, 0x0b,
+  0xd2, 0xa5, 0xef, 0x01, 0x89, 0x0a, 0xd4, 0x80, 0x85, 0x09, 0x94, 0x9a,
+  0x79, 0x7d, 0xfe, 0xcd, 0xe1, 0xf0, 0xf7, 0xbb, 0x7b, 0xd2, 0x9d, 0x2d,
+  0xb5, 0x0a, 0x48, 0x56, 0x75, 0x93, 0xf2, 0x21, 0xae, 0xfd, 0x3e, 0x6a,
+  0x8a, 0x35, 0x0e, 0x38, 0x16, 0x63, 0xd3, 0x26, 0x06, 0x6d, 0xb5, 0x32,
+  0x83, 0x80, 0xfc, 0x7a, 0xb0, 0x2a, 0xa6, 0x2d, 0xda, 0x4b, 0x21, 0x11,
+  0x94, 0x77, 0x92, 0x02, 0x4b, 0x8d, 0x85, 0xfa, 0xa5, 0x85, 0xfe, 0x88,
+  0x5b, 0x96, 0xd6, 0x90, 0x43, 0xee, 0xe0, 0x2c, 0xdd, 0x35, 0xa7, 0xf9,
+  0x76, 0xbf, 0x25, 0x9e, 0x58, 0xb9, 0xd9, 0x95, 0x10, 0xc8, 0x7d, 0x06,
+  0x07, 0x40, 0xd0, 0xeb, 0x13, 0x2d, 0xe1, 0x56, 0xb8, 0x3a, 0x28, 0xf4,
+  0xf4, 0x99, 0x59, 0x28, 0x73, 0xb2, 0x98, 0xb7, 0x81, 0x84, 0x42, 0x39,
+  0x25, 0xd3, 0xc5, 0x3e, 0xf2, 0xb6, 0xa2, 0xd2, 0x31, 0x73, 0xc6, 0x91,
+  0x9e, 0x0e, 0x92, 0xaf, 0xb3, 0x82, 0x12, 0xe7, 0x09, 0x71, 0xa7, 0xb9,
+  0x57, 0xc0, 0x05, 0x52, 0x0d, 0x49, 0xd4, 0xd4, 0x3b, 0xc9, 0x52, 0xe1,
+  0xe4, 0x34, 0xb2, 0xae, 0x66, 0x0b, 0x57, 0xeb, 0x49, 0xa5, 0x84, 0xce,
+  0x13, 0x02, 0x51, 0x4b, 0x76, 0xc1, 0x24, 0xd1, 0xd4, 0xc0, 0x66, 0x9b,
+  0x58, 0x13, 0x25, 0x11, 0xd0, 0x9c, 0x1c, 0x73, 0xc4, 0x9a, 0xc4, 0xab,
+  0x7c, 0x03, 0x3a, 0x6d, 0xf2, 0x16, 0xb2, 0xc5, 0xe5, 0x84, 0xca, 0xa4,
+  0xba, 0x21, 0xd7, 0x47, 0x6d, 0xae, 0x9b, 0xb4, 0x18, 0x3f, 0x0c, 0x26,
+  0x46, 0x97, 0x25, 0xe7, 0xd9, 0x60, 0x71, 0xbb, 0xed, 0x1d, 0x53, 0x12,
+  0xf9, 0x37, 0xcc, 0x11, 0xd0, 0x76, 0x7c, 0x6b, 0xa1, 0xe2, 0x90, 0x3a,
+  0x2c, 0x6d, 0x9d, 0x09, 0xda, 0x12, 0x9a, 0xed, 0xcf, 0xc7, 0x73, 0x29,
+  0xc9, 0xd6, 0x51, 0x62, 0x19, 0x8e, 0xa9, 0x85, 0xc1, 0x3c, 0x9b, 0xed,
+  0xdb, 0x6c, 0x64, 0x95, 0x0f, 0x52, 0x55, 0xc3, 0x1a, 0x16, 0x9e, 0x93,
+  0xb6, 0xc8, 0xae, 0xa7, 0xa2, 0x50, 0xf8, 0xa6, 0x8b, 0x6d, 0x22, 0x92,
+  0x02, 0xc2, 0x06, 0x8f, 0x54, 0x3b, 0x82, 0xc6, 0x6e, 0xf6, 0x61, 0x23,
+  0x90, 0x5a, 0x7e, 0xb8, 0x22, 0x85, 0xde, 0x35, 0x22, 0xcc, 0x21, 0x20,
+  0x5b, 0x26, 0x65, 0x58, 0x5c, 0x3c, 0x8a, 0x44, 0x92, 0xf0, 0x13, 0x11,
+  0xc1, 0x62, 0x87, 0x80, 0xc6, 0x5d, 0x50, 0xd1, 0x08, 0x7e, 0x6a, 0x3d,
+  0x60, 0x3e, 0x2b, 0xe6, 0xd7, 0x77, 0xcf, 0xc8, 0xe3, 0x7d, 0x79, 0x32,
+  0xd4, 0xa8, 0x48, 0x91, 0xdd, 0x7b, 0x5b, 0x8b, 0x4b, 0x0f, 0xc8, 0xfe,
+  0x23, 0x07, 0x10, 0x53, 0x2a, 0x83, 0xed, 0x00, 0x3d, 0x61, 0xa9, 0xe0,
+  0xc2, 0x64, 0x2e, 0xf9, 0x41, 0x27, 0x41, 0x60, 0xc4, 0xd4, 0x15, 0x2d,
+  0x5d, 0xc6, 0xca, 0x90, 0x65, 0x7a, 0x21, 0xee, 0x3e, 0xa3, 0x2c, 0x3d,
+  0xeb, 0x25, 0xfd, 0x3d, 0xf0, 0xe7, 0xec, 0xb6, 0x27, 0x31, 0x6d, 0x98,
+  0x26, 0x90, 0xda, 0x30, 0x2d, 0x69, 0x2b, 0x22, 0x0e, 0x36, 0x65, 0x4b,
+  0xdf, 0x99, 0xf7, 0xe9, 0x8f, 0x3d, 0x19, 0xd0, 0xdd, 0x2e, 0x10, 0xdb,
+  0xcc, 0x5b, 0x39, 0x7d, 0x08, 0x55, 0x86, 0xbd, 0x95, 0xab, 0x8a, 0xdc,
+  0x88, 0xfb, 0xdc, 0x12, 0x48, 0x73, 0xd1, 0x04, 0xb8, 0x42, 0x85, 0x12,
+  0x54, 0x3b, 0x60, 0xa6, 0x50, 0x9c, 0xdc, 0x45, 0x72, 0xb7, 0xa7, 0xb1,
+  0x66, 0xfa, 0x8d, 0xce, 0x1b, 0x3b, 0xeb, 0x9d, 0x10, 0x09, 0xd2, 0x16,
+  0x09, 0xe5, 0xe6, 0xed, 0x5a, 0xca, 0x7a, 0x32, 0x7b, 0xd6, 0x48, 0x91,
+  0x96, 0x94, 0x29, 0x0b, 0x71, 0x2b, 0x70, 0xca, 0x3b, 0xf3, 0xd1, 0x93,
+  0x01, 0xef, 0xc1, 0x9c, 0x80, 0xfc, 0xf6, 0x10, 0x91, 0xc7, 0x85, 0x4d,
+  0x94, 0x10, 0x57, 0x3e, 0x28, 0xfa, 0xb0, 0xfc, 0x37, 0x39, 0x3b, 0x26,
+  0x80, 0x35, 0xc5, 0x75, 0x6e, 0x4e, 0xfe, 0x46, 0x62, 0x0e, 0xd3, 0x82,
+  0x24, 0x7e, 0x63, 0xeb, 0xa8, 0x0d, 0x99, 0xda, 0x73, 0xc3, 0x17, 0x73,
+  0xfd, 0x2f, 0x68, 0x28, 0xf5, 0x86, 0x1b, 0xbb, 0x50, 0x9c, 0xb7, 0x07,
+  0x22, 0x71, 0x0e, 0xad, 0x1c, 0x76, 0x5e, 0x69, 0x71, 0xf4, 0x8d, 0xa3,
+  0x4f, 0xa4, 0xe3, 0x6c, 0xc8, 0x97, 0xf8, 0xd7, 0x9c, 0xd3, 0x8f, 0x39,
+  0x3a, 0x3f, 0x3e, 0xe5, 0x72, 0xdf, 0xf6, 0x2c, 0x64, 0x44, 0xbd, 0xb8,
+  0xc6, 0x75, 0xe5, 0xd1, 0x9f, 0x54, 0x39, 0xe0, 0xd9, 0x71, 0x44, 0x7b,
+  0x86, 0xf6, 0x78, 0x2e, 0xdf, 0xba, 0x58, 0xf0, 0xd7, 0x37, 0xe8, 0x9e,
+  0xab, 0xeb, 0xe9, 0x46, 0xa7, 0x8c, 0xad, 0x5d, 0x93, 0xce, 0x85, 0x62,
+  0x3d, 0x52, 0xe3, 0x89, 0x53, 0xf0, 0x51, 0xa6, 0x9b, 0x5a, 0x69, 0xc9,
+  0xb9, 0x5e, 0x27, 0xd3, 0xd1, 0x77, 0x85, 0xff, 0x3e, 0x19, 0x6c, 0x9b,
+  0x0f, 0xd6, 0xdb, 0xfa, 0xe2, 0xfc, 0x76, 0x5c, 0x9b, 0x1b, 0x8e, 0xd2,
+  0x7a, 0x7f, 0x80, 0x41, 0x8e, 0xe5, 0x30, 0x3d, 0x9e, 0xfc, 0x94, 0xf4,
+  0xc7, 0x53, 0x8c, 0x2f, 0x41, 0xb1, 0xec, 0x1f, 0xcc, 0xca, 0xd3, 0x13,
+  0x3f, 0xd9, 0x35, 0x7c, 0x97, 0xd3, 0x79, 0xfb, 0xd4, 0xd3, 0xa1, 0x9f,
+  0xb1, 0xc1, 0xc0, 0xfc, 0xb6, 0xc9, 0xc1, 0xe4, 0x8e, 0x92, 0xee, 0x26,
+  0xf2, 0x4f, 0x1a, 0xcf, 0x51, 0x81, 0x52, 0xa3, 0x18, 0x69, 0x3a, 0xe2,
+  0xca, 0xe2, 0xdf, 0xe6, 0xc6, 0xe8, 0x38, 0xec, 0xe8, 0x17, 0x94, 0xff,
+  0x47, 0x1d, 0xc4, 0x5b, 0xde, 0x2f, 0x35, 0x99, 0xa3, 0x27, 0x39, 0x0b,
+  0x0e, 0x5a, 0x4a, 0xd2, 0x99, 0x96, 0x6e, 0x90, 0x7c, 0x49, 0x31, 0xce,
+  0x2a, 0xf3, 0xd8, 0x5f, 0xe5, 0xe2, 0xe3, 0x92, 0x7c, 0xb4, 0x18, 0x29,
+  0xf3, 0x4f, 0x0c, 0xec, 0x48, 0x82, 0x1c, 0x18, 0x3b, 0x26, 0xfb, 0x9b,
+  0xf6, 0xe0, 0xd0, 0x2f, 0x4d, 0x69, 0x37, 0x43, 0xd1, 0x7c, 0x89, 0x24,
+  0x18, 0x8a, 0xc7, 0x4b, 0xc9, 0x3d, 0xe4, 0x0b, 0x73, 0x92, 0x69, 0x62,
+  0x7f, 0xe9, 0xb3, 0xa9, 0xa8, 0xe7, 0x18, 0x4d, 0xa9, 0x46, 0x60, 0xb7,
+  0x04, 0xee, 0x70, 0xd7, 0xeb, 0xc3, 0x1b, 0x23, 0x9a, 0x33, 0xdb, 0xd5,
+  0x21, 0xbb, 0xf4, 0xb4, 0x8b, 0x43, 0xba, 0xa3, 0x74, 0x11, 0xec, 0x2f,
+  0x35, 0x3b, 0x12, 0x5a, 0xe8, 0x36, 0xcb, 0x2e, 0xbb, 0x77, 0x79, 0x76,
+  0xdb, 0x43, 0xa0, 0xa4, 0xc6, 0xe1, 0x87, 0xf7, 0x54, 0xda, 0x04, 0x15,
+  0xa8, 0x2f, 0x2f, 0x0e, 0x4e, 0x87, 0xef, 0xd8, 0x35, 0x7e, 0x59, 0x7a,
+  0xa5, 0xad, 0x25, 0xae, 0xa0, 0xf1, 0x63, 0x4b, 0x13, 0x77, 0xcf, 0xf5,
+  0x36, 0x14, 0x4f, 0x2f, 0x75, 0xaf, 0x7b, 0x5d, 0xbe, 0x7d, 0x2e, 0x9a,
+  0x4d, 0xb3, 0x41, 0x5d, 0xdb, 0x1c, 0x6e, 0x59, 0x45, 0xa8, 0xf6, 0x8b,
+  0xb2, 0xb9, 0xaa, 0xf3, 0xca, 0x0c, 0x2d, 0x0f, 0xd1, 0xb4, 0x1c, 0x6a,
+  0x67, 0xf4, 0xa7, 0x7c, 0xf7, 0x2e, 0x25, 0x23, 0x3d, 0x34, 0xa6, 0x62,
+  0x5f, 0x2a, 0xd5, 0x38, 0x3e, 0x36, 0xe7, 0x4e, 0xe5, 0xbb, 0x57, 0xa8,
+  0xfc, 0x6c, 0xe3, 0x7e, 0xde, 0xa7, 0x36, 0xbd, 0xf9, 0xef, 0xbb, 0x5b,
+  0xf1, 0xe6, 0x2f, 0x7f, 0x6e, 0xf3, 0xf1, 0xbe, 0xab, 0x6d, 0xe6, 0x52,
+  0x8a, 0x36, 0xff, 0x7d, 0x6f, 0x6b, 0xe5, 0x88, 0xfc, 0xac, 0x48, 0xf7,
+  0x4d, 0xf3, 0x06, 0x75, 0x36, 0x79, 0xc3, 0xc7, 0xcc, 0xea, 0x4c, 0x16,
+  0xa1, 0xe3, 0xf1, 0x0d, 0xb7, 0x08, 0x3b, 0x08, 0xb6, 0x6d, 0x35, 0x75,
+  0x17, 0x78, 0x93, 0xec, 0x92, 0xe3, 0xff, 0x79, 0xe4, 0xd3, 0x48, 0x16,
+  0x1b, 0x8d, 0x7f, 0x45, 0x11, 0x3b, 0x40, 0x5d, 0x0e, 0xf0, 0xed, 0xbd,
+  0x15, 0xdf, 0x76, 0xa3, 0xf3, 0xdc, 0x12, 0x14, 0xc5, 0x26, 0x18, 0x9c,
+  0xb2, 0x61, 0xcb, 0x77, 0xec, 0xb7, 0x57, 0x7d, 0xef, 0xf2, 0xf8, 0xfd,
+  0x11, 0xb1, 0x66, 0xbf, 0x3d, 0x26, 0xf2, 0xb9, 0xa1, 0xd0, 0x3f, 0xaa,
+  0x07, 0xc2, 0x32, 0xf2, 0xfa, 0xd5, 0x52, 0x38, 0xbc, 0x6b, 0xd1, 0x66,
+  0x56, 0x72, 0xd8, 0x95, 0xa0, 0x4f, 0x0b, 0x06, 0xba, 0xd6, 0x4c, 0xcb,
+  0xe3, 0xab, 0xfe, 0xfb, 0x72, 0x02, 0x2b, 0xb9, 0x3f, 0x04, 0x54, 0xd0,
+  0xbc, 0x65, 0x7e, 0xf8, 0xa1, 0x98, 0xb5, 0x7e, 0x3c, 0x88, 0x64, 0xea,
+  0xae, 0x2d, 0x2b, 0xca, 0xf3, 0xf7, 0xed, 0x7e, 0x9f, 0x3a, 0xd3, 0x67,
+  0x58, 0x97, 0x04, 0x77, 0x5a, 0xfc, 0x1c, 0x2a, 0x5a, 0xcc, 0x04, 0xe5,
+  0xd3, 0x07, 0x06, 0x22, 0xa4, 0x0e, 0x3e, 0xe6, 0xb2, 0x37, 0xaf, 0x29,
+  0x83, 0xcc, 0xb9, 0xf8, 0xd8, 0x89, 0xb7, 0xe6, 0x93, 0x97, 0xc2, 0x90,
+  0xca, 0xee, 0x1d, 0xfe, 0x49, 0xca, 0x2f, 0x97, 0xf3, 0x07, 0x8c, 0xf2,
+  0xbe, 0x05, 0xad, 0x88, 0xc6, 0x57, 0xff, 0xce, 0xef, 0xb4, 0xca, 0x50,
+  0x09, 0xc7, 0xb4, 0xb7, 0x03, 0xe5, 0x27, 0x52, 0xb5, 0xe9, 0xac, 0xf2,
+  0xae, 0x2b, 0xe9, 0xb6, 0x56, 0xb7, 0xf3, 0x88, 0x4d, 0x3d, 0x1e, 0xd6,
+  0x76, 0x3f, 0x7d, 0x12, 0xd8, 0x92, 0x52, 0x5f, 0xdf, 0x96, 0x36, 0x38,
+  0x66, 0xc4, 0xce, 0xbc, 0x5d, 0xe0, 0x38, 0x4b, 0x34, 0xc9, 0x9b, 0x73,
+  0xf8, 0x37, 0xfa, 0x1b, 0xa8, 0xcb, 0x90, 0x17, 0x91, 0xc1, 0xf4, 0x7f,
+  0xfe, 0x68, 0x82, 0xd0, 0x6b, 0xb2, 0x7e, 0x45, 0x44, 0x18, 0x14, 0xc7,
+  0x5a, 0xe7, 0x0e, 0x30, 0x4f, 0x0c, 0x6f, 0x2e, 0x73, 0x41, 0x90, 0x5c,
+  0x53, 0x43, 0x92, 0x8d, 0x6a, 0x8b, 0x8c, 0xb5, 0x4e, 0x72, 0xf6, 0x4a,
+  0x92, 0x20, 0x5d, 0xcc, 0x27, 0x00, 0x65, 0x30, 0x1c, 0xf5, 0x3f, 0x89,
+  0x14, 0xbb, 0x7a, 0x48, 0x76, 0xf7, 0x7a, 0xc9, 0xde, 0xce, 0xee, 0x5e,
+  0x64, 0x0c, 0xeb, 0xff, 0x49, 0xa0, 0xa8, 0x3d, 0xfc, 0x7a, 0xfd, 0xa9,
+  0xa3, 0x70, 0xf9, 0x0c, 0xb8, 0x49, 0x24, 0xf3, 0xd7, 0x08, 0x1f, 0x8a,
+  0xcf, 0x82, 0x88, 0x19, 0x55, 0x8f, 0x41, 0x67, 0x87, 0x6b, 0x8b, 0x9d,
+  0x84, 0x5a, 0x63, 0xd3, 0x96, 0x0e, 0x9b, 0xa0, 0x92, 0x0e, 0x17, 0x9e,
+  0x05, 0xf2, 0xc5, 0x7a, 0x4a, 0xd3, 0x0a, 0xa5, 0x40, 0xdb, 0x6b, 0x94,
+  0x37, 0xba, 0x2c, 0x04, 0xad, 0xa1, 0xb5, 0x31, 0xfb, 0xfd, 0xed, 0xf1,
+  0xe1, 0xa5, 0xf2, 0x1d, 0x5e, 0x91, 0xf2, 0x54, 0x3d, 0x3c, 0xad, 0x18,
+  0xe3, 0xca, 0x67, 0x26, 0xfb, 0x37, 0x99, 0x51, 0xa3, 0x8b, 0xd1, 0xe2,
+  0x7a, 0xff, 0xaf, 0x69, 0x75, 0x5d, 0x16, 0x8f, 0x3d, 0x3f, 0x41, 0x42,
+  0xd9, 0xbe, 0x91, 0x50, 0xbb, 0xaf, 0x76, 0x9f, 0x21, 0xff, 0x7b, 0x9a,
+  0xa3, 0x20, 0x10, 0x09, 0x88, 0x8d, 0xd9, 0x06, 0x13, 0x6c, 0x20, 0x4d,
+  0xc2, 0xb2, 0x6a, 0x14, 0x93, 0x0d, 0xbe, 0xee, 0x53, 0xff, 0xd9, 0x89,
+  0x3c, 0xcb, 0xa9, 0xe7, 0x1b, 0x92, 0xab, 0xb0, 0x41, 0x69, 0x9a, 0x8b,
+  0xf9, 0x46, 0x9b, 0x22, 0xfe, 0x91, 0xb1, 0xd2, 0x27, 0x6c, 0xed, 0xc9,
+  0x43, 0x4b, 0x7c, 0x8f, 0x0c, 0xa2, 0x2a, 0x4b, 0x6f, 0x5d, 0x19, 0x64,
+  0xc7, 0xbe, 0xa1, 0x21, 0x8f, 0x8b, 0x77, 0x87, 0xcc, 0x60, 0xaa, 0xf9,
+  0x52, 0x98, 0xea, 0xc4, 0xba, 0xa6, 0xb6, 0xa8, 0x97, 0x8f, 0x7c, 0x9f,
+  0x72, 0x1b, 0xf6, 0x27, 0xa3, 0x27, 0x3c, 0x64, 0xce, 0x1d, 0x93, 0xc5,
+  0x1d, 0xb4, 0x4b, 0xef, 0x90, 0xa1, 0x86, 0xfa, 0x21, 0x5a, 0xf3, 0x78,
+  0x93, 0x6b, 0xca, 0x72, 0xc4, 0x81, 0xba, 0xa6, 0x95, 0xa4, 0xd5, 0xbb,
+  0x63, 0xfa, 0x4d, 0x55, 0x5e, 0xdf, 0x1e, 0x9c, 0x7b, 0x86, 0x2e, 0x0c,
+  0x49, 0xe7, 0xd4, 0xa3, 0xe7, 0xc8, 0xd0, 0x41, 0x49, 0x75, 0xa9, 0xc6,
+  0xd4, 0x73, 0x26, 0x4a, 0x03, 0x39, 0x49, 0xba, 0x11, 0x00, 0xf2, 0xa5,
+  0xdc, 0x27, 0xf0, 0x3f, 0xa1, 0x9a, 0xc1, 0x74, 0x92, 0x22, 0x10, 0x2a,
+  0xb7, 0x10, 0x65, 0x40, 0x9c, 0x15, 0x9a, 0xc5, 0xdc, 0xeb, 0x94, 0x6e,
+  0x30, 0x3f, 0xc6, 0x77, 0x70, 0x45, 0x9f, 0x1b, 0x25, 0x1c, 0x34, 0x2e,
+  0xc3, 0xb7, 0xdf, 0x50, 0x8f, 0x25, 0xa8, 0x03, 0xad, 0x4d, 0x7d, 0xd9,
+  0x36, 0x12, 0xa5, 0x56, 0xa3, 0x3a, 0xaf, 0xd4, 0xb7, 0x48, 0xcd, 0xdd,
+  0x3d, 0x1b, 0xf0, 0x9f, 0x7b, 0xb6, 0xf4, 0x30, 0x1e, 0x03, 0xce, 0xf3,
+  0x4a, 0x0b, 0x1b, 0xcf, 0x32, 0xaa, 0xe6, 0x9b, 0xd7, 0x33, 0x07, 0x4b,
+  0xb9, 0x92, 0xd7, 0x5d, 0x49, 0x3d, 0x51, 0x22, 0x29, 0xb4, 0x80, 0x7e,
+  0xa0, 0xb7, 0xb9, 0xe0, 0xba, 0xcc, 0x2e, 0xfb, 0x94, 0x48, 0x3a, 0x8a,
+  0xe4, 0xdd, 0x48, 0xe5, 0x14, 0x3c, 0x46, 0xf9, 0xd5, 0x0f, 0xba, 0x14,
+  0x7c, 0xd3, 0x98, 0x65, 0x48, 0xeb, 0x5b, 0x73, 0x29, 0x30, 0x14, 0xc1,
+  0xcc, 0x63, 0x2e, 0xc1, 0x7c, 0x72, 0x5f, 0xe5, 0x0c, 0x09, 0x22, 0x47,
+  0x1a, 0x18, 0x9d, 0x5a, 0x5b, 0x8f, 0x2f, 0x53, 0xb2, 0x9d, 0xa7, 0x75,
+  0xc6, 0xfc, 0x8b, 0x20, 0x04, 0xa2, 0xd8, 0x1f, 0x6d, 0x3d, 0xd8, 0x4c,
+  0x8a, 0xa9, 0x85, 0x38, 0xa3, 0x5d, 0xba, 0xb7, 0xf7, 0xe2, 0x45, 0x2f,
+  0x59, 0x27, 0xbf, 0x23, 0xfa, 0x44, 0x1b, 0xfa, 0x1d, 0x04, 0xcf, 0x7a,
+  0xb4, 0xc2, 0xee, 0x76, 0x75, 0x35, 0xa6, 0xff, 0xa7, 0xf7, 0xb4, 0xb0,
+  0xe4, 0xa5, 0x24, 0xe2, 0x50, 0x37, 0x11, 0x64, 0xb5, 0x74, 0x39, 0xbc,
+  0xd3, 0xe8, 0x77, 0xc7, 0xd6, 0xb5, 0x44, 0x71, 0xa4, 0x79, 0x56, 0xce,
+  0x35, 0x60, 0x3c, 0x93, 0x92, 0x21, 0xf8, 0xbe, 0x17, 0x65, 0x43, 0x88,
+  0x9f, 0x11, 0x72, 0xc2, 0x8b, 0x50, 0x2f, 0x46, 0x7d, 0x49, 0x10, 0x66,
+  0x43, 0x33, 0x37, 0x87, 0x79, 0x46, 0x8b, 0x20, 0x1e, 0xfc, 0x40, 0x48,
+  0x7f, 0x99, 0xac, 0xcb, 0x76, 0xa3, 0x3f, 0x06, 0x88, 0xf7, 0x66, 0x63,
+  0x1a, 0x46, 0xf9, 0x46, 0xfe, 0xf1, 0x1f, 0xff, 0x61, 0x9a, 0xfd, 0x0f,
+  0x6a, 0xe5, 0xcd, 0xbf, 0xd7, 0xcd, 0x8d, 0xf7, 0xcc, 0xba, 0x9c, 0x81,
+  0x63, 0x17, 0xed, 0x06, 0x82, 0x0d, 0xcc, 0xb3, 0xc8, 0x63, 0x7b, 0x7f,
+  0x22, 0x42, 0xba, 0xe7, 0x8d, 0x2f, 0x47, 0x86, 0x21, 0xfb, 0x4d, 0x2d,
+  0x80, 0xe4, 0x4b, 0x8a, 0x44, 0x67, 0x94, 0x99, 0x6e, 0x16, 0x01, 0xc4,
+  0x82, 0x5b, 0x0e, 0x52, 0xc2, 0xf2, 0x1d, 0xbe, 0x51, 0x2e, 0x39, 0xd7,
+  0x29, 0xa1, 0x75, 0xaf, 0x37, 0x05, 0x9f, 0x62, 0xac, 0x93, 0xf9, 0x55,
+  0x3a, 0x2d, 0xaf, 0xed, 0x88, 0x63, 0x45, 0x6b, 0x7e, 0xd6, 0xd8, 0xd7,
+  0xfd, 0x86, 0xf4, 0x4d, 0x3f, 0xbe, 0xfe, 0xc4, 0x56, 0x08, 0x27, 0x60,
+  0x8f, 0x26, 0xe0, 0xaf, 0x61, 0x91, 0x32, 0x61, 0x24, 0x36, 0x96, 0x8a,
+  0x0a, 0x92, 0x6d, 0x3d, 0xe8, 0xf6, 0xe4, 0x13, 0x74, 0x77, 0x4c, 0x47,
+  0xa0, 0x53, 0x35, 0xc7, 0xc9, 0x0a, 0xab, 0xdc, 0x48, 0x41, 0x14, 0xd1,
+  0x4d, 0x32, 0x23, 0xaf, 0x72, 0x73, 0x16, 0x70, 0x01, 0xd2, 0x77, 0x68,
+  0xce, 0x10, 0x9a, 0xcc, 0x98, 0x90, 0x66, 0xc4, 0x35, 0xc7, 0xfa, 0xfd,
+  0xa2, 0x99, 0xce, 0x98, 0xbf, 0x79, 0x82, 0xfa, 0x63, 0x9a, 0xa1, 0x91,
+  0x17, 0x21, 0xc9, 0x60, 0x7b, 0x9e, 0xf9, 0xd5, 0x7f, 0x6e, 0x96, 0x7c,
+  0xa1, 0xc7, 0x65, 0x3d, 0xa9, 0x9d, 0x6d, 0x47, 0xdc, 0xe8, 0xc8, 0xd1,
+  0xc8, 0x17, 0xda, 0x2f, 0xa4, 0x24, 0x1a, 0xa0, 0xfd, 0x56, 0x34, 0x09,
+  0xfb, 0x98, 0x0f, 0x59, 0xd5, 0x4c, 0x23, 0xe2, 0x99, 0x26, 0xe7, 0x9b,
+  0x91, 0xef, 0x19, 0x40, 0xc9, 0x75, 0xb2, 0x39, 0x1c, 0x9e, 0x1f, 0x6f,
+  0x6b, 0x45, 0xb5, 0xb5, 0xb5, 0xa3, 0xd3, 0x6f, 0x8f, 0x2f, 0xce, 0x4e,
+  0xdf, 0x1f, 0x9d, 0x5e, 0x26, 0xdf, 0x1e, 0x5c, 0x1c, 0x1f, 0x7c, 0x79,
+  0x22, 0xe4, 0x0b, 0x34, 0x4c, 0xc2, 0x9c, 0xb1, 0x29, 0xd8, 0x21, 0x25,
+  0xf6, 0xf2, 0xe2, 0xa2, 0xa5, 0x6c, 0x3a, 0x55, 0xba, 0x3f, 0x0a, 0xa3,
+  0x3e, 0x0c, 0xe3, 0x8f, 0xa8, 0xca, 0xd5, 0x23, 0x5b, 0xe8, 0xa3, 0x16,
+  0xe8, 0x22, 0x5b, 0xfe, 0xc1, 0x4b, 0xe7, 0x27, 0x38, 0x1c, 0x89, 0x33,
+  0x15, 0xe6, 0xae, 0x34, 0xa5, 0xad, 0xf5, 0xf2, 0x15, 0x33, 0x42, 0x68,
+  0xe1, 0x1b, 0x7d, 0x15, 0xf2, 0x83, 0x75, 0x1d, 0xd7, 0x87, 0x83, 0x93,
+  0x13, 0xf7, 0xa9, 0xd5, 0x35, 0x91, 0x84, 0x0d, 0x8c, 0x73, 0x09, 0xd1,
+  0x28, 0xc5, 0xa9, 0xaf, 0x4b, 0x57, 0x1e, 0xa0, 0x78, 0xf0, 0x2b, 0x01,
+  0xd0, 0xc7, 0xcc, 0x76, 0xd9, 0x64, 0x1a, 0x17, 0x02, 0x2d, 0x34, 0x59,
+  0x95, 0xd7, 0xb7, 0xbd, 0x64, 0xe3, 0xdf, 0x37, 0xa4, 0x42, 0x3d, 0xb8,
+  0xab, 0xb9, 0xe2, 0xd2, 0x96, 0xeb, 0xd4, 0xe9, 0x99, 0xeb, 0x93, 0xc4,
+  0xe1, 0x6d, 0x07, 0xec, 0x8b, 0x0e, 0x45, 0x51, 0xab, 0x7a, 0x0d, 0xf8,
+  0xb2, 0x7b, 0x5c, 0xca, 0x92, 0x58, 0x76, 0x0a, 0x91, 0x8f, 0x14, 0x67,
+  0x8d, 0xbe, 0x0b, 0x27, 0x42, 0x3a, 0xf6, 0x28, 0xca, 0x31, 0xd6, 0x82,
+  0x3c, 0x6f, 0xb6, 0x54, 0x9c, 0x3a, 0xa7, 0xcd, 0x54, 0x4f, 0x84, 0x70,
+  0x31, 0xd5, 0x96, 0x25, 0x95, 0x19, 0xa9, 0xe2, 0x36, 0x02, 0xe5, 0x39,
+  0x19, 0x53, 0x01, 0xb4, 0x0f, 0xcc, 0x4c, 0xe3, 0xe4, 0xb3, 0x13, 0xa9,
+  0xe5, 0xdd, 0x45, 0x4c, 0xa8, 0x93, 0xfb, 0x29, 0xb1, 0x8e, 0xb2, 0xf5,
+  0x33, 0x59, 0x57, 0x09, 0x42, 0x31, 0x69, 0x37, 0xcf, 0x3e, 0x58, 0x30,
+  0xd8, 0x9d, 0xa9, 0x33, 0x09, 0xc0, 0xa4, 0xff, 0xfa, 0x3a, 0x72, 0x93,
+  0x38, 0xd6, 0x62, 0x49, 0x11, 0x89, 0x72, 0x08, 0x73, 0xec, 0x70, 0xe9,
+  0xd9, 0x27, 0xe6, 0x12, 0xb2, 0xbb, 0xcc, 0xed, 0x04, 0xae, 0xa6, 0x27,
+  0x30, 0xf4, 0x6e, 0x8f, 0xb5, 0x52, 0x56, 0xaa, 0x95, 0x99, 0x10, 0x37,
+  0x63, 0x95, 0x0b, 0x4a, 0x53, 0x77, 0x38, 0x70, 0x1a, 0x32, 0xe0, 0xb9,
+  0xd5, 0xe9, 0x4e, 0xc3, 0xeb, 0x8a, 0x27, 0x58, 0xd4, 0xa2, 0x42, 0xe1,
+  0x0e, 0xf9, 0xb4, 0xad, 0xb5, 0xae, 0x00, 0x32, 0xa0, 0x84, 0xa0, 0xca,
+  0x48, 0xd1, 0x7a, 0x79, 0x49, 0xa9, 0x01, 0x62, 0xd3, 0x17, 0x87, 0xa8,
+  0xc9, 0x50, 0x50, 0x55, 0x56, 0x57, 0x4b, 0x07, 0xc9, 0x03, 0x45, 0xd6,
+  0x54, 0x94, 0x91, 0x5b, 0x88, 0x15, 0x02, 0x40, 0x3e, 0x8c, 0xf4, 0xf4,
+  0xba, 0x54, 0x03, 0x3c, 0xb5, 0xa8, 0x19, 0x5b, 0x71, 0xd0, 0x33, 0xea,
+  0x2d, 0x73, 0xa0, 0x15, 0x5c, 0xc0, 0xd7, 0x68, 0x84, 0x90, 0xf0, 0xa5,
+  0x74, 0xc8, 0xb4, 0x82, 0x7c, 0xed, 0x71, 0x33, 0xb8, 0xf4, 0x25, 0x92,
+  0xe4, 0x9c, 0xa5, 0xa3, 0x54, 0x7e, 0xa0, 0x4f, 0x54, 0x2e, 0x07, 0x20,
+  0x9d, 0xd1, 0x2d, 0x7a, 0x10, 0x4d, 0x0a, 0x68, 0x1d, 0x4d, 0x6a, 0xf0,
+  0xca, 0xc8, 0xab, 0x29, 0x65, 0x90, 0xaa, 0xde, 0x91, 0x26, 0xa3, 0xfc,
+  0x9a, 0x39, 0x41, 0x88, 0x80, 0x82, 0xce, 0x25, 0x28, 0x1e, 0xcb, 0x59,
+  0x46, 0x87, 0x03, 0x04, 0x8e, 0x30, 0xde, 0x6f, 0xca, 0xa9, 0xcf, 0x32,
+  0xa8, 0x23, 0x91, 0xd5, 0xb7, 0xb1, 0x0f, 0xc4, 0x3e, 0x17, 0x34, 0x8f,
+  0x0a, 0x47, 0x95, 0xf2, 0x04, 0x02, 0xce, 0xa5, 0xa0, 0x1a, 0xb8, 0x52,
+  0x0b, 0xa4, 0x02, 0x2a, 0x97, 0x02, 0xe6, 0x41, 0x13, 0x17, 0x68, 0xe3,
+  0xc2, 0x91, 0x4e, 0x75, 0x5e, 0x37, 0x6d, 0x7d, 0x01, 0x6a, 0x65, 0xcc,
+  0x0c, 0xcd, 0x24, 0x66, 0x18, 0x52, 0xd2, 0x2e, 0x08, 0x26, 0x8b, 0x25,
+  0xdc, 0x79, 0x66, 0x4f, 0x50, 0xa7, 0xcd, 0x4c, 0x6d, 0x7a, 0x6a, 0x46,
+  0x61, 0xb6, 0x08, 0x3f, 0xc6, 0x1e, 0x24, 0xf9, 0x57, 0xdf, 0xd6, 0x32,
+  0x14, 0xe0, 0xc9, 0x96, 0x03, 0x1e, 0xb1, 0x19, 0x40, 0xf2, 0x61, 0x2c,
+  0xd5, 0x64, 0x01, 0xd1, 0xa1, 0x52, 0xb8, 0x20, 0x84, 0x6b, 0x05, 0x1f,
+  0x12, 0x4d, 0xb8, 0x9b, 0x4e, 0xbd, 0x02, 0x03, 0xec, 0x8f, 0x4c, 0x03,
+  0xe3, 0x83, 0xe4, 0xc4, 0x80, 0x65, 0x2e, 0x43, 0xff, 0x98, 0x8c, 0xdc,
+  0x1b, 0x88, 0x24, 0x95, 0x90, 0x79, 0xd6, 0x89, 0x69, 0x78, 0x57, 0x88,
+  0xc2, 0x63, 0x7c, 0x35, 0x54, 0xea, 0xe9, 0xe4, 0xe9, 0x8c, 0x8d, 0x47,
+  0xb7, 0xfb, 0x66, 0x0f, 0x0c, 0x3b, 0x5e, 0x5b, 0x3b, 0xfc, 0x30, 0xbc,
+  0x3c, 0x7b, 0x9f, 0x9c, 0x7d, 0xb8, 0x3c, 0xff, 0x70, 0x29, 0x7a, 0xea,
+  0x88, 0x93, 0x36, 0x18, 0xba, 0xc4, 0xba, 0xb3, 0x2e, 0xe6, 0x4c, 0x00,
+  0x3e, 0xc0, 0x98, 0x95, 0xa0, 0x15, 0xf5, 0x18, 0xc5, 0x6c, 0x52, 0x26,
+  0xb8, 0xf6, 0x98, 0xaf, 0x1c, 0x53, 0x7e, 0x6f, 0xa6, 0x1c, 0x09, 0xf5,
+  0xf0, 0xe4, 0x6b, 0x8e, 0x27, 0xfc, 0x1e, 0x7a, 0xd6, 0xda, 0xb5, 0xaa,
+  0x1e, 0xda, 0x7e, 0x0c, 0xa0, 0x73, 0xda, 0x0c, 0x6e, 0x7e, 0xc9, 0x5c,
+  0x76, 0xee, 0x3a, 0xdf, 0xaf, 0x8f, 0xe9, 0x96, 0x82, 0xbb, 0x1a, 0x81,
+  0x52, 0x58, 0x3d, 0xb0, 0x86, 0xed, 0xcc, 0x62, 0x3f, 0xc1, 0xb9, 0x29,
+  0xcd, 0x08, 0x6f, 0x6c, 0x4a, 0x0c, 0xc1, 0x08, 0x01, 0x05, 0x66, 0x04,
+  0x15, 0x61, 0x6e, 0xd9, 0x65, 0x50, 0x64, 0xf7, 0xa4, 0xf8, 0x04, 0x3a,
+  0xf5, 0x7d, 0xb2, 0xf1, 0x5d, 0xe6, 0x37, 0xf8, 0x87, 0xff, 0xa2, 0xbc,
+  0xed, 0x8f, 0xfa, 0x93, 0x7f, 0xf0, 0x27, 0x7f, 0x2c, 0x36, 0x20, 0x30,
+  0xdb, 0x50, 0x99, 0x6f, 0x8e, 0x2e, 0xbe, 0x3c, 0xba, 0x38, 0x1b, 0x42,
+  0x1e, 0xa8, 0xbf, 0x3b, 0xdc, 0xeb, 0xb7, 0x59, 0x35, 0xca, 0xaa, 0x52,
+  0xea, 0xe8, 0xe9, 0xbf, 0x5e, 0x6c, 0x7f, 0x35, 0x1c, 0x1e, 0x9c, 0x1f,
+  0xdb, 0x4a, 0x55, 0x36, 0x83, 0x94, 0x7d, 0x24, 0x05, 0xe7, 0x38, 0xd3,
+  0xf8, 0xf5, 0x15, 0xb3, 0x2f, 0xc6, 0xb7, 0x9c, 0x59, 0x10, 0x80, 0x52,
+  0x34, 0xb0, 0x46, 0x68, 0x14, 0x49, 0x2c, 0xa6, 0x86, 0x95, 0x09, 0xce,
+  0xaf, 0x36, 0xc1, 0x65, 0x21, 0x28, 0x18, 0xd8, 0xb3, 0x10, 0xdc, 0xdb,
+  0x6a, 0xd4, 0x37, 0xbb, 0xfd, 0x56, 0x0b, 0xb7, 0x73, 0x22, 0x94, 0x11,
+  0x95, 0x9c, 0x21, 0xe1, 0x9c, 0x8d, 0xb7, 0x79, 0x91, 0x37, 0xdb, 0xb7,
+  0x74, 0x3e, 0xa8, 0x8a, 0xd2, 0x74, 0xc0, 0xd2, 0x9d, 0x0f, 0x94, 0xc2,
+  0xde, 0x49, 0xc4, 0xae, 0x62, 0xa7, 0x31, 0x5f, 0xb3, 0xa5, 0x4f, 0xd9,
+  0xe1, 0x6d, 0x7e, 0xf2, 0xdc, 0xd2, 0xf4, 0x89, 0xe6, 0x0f, 0xa4, 0xec,
+  0x95, 0xb9, 0xab, 0xe6, 0xf7, 0x13, 0xb9, 0x44, 0xc0, 0x52, 0xcf, 0xca,
+  0xa5, 0xc8, 0xf0, 0x6e, 0x84, 0x9a, 0xca, 0xb3, 0x22, 0x63, 0x4b, 0xf2,
+  0x51, 0x92, 0xd1, 0x34, 0x2d, 0x6e, 0xa1, 0x3f, 0x40, 0x23, 0xa0, 0xbb,
+  0x4f, 0xc9, 0xe7, 0xa8, 0x6c, 0x2e, 0x00, 0x09, 0xc2, 0x07, 0x03, 0x93,
+  0x6f, 0x4a, 0xc2, 0xed, 0x81, 0x83, 0x79, 0x96, 0x63, 0xcf, 0x0b, 0xbd,
+  0xe3, 0x38, 0xb9, 0x49, 0x20, 0xdf, 0xf1, 0xd1, 0x89, 0xb9, 0x98, 0x6c,
+  0x96, 0x19, 0x7c, 0x74, 0xd9, 0x94, 0x62, 0x41, 0x0a, 0x09, 0xe4, 0xc4,
+  0xea, 0x1c, 0x82, 0x8c, 0xa5, 0x87, 0x16, 0x50, 0x40, 0x00, 0x19, 0xdb,
+  0x05, 0xf9, 0xe3, 0xb5, 0x2d, 0x33, 0x24, 0x92, 0x9b, 0x85, 0x18, 0xd8,
+  0x81, 0x5d, 0xd5, 0x21, 0xbf, 0xfe, 0x95, 0xe0, 0x6d, 0x0f, 0x1d, 0x20,
+  0xd0, 0x16, 0x04, 0xe4, 0x4e, 0x38, 0x23, 0xd4, 0x42, 0x0c, 0x5a, 0xe9,
+  0x6d, 0x4b, 0x97, 0x89, 0x5f, 0x8f, 0x79, 0x01, 0x99, 0xd4, 0x70, 0x22,
+  0x01, 0x4f, 0xcb, 0x07, 0xa6, 0x39, 0x0b, 0xed, 0x3c, 0x01, 0xed, 0x38,
+  0xc3, 0x81, 0x28, 0x7a, 0x33, 0x6d, 0xac, 0xa3, 0xa2, 0x66, 0x86, 0x35,
+  0x28, 0x5d, 0x13, 0x88, 0x9c, 0xaa, 0x45, 0x55, 0xed, 0xc3, 0xf3, 0x99,
+  0xb2, 0xa6, 0xb4, 0x46, 0x26, 0x5b, 0xff, 0xd6, 0x9a, 0xed, 0x9f, 0xd2,
+  0x75, 0x51, 0xf6, 0x47, 0x0b, 0x38, 0x66, 0xbc, 0x42, 0x7d, 0x9c, 0xc4,
+  0x5d, 0x5e, 0xb1, 0xe6, 0xc1, 0xbf, 0xa7, 0x80, 0x34, 0xe8, 0x31, 0x38,
+  0x46, 0x8d, 0x7c, 0xe9, 0x36, 0xd3, 0x96, 0xe5, 0x57, 0xe2, 0x24, 0x24,
+  0x57, 0x41, 0xdc, 0x0e, 0x50, 0x16, 0xd9, 0x3a, 0x69, 0x3c, 0x9b, 0xa6,
+  0xd7, 0x49, 0xb9, 0x68, 0x6c, 0xc1, 0x8b, 0x4b, 0xa8, 0x09, 0x99, 0x94,
+  0x81, 0xd0, 0x5c, 0x0a, 0xcd, 0xdc, 0xba, 0x6b, 0xa8, 0xb4, 0x1c, 0x53,
+  0xc3, 0xa4, 0x53, 0xae, 0xd3, 0xb3, 0xf4, 0x2a, 0xe1, 0xc3, 0xd4, 0x5c,
+  0x5e, 0xfe, 0xe5, 0xfc, 0xe8, 0x8d, 0xbe, 0xb9, 0x6a, 0xcd, 0x98, 0x31,
+  0x11, 0xa0, 0xb9, 0x4c, 0x18, 0x8a, 0x35, 0x87, 0x86, 0x45, 0x45, 0xbf,
+  0x51, 0x30, 0x0f, 0x7f, 0xa6, 0x9f, 0x7c, 0xff, 0xf6, 0x78, 0x78, 0x7e,
+  0x72, 0x76, 0xf8, 0xe6, 0xf5, 0xf7, 0x2a, 0x92, 0xbf, 0xa0, 0x18, 0x21,
+  0xeb, 0x69, 0xf6, 0x67, 0x8e, 0xd1, 0x45, 0xde, 0x3b, 0x3d, 0xfa, 0xee,
+  0xa3, 0xb1, 0xc7, 0xde, 0x50, 0x5d, 0x87, 0xde, 0x5d, 0x3a, 0x95, 0x97,
+  0x48, 0x3f, 0x8d, 0xe8, 0x76, 0x83, 0x36, 0x05, 0x67, 0x77, 0x62, 0x6d,
+  0x7d, 0x62, 0x97, 0xa8, 0xf4, 0xa0, 0x38, 0x5a, 0xaf, 0x14, 0x5d, 0xda,
+  0xca, 0xab, 0x8f, 0x54, 0x13, 0x77, 0xd7, 0xff, 0x46, 0xc3, 0xa0, 0x6a,
+  0xc2, 0x10, 0xf9, 0xd0, 0x1c, 0x00, 0xd7, 0xe5, 0x37, 0x0e, 0xd0, 0x2f,
+  0xfc, 0xe9, 0x15, 0xf9, 0xd1, 0x2c, 0x01, 0xad, 0x94, 0xa8, 0x07, 0xe8,
+  0x45, 0x58, 0x6a, 0x85, 0x7a, 0x8d, 0x30, 0xf4, 0x9a, 0x4e, 0xa3, 0x72,
+  0x4c, 0x54, 0x18, 0xdb, 0x97, 0x54, 0x8b, 0x65, 0xa3, 0x22, 0xd7, 0xf9,
+  0xd1, 0xc5, 0xf0, 0x78, 0x78, 0x49, 0x86, 0xab, 0x54, 0x6e, 0x95, 0x20,
+  0x94, 0x96, 0xd5, 0x05, 0x69, 0x4b, 0x9b, 0x70, 0xd8, 0xaf, 0x16, 0xd4,
+  0x3a, 0xd1, 0x56, 0xcc, 0xb5, 0xb3, 0xb8, 0xe9, 0x06, 0xe0, 0xd4, 0x70,
+  0x52, 0x44, 0x99, 0x36, 0x3b, 0xbd, 0xd2, 0x03, 0x5c, 0xca, 0xd6, 0xe8,
+  0x14, 0xcd, 0x41, 0xc1, 0x2b, 0xac, 0xce, 0x34, 0x1f, 0x39, 0x67, 0x66,
+  0x07, 0x43, 0x42, 0xf0, 0x24, 0xa1, 0xe8, 0xf1, 0x8f, 0x90, 0x06, 0xc4,
+  0x1c, 0x35, 0x82, 0x14, 0xf3, 0x96, 0x6b, 0x4d, 0xd2, 0x9a, 0xfd, 0x04,
+  0x76, 0xeb, 0x96, 0x82, 0xd1, 0xa2, 0x7a, 0x9a, 0xfd, 0xa9, 0x87, 0x42,
+  0x17, 0xd6, 0x37, 0x10, 0x56, 0x8b, 0xc8, 0x26, 0xa1, 0x9c, 0x73, 0x2a,
+  0x2a, 0xf9, 0x27, 0x8d, 0xd6, 0x02, 0x6a, 0x0d, 0x00, 0x05, 0x65, 0x64,
+  0x81, 0x0a, 0x22, 0xaa, 0xe3, 0x35, 0xe5, 0xb0, 0x82, 0x5a, 0x6f, 0x42,
+  0xfa, 0x16, 0x5c, 0xf0, 0xfe, 0xc7, 0xf4, 0x3a, 0xa5, 0x19, 0x1c, 0x2d,
+  0xfc, 0x52, 0x90, 0xb6, 0xf7, 0x5c, 0x95, 0x08, 0x13, 0x0f, 0x88, 0x74,
+  0x5a, 0xc1, 0x93, 0xd1, 0x48, 0xa9, 0x08, 0x35, 0x7c, 0x04, 0xef, 0x3c,
+  0x68, 0xb3, 0x78, 0xe9, 0xbe, 0x54, 0x23, 0x6c, 0xd5, 0x8c, 0x7a, 0xb5,
+  0x63, 0x69, 0xfb, 0x56, 0x99, 0x02, 0x17, 0xd9, 0xa9, 0x58, 0x53, 0xc4,
+  0xb1, 0x18, 0xdb, 0xcb, 0x98, 0xb2, 0x0e, 0x09, 0x60, 0x50, 0x09, 0x43,
+  0x9a, 0x11, 0x7f, 0x14, 0x5a, 0x42, 0xc1, 0x59, 0x54, 0x62, 0xa7, 0xb0,
+  0xbb, 0xb2, 0x67, 0xba, 0x3c, 0x0e, 0x9e, 0x6e, 0x6f, 0x5b, 0x71, 0x7c,
+  0xed, 0x41, 0x3e, 0x68, 0x19, 0x32, 0x74, 0xb1, 0x7a, 0x9c, 0x70, 0x99,
+  0x22, 0xbf, 0x4f, 0x03, 0x3b, 0x5e, 0x9e, 0x78, 0x2d, 0xd9, 0xf7, 0x16,
+  0x9f, 0x02, 0x81, 0xd7, 0xaa, 0xba, 0x4d, 0xa3, 0x6b, 0x61, 0x03, 0x8c,
+  0x7e, 0x39, 0x47, 0x09, 0xb5, 0xb1, 0xd4, 0x90, 0x00, 0x6a, 0xdf, 0x36,
+  0xa8, 0x97, 0x88, 0x9b, 0x2c, 0x33, 0xab, 0xef, 0x3f, 0x9c, 0x5c, 0x1e,
+  0x9f, 0xfb, 0xf8, 0x83, 0xe4, 0xbb, 0xe3, 0xcb, 0xaf, 0x8d, 0xd6, 0x3e,
+  0x3c, 0x3e, 0xfd, 0xea, 0x84, 0x82, 0xbc, 0xef, 0xdf, 0x1f, 0x9c, 0x12,
+  0xbd, 0xc8, 0x29, 0xa0, 0xcd, 0x07, 0x30, 0x1c, 0x48, 0x1c, 0x99, 0x29,
+  0xa6, 0xbd, 0x43, 0xc4, 0x13, 0xbd, 0x30, 0xd6, 0xd8, 0x39, 0x7e, 0x5c,
+  0x55, 0xbd, 0x68, 0x4f, 0x12, 0xad, 0xb8, 0x58, 0x06, 0x0f, 0xe4, 0xc6,
+  0xc5, 0xb1, 0x25, 0x63, 0x8b, 0x26, 0xba, 0x5b, 0x3c, 0x02, 0x49, 0xce,
+  0xac, 0xa1, 0x03, 0x47, 0xc3, 0x77, 0xb7, 0x8b, 0x5f, 0x62, 0x45, 0x2d,
+  0xf5, 0x34, 0xec, 0x18, 0xa3, 0x33, 0x15, 0x62, 0xd7, 0xf0, 0x7d, 0xd9,
+  0x4e, 0x3a, 0x32, 0x5f, 0x44, 0x97, 0x00, 0x24, 0x2a, 0x9d, 0x23, 0x9d,
+  0x2c, 0x4e, 0x32, 0x9a, 0x2f, 0x4e, 0xfc, 0x0b, 0x75, 0xd0, 0xaa, 0x39,
+  0xa8, 0xf8, 0xe0, 0xeb, 0x32, 0x73, 0x27, 0xb7, 0x7f, 0xa6, 0xcd, 0x68,
+  0xfc, 0x07, 0x66, 0x18, 0x5f, 0x2e, 0x7d, 0x92, 0x6b, 0x7d, 0xb3, 0x24,
+  0x5b, 0xb6, 0xce, 0x98, 0x98, 0xfd, 0xfb, 0xac, 0x56, 0x5a, 0x72, 0x75,
+  0x2d, 0xcf, 0x69, 0x9a, 0xd3, 0x96, 0x05, 0x8b, 0x86, 0x84, 0x0c, 0xc9,
+  0x6b, 0x94, 0x31, 0x43, 0x5a, 0xea, 0x63, 0x2d, 0x5a, 0x06, 0xbe, 0xef,
+  0xce, 0x34, 0x38, 0xa9, 0x79, 0xad, 0xb6, 0xf0, 0xa3, 0x83, 0x4e, 0xa0,
+  0xb4, 0x22, 0xdc, 0x15, 0x19, 0xa1, 0x1c, 0xe8, 0xaf, 0x7f, 0x9d, 0x5f,
+  0xfb, 0x29, 0xaf, 0x5c, 0x58, 0x7e, 0x1e, 0x5b, 0x59, 0x61, 0x72, 0x67,
+  0xb5, 0x48, 0x8a, 0x59, 0xb6, 0x7a, 0x20, 0x15, 0x2a, 0x77, 0x97, 0x7d,
+  0x50, 0x7e, 0xbf, 0x17, 0xfe, 0x7e, 0x8f, 0x83, 0x0c, 0xc7, 0xe7, 0x77,
+  0x2f, 0x2d, 0x03, 0x32, 0x13, 0x39, 0xf8, 0xea, 0x9b, 0x2a, 0x05, 0xb4,
+  0xc3, 0xe8, 0x51, 0x71, 0x99, 0xb3, 0x4c, 0xe4, 0xe0, 0x1f, 0x41, 0x48,
+  0x17, 0x15, 0x12, 0xd4, 0xf1, 0x08, 0xa2, 0x2b, 0x8c, 0xfb, 0x87, 0xe7,
+  0x09, 0x72, 0x8a, 0xae, 0x2b, 0xd3, 0xa0, 0xf9, 0xfd, 0x73, 0x9b, 0x8c,
+  0xe3, 0x64, 0x1a, 0x8a, 0x34, 0x4a, 0x3a, 0x64, 0x3f, 0x9f, 0xdf, 0x69,
+  0x95, 0x6f, 0xf3, 0xd7, 0x97, 0xb6, 0x40, 0x57, 0xdd, 0x0a, 0x52, 0xb7,
+  0xd8, 0xc6, 0x55, 0xf8, 0xa3, 0x73, 0xf0, 0x81, 0x91, 0x64, 0x70, 0x46,
+  0x46, 0xa7, 0x5f, 0x59, 0x3b, 0x23, 0xc3, 0x2b, 0x53, 0x8c, 0xac, 0xaf,
+  0x29, 0x52, 0xe3, 0x21, 0x8f, 0x3c, 0xe1, 0xe2, 0x57, 0xfa, 0x90, 0x55,
+  0xff, 0x61, 0x6f, 0x67, 0x67, 0x77, 0x7f, 0xf7, 0xf3, 0x57, 0x3b, 0xfb,
+  0xbb, 0xbb, 0xbb, 0x7b, 0xfb, 0xbb, 0xfb, 0xfb, 0x7b, 0x3b, 0x3f, 0x6d,
+  0x93, 0xff, 0xe8, 0x2e, 0xcf, 0xee, 0x35, 0x32, 0xcd, 0x7e, 0x3e, 0x6c,
+  0xeb, 0xba, 0x79, 0x60, 0x30, 0x00, 0x7b, 0xfa, 0xb0, 0xaf, 0x55, 0xf3,
+  0xb1, 0xb4, 0x32, 0x9c, 0x33, 0xc3, 0x14, 0x92, 0x73, 0x97, 0x6a, 0x8e,
+  0x33, 0xe8, 0xd1, 0xdc, 0xa3, 0x57, 0x7f, 0x5b, 0xd0, 0x48, 0x47, 0xa4,
+  0x0e, 0x40, 0xa7, 0xa9, 0x6d, 0x62, 0xef, 0xf5, 0xb4, 0x1c, 0x8d, 0x90,
+  0xba, 0x64, 0x73, 0xdb, 0x07, 0x09, 0x71, 0x29, 0xdf, 0xf2, 0x96, 0x90,
+  0xd0, 0x21, 0x50, 0xc5, 0x7c, 0xd0, 0xdd, 0xec, 0x38, 0xcf, 0x9e, 0xd9,
+  0x01, 0xe3, 0x92, 0xea, 0x8a, 0xc0, 0xd3, 0x6d, 0x26, 0xa9, 0xb2, 0x39,
+  0x6f, 0xc9, 0x55, 0xf6, 0xf9, 0xce, 0xfe, 0x3e, 0x95, 0xfe, 0xf9, 0xc3,
+  0x6e, 0x4f, 0x00, 0xe1, 0x7e, 0x96, 0x4b, 0xcf, 0x5e, 0x4f, 0xdc, 0x06,
+  0x99, 0x1f, 0xfe, 0x38, 0x8b, 0xc5, 0x2c, 0xab, 0x8c, 0x21, 0x42, 0xc5,
+  0xa3, 0x81, 0x88, 0x86, 0xc7, 0x90, 0x39, 0x16, 0xc1, 0xc8, 0xd4, 0xc9,
+  0xc6, 0xa1, 0x1b, 0x81, 0xb9, 0xa2, 0x2d, 0x0b, 0x05, 0xf3, 0x85, 0xb9,
+  0x21, 0xda, 0xb6, 0x51, 0xfe, 0x0a, 0x60, 0x4d, 0xce, 0x65, 0xe3, 0x2c,
+  0x3e, 0xbe, 0x6f, 0x45, 0x32, 0xe0, 0x70, 0x15, 0x5c, 0xd2, 0x98, 0x1e,
+  0x67, 0x1d, 0x1e, 0x1e, 0x13, 0x4f, 0xb9, 0x95, 0x04, 0xbe, 0x1f, 0xbc,
+  0xc1, 0xee, 0xbd, 0xd8, 0xfd, 0x89, 0xf1, 0xca, 0x74, 0x20, 0xdc, 0xac,
+  0x69, 0xf0, 0xc5, 0x4f, 0xd1, 0xd2, 0x8d, 0xb4, 0x99, 0x0d, 0xae, 0x07,
+  0xaa, 0x55, 0x88, 0xb7, 0xb1, 0xe7, 0x67, 0x8d, 0x70, 0x9d, 0x02, 0x2e,
+  0x54, 0x0e, 0x3b, 0x4d, 0x1d, 0x4a, 0xbe, 0xab, 0x56, 0x07, 0x66, 0xcb,
+  0xd1, 0xbd, 0x3f, 0xba, 0x3c, 0x30, 0x97, 0xc7, 0x37, 0xa1, 0xa1, 0xff,
+  0x3e, 0x33, 0x56, 0x39, 0x2d, 0xf6, 0x26, 0xce, 0xc3, 0x9d, 0x65, 0x07,
+  0xa7, 0xb9, 0x7b, 0x9e, 0x6c, 0x52, 0x88, 0xf2, 0xc5, 0xe7, 0x2f, 0x9e,
+  0x6f, 0x71, 0x29, 0x16, 0x7e, 0x2d, 0xa3, 0x04, 0x31, 0x78, 0x25, 0x85,
+  0x9d, 0x8a, 0x1c, 0xf8, 0x56, 0x24, 0x7d, 0xb8, 0x38, 0xe6, 0x23, 0x7d,
+  0xc3, 0x24, 0x22, 0x6c, 0xf4, 0x76, 0xd9, 0x24, 0x71, 0xdf, 0x7a, 0x4a,
+  0xc6, 0x2c, 0x27, 0xa6, 0x53, 0x90, 0x2f, 0xd0, 0xc5, 0x68, 0xc9, 0x3f,
+  0x70, 0xc3, 0x9a, 0x03, 0x5a, 0xa2, 0x40, 0xa9, 0xd4, 0x7d, 0x43, 0x67,
+  0x40, 0x8d, 0x4a, 0xcc, 0xcc, 0xb2, 0xcf, 0xac, 0x05, 0x46, 0x76, 0x10,
+  0xcb, 0x23, 0x96, 0xfe, 0x1d, 0x36, 0xfe, 0x2d, 0x86, 0xfc, 0x40, 0x29,
+  0xa4, 0x6d, 0x68, 0x1e, 0x54, 0xec, 0x38, 0xf5, 0xb8, 0x95, 0x8e, 0xea,
+  0xb4, 0x4d, 0x8f, 0xd4, 0x4d, 0xf9, 0x9c, 0x44, 0x14, 0xd9, 0x29, 0x64,
+  0x3c, 0x4b, 0x03, 0xcf, 0x62, 0xde, 0x72, 0xf9, 0x08, 0x99, 0x06, 0x48,
+  0x2d, 0x90, 0x73, 0x30, 0x33, 0xd7, 0x51, 0xf5, 0x20, 0x1a, 0x36, 0xcc,
+  0x04, 0x5b, 0x4f, 0xb1, 0x83, 0x08, 0x62, 0xda, 0x18, 0x3f, 0x95, 0xc6,
+  0xb2, 0x26, 0xa9, 0xd1, 0xdc, 0xea, 0x40, 0x4b, 0xec, 0xf7, 0x67, 0xfa,
+  0x2b, 0x0f, 0x30, 0xe7, 0xe7, 0x97, 0xea, 0xdf, 0xf5, 0x39, 0x0f, 0x4b,
+  0x9d, 0x76, 0x07, 0xb6, 0xa4, 0x6b, 0xcc, 0xa8, 0x0b, 0xfc, 0xa4, 0xb5,
+  0x7e, 0x36, 0xd1, 0x93, 0xed, 0xed, 0xad, 0x25, 0xbd, 0x91, 0x5f, 0xc7,
+  0xbe, 0x7e, 0x0e, 0x52, 0x22, 0x2f, 0xa5, 0xdb, 0xac, 0x79, 0xbb, 0x71,
+  0x9a, 0xda, 0xbc, 0xa6, 0x95, 0x9c, 0x08, 0x30, 0x9e, 0xdd, 0xa8, 0x6a,
+  0x5e, 0x71, 0xe7, 0x55, 0x78, 0xb5, 0x07, 0x21, 0x58, 0x3c, 0x25, 0x89,
+  0xe3, 0xaa, 0xf2, 0x8c, 0x0a, 0x18, 0x24, 0x07, 0xb4, 0x1b, 0x5a, 0x1f,
+  0xf6, 0xba, 0xac, 0xfe, 0x5c, 0xad, 0x7b, 0xa0, 0x4a, 0xac, 0x75, 0xe7,
+  0xf5, 0xbc, 0x5f, 0xaa, 0x9a, 0xa7, 0x9c, 0x20, 0xd6, 0xd9, 0x3b, 0xca,
+  0x98, 0xff, 0xc8, 0x4a, 0x4e, 0x8f, 0xcf, 0x3c, 0x2f, 0x5a, 0x85, 0x82,
+  0xa5, 0x11, 0x20, 0x5d, 0xec, 0x20, 0x40, 0x95, 0x5a, 0x29, 0x05, 0xb7,
+  0x5f, 0x3c, 0x14, 0x14, 0x24, 0x92, 0xd5, 0xc2, 0x8a, 0xb5, 0xdd, 0xc4,
+  0x0c, 0x52, 0x18, 0xf1, 0xf6, 0x6a, 0xcd, 0x47, 0x8f, 0x77, 0x3c, 0xa3,
+  0x98, 0x2c, 0xa4, 0x82, 0x04, 0xc6, 0xc1, 0xf1, 0x09, 0xc1, 0x62, 0x4f,
+  0x8c, 0x89, 0x37, 0x54, 0x55, 0x09, 0x30, 0x71, 0x00, 0x76, 0x8b, 0x9c,
+  0xd4, 0xf5, 0x9e, 0x2d, 0x38, 0xa4, 0xd9, 0x92, 0xb0, 0x5b, 0x28, 0xc4,
+  0xca, 0xa6, 0xbf, 0x90, 0x84, 0x9a, 0xd5, 0x32, 0xfa, 0x52, 0xcd, 0x4e,
+  0x5b, 0x10, 0x70, 0x53, 0x69, 0x8a, 0xbb, 0x6c, 0x5a, 0xce, 0x61, 0x52,
+  0xb3, 0x98, 0x46, 0xbd, 0xb3, 0x2a, 0x9b, 0x66, 0x77, 0xe2, 0x5d, 0x65,
+  0x3a, 0xe3, 0xaf, 0x04, 0xb1, 0xc0, 0x05, 0x8f, 0x1b, 0xc9, 0x6a, 0x09,
+  0x50, 0x11, 0xf4, 0xd1, 0x6d, 0x66, 0x85, 0x72, 0x64, 0x3f, 0xf4, 0x7d,
+  0x57, 0x84, 0xc3, 0xcc, 0x90, 0x2d, 0xe2, 0xd0, 0x27, 0x23, 0x57, 0xc0,
+  0xed, 0x1f, 0x6a, 0xe1, 0x73, 0xe9, 0x66, 0x8b, 0xb0, 0xb3, 0x50, 0x6b,
+  0x66, 0xb2, 0xf7, 0xbd, 0xa7, 0x34, 0xe9, 0x1c, 0x32, 0xa0, 0x9b, 0xa7,
+  0x47, 0x9e, 0x5a, 0xb4, 0x74, 0x65, 0x2c, 0x32, 0x2a, 0x88, 0xd3, 0xe3,
+  0xd4, 0x71, 0x6c, 0x8e, 0x72, 0x6a, 0xfe, 0x09, 0x40, 0x25, 0x43, 0xac,
+  0xcd, 0xb3, 0x14, 0x6f, 0xf6, 0x30, 0xed, 0x84, 0xb9, 0x41, 0x3a, 0x94,
+  0xfc, 0x0b, 0x4d, 0x55, 0x0b, 0xb0, 0x89, 0xf7, 0xf8, 0x36, 0xa4, 0x38,
+  0x6f, 0x33, 0x1e, 0xd8, 0xde, 0x0b, 0xea, 0x87, 0xfb, 0xff, 0x96, 0xa7,
+  0x92, 0x06, 0xc1, 0x7a, 0x48, 0x59, 0xe9, 0xf4, 0xf2, 0x32, 0x8c, 0xb8,
+  0xc4, 0xe9, 0x97, 0x0b, 0x8a, 0x3f, 0xda, 0x02, 0x5e, 0xd4, 0x8b, 0x19,
+  0xdd, 0x45, 0x19, 0x57, 0x13, 0xb6, 0x8d, 0x93, 0x49, 0xb7, 0x30, 0xcb,
+  0xcb, 0xad, 0x9f, 0x94, 0xf7, 0x54, 0x0a, 0xf9, 0xea, 0x2a, 0x1f, 0x53,
+  0xec, 0xdf, 0xb1, 0x86, 0x93, 0x8c, 0xe7, 0x07, 0x67, 0x5a, 0x7d, 0xcd,
+  0x8c, 0x2d, 0x99, 0x2f, 0x46, 0x53, 0x73, 0x59, 0x6b, 0x3e, 0x8b, 0x39,
+  0x55, 0x98, 0x25, 0x63, 0x6d, 0xa1, 0x39, 0xa6, 0x37, 0x84, 0xc1, 0xd9,
+  0xc9, 0xa1, 0x40, 0xb8, 0xb4, 0x82, 0x0a, 0x3e, 0x43, 0x4d, 0x68, 0x4a,
+  0x34, 0x98, 0x95, 0x85, 0xa6, 0xc3, 0x2d, 0x6a, 0xa6, 0x93, 0x45, 0x34,
+  0x87, 0xab, 0x64, 0x25, 0x78, 0x52, 0x8a, 0x36, 0x88, 0x69, 0x8e, 0x37,
+  0xfc, 0xc1, 0x4c, 0xfa, 0xf3, 0x9b, 0xb9, 0xae, 0xb4, 0x2a, 0x44, 0xac,
+  0x2d, 0x49, 0x02, 0x16, 0x8e, 0xde, 0xf9, 0xd7, 0xe7, 0x83, 0xe4, 0x88,
+  0x5a, 0xe2, 0x3e, 0x89, 0xa2, 0x0b, 0x1f, 0x8d, 0xf9, 0x9d, 0x19, 0xec,
+  0x35, 0x5d, 0x60, 0x67, 0x15, 0xfd, 0x0b, 0xad, 0xc9, 0x2f, 0xd9, 0x2d,
+  0x8b, 0xdf, 0xb6, 0xbf, 0x6a, 0x1a, 0xd2, 0x34, 0x8b, 0x73, 0xfc, 0xdd,
+  0x9c, 0x15, 0xa3, 0x7e, 0xd9, 0x65, 0x72, 0x5f, 0x28, 0xab, 0x16, 0xf9,
+  0x16, 0xbf, 0x99, 0x18, 0xad, 0x0c, 0xba, 0xd5, 0xfc, 0x01, 0xeb, 0xe7,
+  0x09, 0x47, 0xd6, 0x3f, 0xb9, 0x01, 0x6f, 0x6b, 0xc9, 0xf6, 0xb3, 0x00,
+  0x5e, 0x3e, 0x58, 0x15, 0xd3, 0x4e, 0x55, 0x99, 0xc0, 0x9d, 0x4b, 0x09,
+  0x4c, 0xb3, 0x47, 0xa3, 0xce, 0x3a, 0xe7, 0xd5, 0xb3, 0xdf, 0xf4, 0x17,
+  0x64, 0x76, 0x53, 0x5f, 0x8c, 0xd6, 0x62, 0x96, 0x60, 0xb0, 0xf6, 0xff,
+  0x05, 0x64, 0x12, 0x93, 0xc2, 0xc5, 0xe0, 0x02, 0x00,
+};
+#define BUF_SIZE 0x10000
+static voidpf zalloc_func(voidpf opaque, unsigned int items, unsigned int size)
+{
+  (void) opaque;
+  /* not a typo, keep it calloc() */
+  return (voidpf) calloc(items, size);
+}
+static void zfree_func(voidpf opaque, voidpf ptr)
+{
+  (void) opaque;
+  free(ptr);
+}
+/* Decompress and send to stdout a gzip-compressed buffer */
+void hugehelp(void)
+{
+  unsigned char* buf;
+  int status,headerlen;
+  z_stream z;
+
+  /* Make sure no gzip options are set */
+  if (hugehelpgz[3] & 0xfe)
+    return;
+
+  headerlen = 10;
+  memset(&z, 0, sizeof(z_stream));
+  z.zalloc = (alloc_func)zalloc_func;
+  z.zfree = (free_func)zfree_func;
+  z.avail_in = (unsigned int)(sizeof(hugehelpgz) - headerlen);
+  z.next_in = (unsigned char *)hugehelpgz + headerlen;
+
+  if (inflateInit2(&z, -MAX_WBITS) != Z_OK)
+    return;
+
+  buf = malloc(BUF_SIZE);
+  if (buf) {
+    while(1) {
+      z.avail_out = BUF_SIZE;
+      z.next_out = buf;
+      status = inflate(&z, Z_SYNC_FLUSH);
+      if (status == Z_OK || status == Z_STREAM_END) {
+        fwrite(buf, BUF_SIZE - z.avail_out, 1, stdout);
+        if (status == Z_STREAM_END)
+          break;
+      }
+      else
+        break;    /* Error */
+    }
+    free(buf);
+  }
+  inflateEnd(&z);
+}
+#else /* !USE_MANUAL */
+/* built-in manual is disabled, blank function */
+#include "tool_hugehelp.h"
+void hugehelp(void) {}
+#endif /* USE_MANUAL */
+#endif /* HAVE_LIBZ */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_hugehelp.h b/ap/lib/libcurl/curl-7.54.1/src/tool_hugehelp.h
new file mode 100644
index 0000000..16520b6
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_hugehelp.h
@@ -0,0 +1,28 @@
+#ifndef HEADER_CURL_TOOL_HUGEHELP_H
+#define HEADER_CURL_TOOL_HUGEHELP_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 "tool_setup.h"
+
+void hugehelp(void);
+
+#endif /* HEADER_CURL_TOOL_HUGEHELP_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_libinfo.c b/ap/lib/libcurl/curl-7.54.1/src/tool_libinfo.c
new file mode 100644
index 0000000..d2bf7fb
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_libinfo.c
@@ -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 "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_libinfo.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/* global variable definitions, for libcurl run-time info */
+
+curl_version_info_data *curlinfo = NULL;
+long built_in_protos = 0;
+
+/*
+ * libcurl_info_init: retrieves run-time information about libcurl,
+ * setting a global pointer 'curlinfo' to libcurl's run-time info
+ * struct, and a global bit pattern 'built_in_protos' composed of
+ * CURLPROTO_* bits indicating which protocols are actually built
+ * into library being used.
+ */
+
+CURLcode get_libcurl_info(void)
+{
+  static struct proto_name_pattern {
+    const char *proto_name;
+    long        proto_pattern;
+  } const possibly_built_in[] = {
+    { "dict",   CURLPROTO_DICT   },
+    { "file",   CURLPROTO_FILE   },
+    { "ftp",    CURLPROTO_FTP    },
+    { "ftps",   CURLPROTO_FTPS   },
+    { "gopher", CURLPROTO_GOPHER },
+    { "http",   CURLPROTO_HTTP   },
+    { "https",  CURLPROTO_HTTPS  },
+    { "imap",   CURLPROTO_IMAP   },
+    { "imaps",  CURLPROTO_IMAPS  },
+    { "ldap",   CURLPROTO_LDAP   },
+    { "ldaps",  CURLPROTO_LDAPS  },
+    { "pop3",   CURLPROTO_POP3   },
+    { "pop3s",  CURLPROTO_POP3S  },
+    { "rtmp",   CURLPROTO_RTMP   },
+    { "rtsp",   CURLPROTO_RTSP   },
+    { "scp",    CURLPROTO_SCP    },
+    { "sftp",   CURLPROTO_SFTP   },
+    { "smb",    CURLPROTO_SMB    },
+    { "smbs",   CURLPROTO_SMBS   },
+    { "smtp",   CURLPROTO_SMTP   },
+    { "smtps",  CURLPROTO_SMTPS  },
+    { "telnet", CURLPROTO_TELNET },
+    { "tftp",   CURLPROTO_TFTP   },
+    {  NULL,    0                }
+  };
+
+  struct proto_name_pattern const *p;
+  const char *const *proto;
+
+  /* Pointer to libcurl's run-time version information */
+  curlinfo = curl_version_info(CURLVERSION_NOW);
+  if(!curlinfo)
+    return CURLE_FAILED_INIT;
+
+  /* Build CURLPROTO_* bit pattern with libcurl's built-in protocols */
+  built_in_protos = 0;
+  if(curlinfo->protocols) {
+    for(proto = curlinfo->protocols; *proto; proto++) {
+      for(p = possibly_built_in; p->proto_name; p++) {
+        if(curl_strequal(*proto, p->proto_name)) {
+          built_in_protos |= p->proto_pattern;
+          break;
+        }
+      }
+    }
+  }
+
+  return CURLE_OK;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_libinfo.h b/ap/lib/libcurl/curl-7.54.1/src/tool_libinfo.h
new file mode 100644
index 0000000..298df80
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_libinfo.h
@@ -0,0 +1,34 @@
+#ifndef HEADER_CURL_TOOL_LIBINFO_H
+#define HEADER_CURL_TOOL_LIBINFO_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 "tool_setup.h"
+
+/* global variable declarations, for libcurl run-time info */
+
+extern curl_version_info_data *curlinfo;
+extern long built_in_protos;
+
+CURLcode get_libcurl_info(void);
+
+#endif /* HEADER_CURL_TOOL_LIBINFO_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_main.c b/ap/lib/libcurl/curl-7.54.1/src/tool_main.c
new file mode 100644
index 0000000..7e742ff
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_main.c
@@ -0,0 +1,275 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include <sys/stat.h>
+
+#ifdef HAVE_SIGNAL_H
+#include <signal.h>
+#endif
+
+#ifdef USE_NSS
+#include <nspr.h>
+#include <plarenas.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_convert.h"
+#include "tool_msgs.h"
+#include "tool_operate.h"
+#include "tool_panykey.h"
+#include "tool_vms.h"
+#include "tool_main.h"
+#include "tool_libinfo.h"
+
+/*
+ * This is low-level hard-hacking memory leak tracking and similar. Using
+ * the library level code from this client-side is ugly, but we do this
+ * anyway for convenience.
+ */
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef __VMS
+/*
+ * vms_show is a global variable, used in main() as parameter for
+ * function vms_special_exit() to allow proper curl tool exiting.
+ * Its value may be set in other tool_*.c source files thanks to
+ * forward declaration present in tool_vms.h
+ */
+int vms_show = 0;
+#endif
+
+/* if we build a static library for unit tests, there is no main() function */
+#ifndef UNITTESTS
+
+/*
+ * Ensure that file descriptors 0, 1 and 2 (stdin, stdout, stderr) are
+ * open before starting to run.  Otherwise, the first three network
+ * sockets opened by curl could be used for input sources, downloaded data
+ * or error logs as they will effectively be stdin, stdout and/or stderr.
+ */
+static void main_checkfds(void)
+{
+#ifdef HAVE_PIPE
+  int fd[2] = { STDIN_FILENO, STDIN_FILENO };
+  while(fd[0] == STDIN_FILENO ||
+        fd[0] == STDOUT_FILENO ||
+        fd[0] == STDERR_FILENO ||
+        fd[1] == STDIN_FILENO ||
+        fd[1] == STDOUT_FILENO ||
+        fd[1] == STDERR_FILENO)
+    if(pipe(fd) < 0)
+      return;   /* Out of handles. This isn't really a big problem now, but
+                   will be when we try to create a socket later. */
+  close(fd[0]);
+  close(fd[1]);
+#endif
+}
+
+#ifdef CURLDEBUG
+static void memory_tracking_init(void)
+{
+  char *env;
+  /* if CURL_MEMDEBUG is set, this starts memory tracking message logging */
+  env = curlx_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 = curlx_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
+
+/*
+ * This is the main global constructor for the app. Call this before
+ * _any_ libcurl usage. If this fails, *NO* libcurl functions may be
+ * used, or havoc may be the result.
+ */
+static CURLcode main_init(struct GlobalConfig *config)
+{
+  CURLcode result = CURLE_OK;
+
+#if defined(__DJGPP__) || defined(__GO32__)
+  /* stop stat() wasting time */
+  _djstat_flags |= _STAT_INODE | _STAT_EXEC_MAGIC | _STAT_DIRSIZE;
+#endif
+
+  /* Initialise the global config */
+  config->showerror = -1;             /* Will show errors */
+  config->errors = stderr;            /* Default errors to stderr */
+
+  /* Allocate the initial operate config */
+  config->first = config->last = malloc(sizeof(struct OperationConfig));
+  if(config->first) {
+    /* Perform the libcurl initialization */
+    result = curl_global_init(CURL_GLOBAL_DEFAULT);
+    if(!result) {
+      /* Get information about libcurl */
+      result = get_libcurl_info();
+
+      if(!result) {
+        /* Get a curl handle to use for all forthcoming curl transfers */
+        config->easy = curl_easy_init();
+        if(config->easy) {
+          /* Initialise the config */
+          config_init(config->first);
+          config->first->easy = config->easy;
+          config->first->global = config;
+        }
+        else {
+          helpf(stderr, "error initializing curl easy handle\n");
+          result = CURLE_FAILED_INIT;
+          free(config->first);
+        }
+      }
+      else {
+        helpf(stderr, "error retrieving curl library information\n");
+        free(config->first);
+      }
+    }
+    else {
+      helpf(stderr, "error initializing curl library\n");
+      free(config->first);
+    }
+  }
+  else {
+    helpf(stderr, "error initializing curl\n");
+    result = CURLE_FAILED_INIT;
+  }
+
+  return result;
+}
+
+static void free_config_fields(struct GlobalConfig *config)
+{
+  Curl_safefree(config->trace_dump);
+
+  if(config->errors_fopened && config->errors)
+    fclose(config->errors);
+  config->errors = NULL;
+
+  if(config->trace_fopened && config->trace_stream)
+    fclose(config->trace_stream);
+  config->trace_stream = NULL;
+
+  Curl_safefree(config->libcurl);
+}
+
+/*
+ * This is the main global destructor for the app. Call this after
+ * _all_ libcurl usage is done.
+ */
+static void main_free(struct GlobalConfig *config)
+{
+  /* Cleanup the easy handle */
+  curl_easy_cleanup(config->easy);
+  config->easy = NULL;
+
+  /* Main cleanup */
+  curl_global_cleanup();
+  convert_cleanup();
+  metalink_cleanup();
+#ifdef USE_NSS
+  if(PR_Initialized()) {
+    /* prevent valgrind from reporting still reachable mem from NSRP arenas */
+    PL_ArenaFinish();
+    /* prevent valgrind from reporting possibly lost memory (fd cache, ...) */
+    PR_Cleanup();
+  }
+#endif
+  free_config_fields(config);
+
+  /* Free the config structures */
+  config_free(config->last);
+  config->first = NULL;
+  config->last = NULL;
+}
+
+/*
+** curl tool main function.
+*/
+int main(int argc, char *argv[])
+{
+  CURLcode result = CURLE_OK;
+  struct GlobalConfig global;
+  memset(&global, 0, sizeof(global));
+
+  main_checkfds();
+
+#if defined(HAVE_SIGNAL) && defined(SIGPIPE)
+  (void)signal(SIGPIPE, SIG_IGN);
+#endif
+
+  /* Initialize memory tracking */
+  memory_tracking_init();
+
+  /* Initialize the curl library - do not call any libcurl functions before
+     this point */
+  result = main_init(&global);
+  if(!result) {
+    /* Start our curl operation */
+    result = operate(&global, argc, argv);
+
+#ifdef __SYMBIAN32__
+    if(global.showerror)
+      tool_pressanykey();
+#endif
+
+    /* Perform the main cleanup */
+    main_free(&global);
+  }
+
+#ifdef __NOVELL_LIBC__
+  if(getenv("_IN_NETWARE_BASH_") == NULL)
+    tool_pressanykey();
+#endif
+
+#ifdef __VMS
+  vms_special_exit(result, vms_show);
+#else
+  return (int)result;
+#endif
+}
+
+#endif /* ndef UNITTESTS */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_main.h b/ap/lib/libcurl/curl-7.54.1/src/tool_main.h
new file mode 100644
index 0000000..c97c360
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_main.h
@@ -0,0 +1,44 @@
+#ifndef HEADER_CURL_TOOL_MAIN_H
+#define HEADER_CURL_TOOL_MAIN_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 "tool_setup.h"
+
+#define DEFAULT_MAXREDIRS  50L
+
+#define RETRY_SLEEP_DEFAULT 1000L   /* ms */
+#define RETRY_SLEEP_MAX     600000L /* ms == 10 minutes */
+
+#ifndef STDIN_FILENO
+#  define STDIN_FILENO  fileno(stdin)
+#endif
+
+#ifndef STDOUT_FILENO
+#  define STDOUT_FILENO  fileno(stdout)
+#endif
+
+#ifndef STDERR_FILENO
+#  define STDERR_FILENO  fileno(stderr)
+#endif
+
+#endif /* HEADER_CURL_TOOL_MAIN_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_metalink.c b/ap/lib/libcurl/curl-7.54.1/src/tool_metalink.c
new file mode 100644
index 0000000..7646a7f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_metalink.c
@@ -0,0 +1,976 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef USE_METALINK
+
+#include <sys/stat.h>
+#include <stdlib.h>
+
+#ifdef HAVE_FCNTL_H
+#  include <fcntl.h>
+#endif
+
+#ifdef USE_OPENSSL
+#  include <openssl/md5.h>
+#  include <openssl/sha.h>
+#elif defined(USE_GNUTLS_NETTLE)
+#  include <nettle/md5.h>
+#  include <nettle/sha.h>
+#  define MD5_CTX    struct md5_ctx
+#  define SHA_CTX    struct sha1_ctx
+#  define SHA256_CTX struct sha256_ctx
+#elif defined(USE_GNUTLS)
+#  include <gcrypt.h>
+#  define MD5_CTX    gcry_md_hd_t
+#  define SHA_CTX    gcry_md_hd_t
+#  define SHA256_CTX gcry_md_hd_t
+#elif defined(USE_NSS)
+#  include <nss.h>
+#  include <pk11pub.h>
+#  define MD5_CTX    void *
+#  define SHA_CTX    void *
+#  define SHA256_CTX void *
+   static NSSInitContext *nss_context;
+#elif defined(USE_POLARSSL)
+#  include <polarssl/md5.h>
+#  include <polarssl/sha1.h>
+#  include <polarssl/sha256.h>
+#  define MD5_CTX    md5_context
+#  define SHA_CTX    sha1_context
+#  define SHA256_CTX sha256_context
+#elif (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \
+              (__MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)) || \
+      (defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && \
+              (__IPHONE_OS_VERSION_MAX_ALLOWED >= 20000))
+/* For Apple operating systems: CommonCrypto has the functions we need.
+   The library's headers are even backward-compatible with OpenSSL's
+   headers as long as we define COMMON_DIGEST_FOR_OPENSSL first.
+
+   These functions are available on Tiger and later, as well as iOS 2.0
+   and later. If you're building for an older cat, well, sorry. */
+#  define COMMON_DIGEST_FOR_OPENSSL
+#  include <CommonCrypto/CommonDigest.h>
+#elif defined(_WIN32)
+/* For Windows: If no other crypto library is provided, we fallback
+   to the hash functions provided within the Microsoft Windows CryptoAPI */
+#  include <wincrypt.h>
+/* Custom structure in order to store the required provider and hash handle */
+struct win32_crypto_hash {
+  HCRYPTPROV hCryptProv;
+  HCRYPTHASH hHash;
+};
+/* Custom Microsoft AES Cryptographic Provider defines required for MinGW */
+#  ifndef ALG_SID_SHA_256
+#    define ALG_SID_SHA_256  12
+#  endif
+#  ifndef CALG_SHA_256
+#    define CALG_SHA_256 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA_256)
+#  endif
+#  define MD5_CTX    struct win32_crypto_hash
+#  define SHA_CTX    struct win32_crypto_hash
+#  define SHA256_CTX struct win32_crypto_hash
+#else
+#  error "Can't compile METALINK support without a crypto library."
+#endif
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_getparam.h"
+#include "tool_paramhlp.h"
+#include "tool_cfgable.h"
+#include "tool_metalink.h"
+#include "tool_msgs.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/* Copied from tool_getparam.c */
+#define GetStr(str,val) do { \
+  if(*(str)) { \
+    free(*(str)); \
+    *(str) = NULL; \
+  } \
+  if((val)) \
+    *(str) = strdup((val)); \
+  if(!(val)) \
+    return PARAM_NO_MEM; \
+} WHILE_FALSE
+
+#ifdef USE_GNUTLS_NETTLE
+
+static int MD5_Init(MD5_CTX *ctx)
+{
+  md5_init(ctx);
+  return 1;
+}
+
+static void MD5_Update(MD5_CTX *ctx,
+                       const unsigned char *input,
+                       unsigned int inputLen)
+{
+  md5_update(ctx, inputLen, input);
+}
+
+static void MD5_Final(unsigned char digest[16], MD5_CTX *ctx)
+{
+  md5_digest(ctx, 16, digest);
+}
+
+static int SHA1_Init(SHA_CTX *ctx)
+{
+  sha1_init(ctx);
+  return 1;
+}
+
+static void SHA1_Update(SHA_CTX *ctx,
+                        const unsigned char *input,
+                        unsigned int inputLen)
+{
+  sha1_update(ctx, inputLen, input);
+}
+
+static void SHA1_Final(unsigned char digest[20], SHA_CTX *ctx)
+{
+  sha1_digest(ctx, 20, digest);
+}
+
+static int SHA256_Init(SHA256_CTX *ctx)
+{
+  sha256_init(ctx);
+  return 1;
+}
+
+static void SHA256_Update(SHA256_CTX *ctx,
+                          const unsigned char *input,
+                          unsigned int inputLen)
+{
+  sha256_update(ctx, inputLen, input);
+}
+
+static void SHA256_Final(unsigned char digest[32], SHA256_CTX *ctx)
+{
+  sha256_digest(ctx, 32, digest);
+}
+
+#elif defined(USE_GNUTLS)
+
+static int MD5_Init(MD5_CTX *ctx)
+{
+  gcry_md_open(ctx, GCRY_MD_MD5, 0);
+  return 1;
+}
+
+static void MD5_Update(MD5_CTX *ctx,
+                       const unsigned char *input,
+                       unsigned int inputLen)
+{
+  gcry_md_write(*ctx, input, inputLen);
+}
+
+static void MD5_Final(unsigned char digest[16], MD5_CTX *ctx)
+{
+  memcpy(digest, gcry_md_read(*ctx, 0), 16);
+  gcry_md_close(*ctx);
+}
+
+static int SHA1_Init(SHA_CTX *ctx)
+{
+  gcry_md_open(ctx, GCRY_MD_SHA1, 0);
+  return 1;
+}
+
+static void SHA1_Update(SHA_CTX *ctx,
+                        const unsigned char *input,
+                        unsigned int inputLen)
+{
+  gcry_md_write(*ctx, input, inputLen);
+}
+
+static void SHA1_Final(unsigned char digest[20], SHA_CTX *ctx)
+{
+  memcpy(digest, gcry_md_read(*ctx, 0), 20);
+  gcry_md_close(*ctx);
+}
+
+static int SHA256_Init(SHA256_CTX *ctx)
+{
+  gcry_md_open(ctx, GCRY_MD_SHA256, 0);
+  return 1;
+}
+
+static void SHA256_Update(SHA256_CTX *ctx,
+                          const unsigned char *input,
+                          unsigned int inputLen)
+{
+  gcry_md_write(*ctx, input, inputLen);
+}
+
+static void SHA256_Final(unsigned char digest[32], SHA256_CTX *ctx)
+{
+  memcpy(digest, gcry_md_read(*ctx, 0), 32);
+  gcry_md_close(*ctx);
+}
+
+#elif defined(USE_NSS)
+
+static int nss_hash_init(void **pctx, SECOidTag hash_alg)
+{
+  PK11Context *ctx;
+
+  /* we have to initialize NSS if not initialized alraedy */
+  if(!NSS_IsInitialized() && !nss_context) {
+    static NSSInitParameters params;
+    params.length = sizeof params;
+    nss_context = NSS_InitContext("", "", "", "", &params, NSS_INIT_READONLY
+        | NSS_INIT_NOCERTDB   | NSS_INIT_NOMODDB       | NSS_INIT_FORCEOPEN
+        | NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE | NSS_INIT_PK11RELOAD);
+  }
+
+  ctx = PK11_CreateDigestContext(hash_alg);
+  if(!ctx)
+    return /* failure */ 0;
+
+  if(PK11_DigestBegin(ctx) != SECSuccess) {
+    PK11_DestroyContext(ctx, PR_TRUE);
+    return /* failure */ 0;
+  }
+
+  *pctx = ctx;
+  return /* success */ 1;
+}
+
+static void nss_hash_final(void **pctx, unsigned char *out, unsigned int len)
+{
+  PK11Context *ctx = *pctx;
+  unsigned int outlen;
+  PK11_DigestFinal(ctx, out, &outlen, len);
+  PK11_DestroyContext(ctx, PR_TRUE);
+}
+
+static int MD5_Init(MD5_CTX *pctx)
+{
+  return nss_hash_init(pctx, SEC_OID_MD5);
+}
+
+static void MD5_Update(MD5_CTX *pctx,
+                       const unsigned char *input,
+                       unsigned int input_len)
+{
+  PK11_DigestOp(*pctx, input, input_len);
+}
+
+static void MD5_Final(unsigned char digest[16], MD5_CTX *pctx)
+{
+  nss_hash_final(pctx, digest, 16);
+}
+
+static int SHA1_Init(SHA_CTX *pctx)
+{
+  return nss_hash_init(pctx, SEC_OID_SHA1);
+}
+
+static void SHA1_Update(SHA_CTX *pctx,
+                        const unsigned char *input,
+                        unsigned int input_len)
+{
+  PK11_DigestOp(*pctx, input, input_len);
+}
+
+static void SHA1_Final(unsigned char digest[20], SHA_CTX *pctx)
+{
+  nss_hash_final(pctx, digest, 20);
+}
+
+static int SHA256_Init(SHA256_CTX *pctx)
+{
+  return nss_hash_init(pctx, SEC_OID_SHA256);
+}
+
+static void SHA256_Update(SHA256_CTX *pctx,
+                          const unsigned char *input,
+                          unsigned int input_len)
+{
+  PK11_DigestOp(*pctx, input, input_len);
+}
+
+static void SHA256_Final(unsigned char digest[32], SHA256_CTX *pctx)
+{
+  nss_hash_final(pctx, digest, 32);
+}
+
+#elif defined(USE_POLARSSL)
+
+static int MD5_Init(MD5_CTX *ctx)
+{
+  md5_starts(ctx);
+  return 1;
+}
+
+static void MD5_Update(MD5_CTX *ctx,
+                       const unsigned char *input,
+                       unsigned int inputLen)
+{
+  md5_update(ctx, input, inputLen);
+}
+
+static void MD5_Final(unsigned char digest[16], MD5_CTX *ctx)
+{
+  md5_finish(ctx, digest);
+}
+
+static int SHA1_Init(SHA_CTX *ctx)
+{
+  sha1_starts(ctx);
+  return 1;
+}
+
+static void SHA1_Update(SHA_CTX *ctx,
+                        const unsigned char *input,
+                        unsigned int inputLen)
+{
+  sha1_update(ctx, input, inputLen);
+}
+
+static void SHA1_Final(unsigned char digest[20], SHA_CTX *ctx)
+{
+  sha1_finish(ctx, digest);
+}
+
+static int SHA256_Init(SHA256_CTX *ctx)
+{
+  sha256_starts(ctx, 0); /* 0 = sha256 */
+  return 1;
+}
+
+static void SHA256_Update(SHA256_CTX *ctx,
+                          const unsigned char *input,
+                          unsigned int inputLen)
+{
+  sha256_update(ctx, input, inputLen);
+}
+
+static void SHA256_Final(unsigned char digest[32], SHA256_CTX *ctx)
+{
+  sha256_finish(ctx, digest);
+}
+
+#elif defined(_WIN32) && !defined(USE_OPENSSL)
+
+static void win32_crypto_final(struct win32_crypto_hash *ctx,
+                               unsigned char *digest,
+                               unsigned int digestLen)
+{
+  unsigned long length;
+  CryptGetHashParam(ctx->hHash, HP_HASHVAL, NULL, &length, 0);
+  if(length == digestLen)
+    CryptGetHashParam(ctx->hHash, HP_HASHVAL, digest, &length, 0);
+  if(ctx->hHash)
+    CryptDestroyHash(ctx->hHash);
+  if(ctx->hCryptProv)
+    CryptReleaseContext(ctx->hCryptProv, 0);
+}
+
+static int MD5_Init(MD5_CTX *ctx)
+{
+  if(CryptAcquireContext(&ctx->hCryptProv, NULL, NULL,
+                         PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) {
+    CryptCreateHash(ctx->hCryptProv, CALG_MD5, 0, 0, &ctx->hHash);
+  }
+  return 1;
+}
+
+static void MD5_Update(MD5_CTX *ctx,
+                       const unsigned char *input,
+                       unsigned int inputLen)
+{
+  CryptHashData(ctx->hHash, (unsigned char *)input, inputLen, 0);
+}
+
+static void MD5_Final(unsigned char digest[16], MD5_CTX *ctx)
+{
+  win32_crypto_final(ctx, digest, 16);
+}
+
+static int SHA1_Init(SHA_CTX *ctx)
+{
+  if(CryptAcquireContext(&ctx->hCryptProv, NULL, NULL,
+                         PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) {
+    CryptCreateHash(ctx->hCryptProv, CALG_SHA1, 0, 0, &ctx->hHash);
+  }
+  return 1;
+}
+
+static void SHA1_Update(SHA_CTX *ctx,
+                        const unsigned char *input,
+                        unsigned int inputLen)
+{
+  CryptHashData(ctx->hHash, (unsigned char *)input, inputLen, 0);
+}
+
+static void SHA1_Final(unsigned char digest[20], SHA_CTX *ctx)
+{
+  win32_crypto_final(ctx, digest, 20);
+}
+
+static int SHA256_Init(SHA256_CTX *ctx)
+{
+  if(CryptAcquireContext(&ctx->hCryptProv, NULL, NULL,
+                         PROV_RSA_AES, CRYPT_VERIFYCONTEXT)) {
+    CryptCreateHash(ctx->hCryptProv, CALG_SHA_256, 0, 0, &ctx->hHash);
+  }
+  return 1;
+}
+
+static void SHA256_Update(SHA256_CTX *ctx,
+                          const unsigned char *input,
+                          unsigned int inputLen)
+{
+  CryptHashData(ctx->hHash, (unsigned char *)input, inputLen, 0);
+}
+
+static void SHA256_Final(unsigned char digest[32], SHA256_CTX *ctx)
+{
+  win32_crypto_final(ctx, digest, 32);
+}
+
+#endif /* CRYPTO LIBS */
+
+const digest_params MD5_DIGEST_PARAMS[] = {
+  {
+    (Curl_digest_init_func) MD5_Init,
+    (Curl_digest_update_func) MD5_Update,
+    (Curl_digest_final_func) MD5_Final,
+    sizeof(MD5_CTX),
+    16
+  }
+};
+
+const digest_params SHA1_DIGEST_PARAMS[] = {
+  {
+    (Curl_digest_init_func) SHA1_Init,
+    (Curl_digest_update_func) SHA1_Update,
+    (Curl_digest_final_func) SHA1_Final,
+    sizeof(SHA_CTX),
+    20
+  }
+};
+
+const digest_params SHA256_DIGEST_PARAMS[] = {
+  {
+    (Curl_digest_init_func) SHA256_Init,
+    (Curl_digest_update_func) SHA256_Update,
+    (Curl_digest_final_func) SHA256_Final,
+    sizeof(SHA256_CTX),
+    32
+  }
+};
+
+static const metalink_digest_def SHA256_DIGEST_DEF[] = {
+  {"sha-256", SHA256_DIGEST_PARAMS}
+};
+
+static const metalink_digest_def SHA1_DIGEST_DEF[] = {
+  {"sha-1", SHA1_DIGEST_PARAMS}
+};
+
+static const metalink_digest_def MD5_DIGEST_DEF[] = {
+  {"md5", MD5_DIGEST_PARAMS}
+};
+
+/*
+ * The alias of supported hash functions in the order by preference
+ * (basically stronger hash comes first). We included "sha-256" and
+ * "sha256". The former is the name defined in the IANA registry named
+ * "Hash Function Textual Names". The latter is widely (and
+ * historically) used in Metalink version 3.
+ */
+static const metalink_digest_alias digest_aliases[] = {
+  {"sha-256", SHA256_DIGEST_DEF},
+  {"sha256", SHA256_DIGEST_DEF},
+  {"sha-1", SHA1_DIGEST_DEF},
+  {"sha1", SHA1_DIGEST_DEF},
+  {"md5", MD5_DIGEST_DEF},
+  {NULL, NULL}
+};
+
+digest_context *Curl_digest_init(const digest_params *dparams)
+{
+  digest_context *ctxt;
+
+  /* Create digest context */
+  ctxt = malloc(sizeof *ctxt);
+
+  if(!ctxt)
+    return ctxt;
+
+  ctxt->digest_hashctx = malloc(dparams->digest_ctxtsize);
+
+  if(!ctxt->digest_hashctx) {
+    free(ctxt);
+    return NULL;
+  }
+
+  ctxt->digest_hash = dparams;
+
+  if(dparams->digest_init(ctxt->digest_hashctx) != 1) {
+    free(ctxt);
+    return NULL;
+  }
+
+  return ctxt;
+}
+
+int Curl_digest_update(digest_context *context,
+                       const unsigned char *data,
+                       unsigned int len)
+{
+  (*context->digest_hash->digest_update)(context->digest_hashctx, data, len);
+
+  return 0;
+}
+
+int Curl_digest_final(digest_context *context, unsigned char *result)
+{
+  (*context->digest_hash->digest_final)(result, context->digest_hashctx);
+
+  free(context->digest_hashctx);
+  free(context);
+
+  return 0;
+}
+
+static unsigned char hex_to_uint(const char *s)
+{
+  char buf[3];
+  unsigned long val;
+  buf[0] = s[0];
+  buf[1] = s[1];
+  buf[2] = 0;
+  val = strtoul(buf, NULL, 16);
+  return (unsigned char)(val&0xff);
+}
+
+/*
+ * Check checksum of file denoted by filename. The expected hash value
+ * is given in hex_hash which is hex-encoded string.
+ *
+ * This function returns 1 if it succeeds or one of the following
+ * integers:
+ *
+ * 0:
+ *   Checksum didn't match.
+ * -1:
+ *   Could not open file; or could not read data from file.
+ * -2:
+ *   Hash algorithm not available.
+ */
+static int check_hash(const char *filename,
+                      const metalink_digest_def *digest_def,
+                      const unsigned char *digest, FILE *error)
+{
+  unsigned char *result;
+  digest_context *dctx;
+  int check_ok, flags, fd;
+
+  flags = O_RDONLY;
+#ifdef O_BINARY
+  /* O_BINARY is required in order to avoid binary EOF in text mode */
+  flags |= O_BINARY;
+#endif
+
+  fd = open(filename, flags);
+  if(fd == -1) {
+    fprintf(error, "Metalink: validating (%s) [%s] FAILED (%s)\n", filename,
+            digest_def->hash_name, strerror(errno));
+    return -1;
+  }
+
+  dctx = Curl_digest_init(digest_def->dparams);
+  if(!dctx) {
+    fprintf(error, "Metalink: validating (%s) [%s] FAILED (%s)\n", filename,
+            digest_def->hash_name, "failed to initialize hash algorithm");
+    close(fd);
+    return -2;
+  }
+
+  result = malloc(digest_def->dparams->digest_resultlen);
+  if(!result) {
+    close(fd);
+    return -1;
+  }
+  while(1) {
+    unsigned char buf[4096];
+    ssize_t len = read(fd, buf, sizeof(buf));
+    if(len == 0) {
+      break;
+    }
+    else if(len == -1) {
+      fprintf(error, "Metalink: validating (%s) [%s] FAILED (%s)\n", filename,
+              digest_def->hash_name, strerror(errno));
+      Curl_digest_final(dctx, result);
+      close(fd);
+      return -1;
+    }
+    Curl_digest_update(dctx, buf, (unsigned int)len);
+  }
+  Curl_digest_final(dctx, result);
+  check_ok = memcmp(result, digest,
+                    digest_def->dparams->digest_resultlen) == 0;
+  /* sha*sum style verdict output */
+  if(check_ok)
+    fprintf(error, "Metalink: validating (%s) [%s] OK\n", filename,
+            digest_def->hash_name);
+  else
+    fprintf(error, "Metalink: validating (%s) [%s] FAILED (digest mismatch)\n",
+            filename, digest_def->hash_name);
+
+  free(result);
+  close(fd);
+  return check_ok;
+}
+
+int metalink_check_hash(struct GlobalConfig *config,
+                        metalinkfile *mlfile,
+                        const char *filename)
+{
+  int rv;
+  fprintf(config->errors, "Metalink: validating (%s)...\n", filename);
+  if(mlfile->checksum == NULL) {
+    fprintf(config->errors,
+            "Metalink: validating (%s) FAILED (digest missing)\n", filename);
+    return -2;
+  }
+  rv = check_hash(filename, mlfile->checksum->digest_def,
+                  mlfile->checksum->digest, config->errors);
+  return rv;
+}
+
+static metalink_checksum *new_metalink_checksum_from_hex_digest
+(const metalink_digest_def *digest_def, const char *hex_digest)
+{
+  metalink_checksum *chksum;
+  unsigned char *digest;
+  size_t i;
+  size_t len = strlen(hex_digest);
+  digest = malloc(len/2);
+  if(!digest)
+    return 0;
+
+  for(i = 0; i < len; i += 2) {
+    digest[i/2] = hex_to_uint(hex_digest+i);
+  }
+  chksum = malloc(sizeof(metalink_checksum));
+  if(chksum) {
+    chksum->digest_def = digest_def;
+    chksum->digest = digest;
+  }
+  return chksum;
+}
+
+static metalink_resource *new_metalink_resource(const char *url)
+{
+  metalink_resource *res;
+  res = malloc(sizeof(metalink_resource));
+  if(res) {
+    res->next = NULL;
+    res->url = strdup(url);
+    if(!res->url) {
+      free(res);
+      return NULL;
+    }
+  }
+  return res;
+}
+
+/* Returns nonzero if hex_digest is properly formatted; that is each
+   letter is in [0-9A-Za-z] and the length of the string equals to the
+   result length of digest * 2. */
+static int check_hex_digest(const char *hex_digest,
+                            const metalink_digest_def *digest_def)
+{
+  size_t i;
+  for(i = 0; hex_digest[i]; ++i) {
+    char c = hex_digest[i];
+    if(!(('0' <= c && c <= '9') || ('a' <= c && c <= 'z') ||
+         ('A' <= c && c <= 'Z'))) {
+      return 0;
+    }
+  }
+  return digest_def->dparams->digest_resultlen * 2 == i;
+}
+
+static metalinkfile *new_metalinkfile(metalink_file_t *fileinfo)
+{
+  metalinkfile *f;
+  f = (metalinkfile*)malloc(sizeof(metalinkfile));
+  if(!f)
+    return NULL;
+
+  f->next = NULL;
+  f->filename = strdup(fileinfo->name);
+  if(!f->filename) {
+    free(f);
+    return NULL;
+  }
+  f->checksum = NULL;
+  f->resource = NULL;
+  if(fileinfo->checksums) {
+    const metalink_digest_alias *digest_alias;
+    for(digest_alias = digest_aliases; digest_alias->alias_name;
+        ++digest_alias) {
+      metalink_checksum_t **p;
+      for(p = fileinfo->checksums; *p; ++p) {
+        if(curl_strequal(digest_alias->alias_name, (*p)->type) &&
+           check_hex_digest((*p)->hash, digest_alias->digest_def)) {
+          f->checksum =
+            new_metalink_checksum_from_hex_digest(digest_alias->digest_def,
+                                                  (*p)->hash);
+          break;
+        }
+      }
+      if(f->checksum) {
+        break;
+      }
+    }
+  }
+  if(fileinfo->resources) {
+    metalink_resource_t **p;
+    metalink_resource root, *tail;
+    root.next = NULL;
+    tail = &root;
+    for(p = fileinfo->resources; *p; ++p) {
+      metalink_resource *res;
+      /* Filter by type if it is non-NULL. In Metalink v3, type
+         includes the type of the resource. In curl, we are only
+         interested in HTTP, HTTPS and FTP. In addition to them,
+         Metalink v3 file may contain bittorrent type URL, which
+         points to the BitTorrent metainfo file. We ignore it here.
+         In Metalink v4, type was deprecated and all
+         fileinfo->resources point to the target file. BitTorrent
+         metainfo file URL may be appeared in fileinfo->metaurls.
+      */
+      if((*p)->type == NULL ||
+         curl_strequal((*p)->type, "http") ||
+         curl_strequal((*p)->type, "https") ||
+         curl_strequal((*p)->type, "ftp") ||
+         curl_strequal((*p)->type, "ftps")) {
+        res = new_metalink_resource((*p)->url);
+        tail->next = res;
+        tail = res;
+      }
+    }
+    f->resource = root.next;
+  }
+  return f;
+}
+
+int parse_metalink(struct OperationConfig *config, struct OutStruct *outs,
+                   const char *metalink_url)
+{
+  metalink_error_t r;
+  metalink_t* metalink;
+  metalink_file_t **files;
+  bool warnings = FALSE;
+
+  /* metlaink_parse_final deletes outs->metalink_parser */
+  r = metalink_parse_final(outs->metalink_parser, NULL, 0, &metalink);
+  outs->metalink_parser = NULL;
+  if(r != 0) {
+    return -1;
+  }
+  if(metalink->files == NULL) {
+    fprintf(config->global->errors, "Metalink: parsing (%s) WARNING "
+            "(missing or invalid file name)\n",
+            metalink_url);
+    metalink_delete(metalink);
+    return -1;
+  }
+  for(files = metalink->files; *files; ++files) {
+    struct getout *url;
+    /* Skip an entry which has no resource. */
+    if(!(*files)->resources) {
+      fprintf(config->global->errors, "Metalink: parsing (%s) WARNING "
+              "(missing or invalid resource)\n",
+              metalink_url);
+      continue;
+    }
+    if(config->url_get ||
+       ((config->url_get = config->url_list) != NULL)) {
+      /* there's a node here, if it already is filled-in continue to
+         find an "empty" node */
+      while(config->url_get && (config->url_get->flags & GETOUT_URL))
+        config->url_get = config->url_get->next;
+    }
+
+    /* now there might or might not be an available node to fill in! */
+
+    if(config->url_get)
+      /* existing node */
+      url = config->url_get;
+    else
+      /* there was no free node, create one! */
+      url = new_getout(config);
+
+    if(url) {
+      metalinkfile *mlfile = new_metalinkfile(*files);
+      if(!mlfile)
+        break;
+
+      if(!mlfile->checksum) {
+        warnings = TRUE;
+        fprintf(config->global->errors,
+                "Metalink: parsing (%s) WARNING (digest missing)\n",
+                metalink_url);
+      }
+      /* Set name as url */
+      GetStr(&url->url, mlfile->filename);
+
+      /* set flag metalink here */
+      url->flags |= GETOUT_URL | GETOUT_METALINK;
+
+      if(config->metalinkfile_list) {
+        config->metalinkfile_last->next = mlfile;
+        config->metalinkfile_last = mlfile;
+      }
+      else {
+        config->metalinkfile_list = config->metalinkfile_last = mlfile;
+      }
+    }
+  }
+  metalink_delete(metalink);
+  return (warnings) ? -2 : 0;
+}
+
+size_t metalink_write_cb(void *buffer, size_t sz, size_t nmemb,
+                         void *userdata)
+{
+  struct OutStruct *outs = userdata;
+  struct OperationConfig *config = outs->config;
+  int rv;
+
+  /*
+   * Once that libcurl has called back tool_write_cb() the returned value
+   * is checked against the amount that was intended to be written, if
+   * it does not match then it fails with CURLE_WRITE_ERROR. So at this
+   * point returning a value different from sz*nmemb indicates failure.
+   */
+  const size_t failure = (sz * nmemb) ? 0 : 1;
+
+  if(!config)
+    return failure;
+
+  rv = metalink_parse_update(outs->metalink_parser, buffer, sz *nmemb);
+  if(rv == 0)
+    return sz * nmemb;
+  else {
+    fprintf(config->global->errors, "Metalink: parsing FAILED\n");
+    return failure;
+  }
+}
+
+/*
+ * Returns nonzero if content_type includes mediatype.
+ */
+static int check_content_type(const char *content_type, const char *media_type)
+{
+  const char *ptr = content_type;
+  size_t media_type_len = strlen(media_type);
+  for(; *ptr && (*ptr == ' ' || *ptr == '\t'); ++ptr);
+  if(!*ptr) {
+    return 0;
+  }
+  return curl_strnequal(ptr, media_type, media_type_len) &&
+    (*(ptr+media_type_len) == '\0' || *(ptr+media_type_len) == ' ' ||
+     *(ptr+media_type_len) == '\t' || *(ptr+media_type_len) == ';');
+}
+
+int check_metalink_content_type(const char *content_type)
+{
+  return check_content_type(content_type, "application/metalink+xml");
+}
+
+int count_next_metalink_resource(metalinkfile *mlfile)
+{
+  int count = 0;
+  metalink_resource *res;
+  for(res = mlfile->resource; res; res = res->next, ++count);
+  return count;
+}
+
+static void delete_metalink_checksum(metalink_checksum *chksum)
+{
+  if(chksum == NULL) {
+    return;
+  }
+  Curl_safefree(chksum->digest);
+  Curl_safefree(chksum);
+}
+
+static void delete_metalink_resource(metalink_resource *res)
+{
+  if(res == NULL) {
+    return;
+  }
+  Curl_safefree(res->url);
+  Curl_safefree(res);
+}
+
+static void delete_metalinkfile(metalinkfile *mlfile)
+{
+  metalink_resource *res;
+  if(mlfile == NULL) {
+    return;
+  }
+  Curl_safefree(mlfile->filename);
+  delete_metalink_checksum(mlfile->checksum);
+  for(res = mlfile->resource; res;) {
+    metalink_resource *next;
+    next = res->next;
+    delete_metalink_resource(res);
+    res = next;
+  }
+  Curl_safefree(mlfile);
+}
+
+void clean_metalink(struct OperationConfig *config)
+{
+  while(config->metalinkfile_list) {
+    metalinkfile *mlfile = config->metalinkfile_list;
+    config->metalinkfile_list = config->metalinkfile_list->next;
+    delete_metalinkfile(mlfile);
+  }
+  config->metalinkfile_last = 0;
+}
+
+void metalink_cleanup(void)
+{
+#ifdef USE_NSS
+  if(nss_context) {
+    NSS_ShutdownContext(nss_context);
+    nss_context = NULL;
+  }
+#endif
+}
+
+#endif /* USE_METALINK */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_metalink.h b/ap/lib/libcurl/curl-7.54.1/src/tool_metalink.h
new file mode 100644
index 0000000..7ee2736
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_metalink.h
@@ -0,0 +1,167 @@
+#ifndef HEADER_CURL_TOOL_METALINK_H
+#define HEADER_CURL_TOOL_METALINK_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 "tool_setup.h"
+
+struct GlobalConfig;
+struct OperationConfig;
+
+/* returns 1 for success, 0 otherwise (we use OpenSSL *_Init fncs directly) */
+typedef int (* Curl_digest_init_func)(void *context);
+
+typedef void (* Curl_digest_update_func)(void *context,
+                                         const unsigned char *data,
+                                         unsigned int len);
+typedef void (* Curl_digest_final_func)(unsigned char *result, void *context);
+
+typedef struct {
+  Curl_digest_init_func     digest_init;   /* Initialize context procedure */
+  Curl_digest_update_func   digest_update; /* Update context with data */
+  Curl_digest_final_func    digest_final;  /* Get final result procedure */
+  unsigned int           digest_ctxtsize;  /* Context structure size */
+  unsigned int           digest_resultlen; /* Result length (bytes) */
+} digest_params;
+
+typedef struct {
+  const digest_params   *digest_hash;      /* Hash function definition */
+  void                  *digest_hashctx;   /* Hash function context */
+} digest_context;
+
+digest_context * Curl_digest_init(const digest_params *dparams);
+int Curl_digest_update(digest_context *context,
+                       const unsigned char *data,
+                       unsigned int len);
+int Curl_digest_final(digest_context *context, unsigned char *result);
+
+typedef struct {
+  const char *hash_name;
+  const digest_params *dparams;
+} metalink_digest_def;
+
+typedef struct {
+  const char *alias_name;
+  const metalink_digest_def *digest_def;
+} metalink_digest_alias;
+
+typedef struct metalink_checksum {
+  const metalink_digest_def *digest_def;
+  /* raw digest value, not ascii hex digest */
+  unsigned char *digest;
+} metalink_checksum;
+
+typedef struct metalink_resource {
+  struct metalink_resource *next;
+  char *url;
+} metalink_resource;
+
+typedef struct metalinkfile {
+  struct metalinkfile *next;
+  char *filename;
+  metalink_checksum *checksum;
+  metalink_resource *resource;
+} metalinkfile;
+
+#ifdef USE_METALINK
+
+/*
+ * curl requires libmetalink 0.1.0 or newer
+ */
+#define CURL_REQ_LIBMETALINK_MAJOR  0
+#define CURL_REQ_LIBMETALINK_MINOR  1
+#define CURL_REQ_LIBMETALINK_PATCH  0
+
+#define CURL_REQ_LIBMETALINK_VERS  ((CURL_REQ_LIBMETALINK_MAJOR * 10000) + \
+                                    (CURL_REQ_LIBMETALINK_MINOR * 100) + \
+                                     CURL_REQ_LIBMETALINK_PATCH)
+
+extern const digest_params MD5_DIGEST_PARAMS[1];
+extern const digest_params SHA1_DIGEST_PARAMS[1];
+extern const digest_params SHA256_DIGEST_PARAMS[1];
+
+#include <metalink/metalink.h>
+
+/*
+ * Counts the resource in the metalinkfile.
+ */
+int count_next_metalink_resource(metalinkfile *mlfile);
+void clean_metalink(struct OperationConfig *config);
+
+/*
+ * Performs final parse operation and extracts information from
+ * Metalink and creates metalinkfile structs.
+ *
+ * This function returns 0 if it succeeds without warnings, or one of
+ * the following negative error codes:
+ *
+ * -1: Parsing failed; or no file is found
+ * -2: Parsing succeeded with some warnings.
+ */
+int parse_metalink(struct OperationConfig *config, struct OutStruct *outs,
+                   const char *metalink_url);
+
+/*
+ * Callback function for CURLOPT_WRITEFUNCTION
+ */
+size_t metalink_write_cb(void *buffer, size_t sz, size_t nmemb,
+                         void *userdata);
+
+/*
+ * Returns nonzero if content_type includes "application/metalink+xml"
+ * media-type. The check is done in case-insensitive manner.
+ */
+int check_metalink_content_type(const char *content_type);
+
+/*
+ * Check checksum of file denoted by filename.
+ *
+ * This function returns 1 if the checksum matches or one of the
+ * following integers:
+ *
+ * 0:
+ *   Checksum didn't match.
+ * -1:
+ *   Could not open file; or could not read data from file.
+ * -2:
+ *   No checksum in Metalink supported, hash algorithm not available, or
+ *   Metalink does not contain checksum.
+ */
+int metalink_check_hash(struct GlobalConfig *config,
+                        metalinkfile *mlfile,
+                        const char *filename);
+
+/*
+ * Release resources allocated at global scope.
+ */
+void metalink_cleanup(void);
+
+#else /* USE_METALINK */
+
+#define count_next_metalink_resource(x)  0
+#define clean_metalink(x)  (void)x
+
+/* metalink_cleanup() takes no arguments */
+#define metalink_cleanup() Curl_nop_stmt
+
+#endif /* USE_METALINK */
+
+#endif /* HEADER_CURL_TOOL_METALINK_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_mfiles.c b/ap/lib/libcurl/curl-7.54.1/src/tool_mfiles.c
new file mode 100644
index 0000000..d862d41
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_mfiles.c
@@ -0,0 +1,127 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "tool_mfiles.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+static void AppendNode(struct multi_files **first,
+                       struct multi_files **last,
+                       struct multi_files  *new)
+{
+  DEBUGASSERT(((*first) && (*last)) || ((!*first) && (!*last)));
+
+  if(*last)
+    (*last)->next = new;
+  else
+    *first = new;
+  *last = new;
+}
+
+/*
+ * AddMultiFiles: Add a new list node possibly followed with a type_name.
+ *
+ * multi_first argument is the address of a pointer to the first element
+ * of the multi_files linked list. A NULL pointer indicates empty list.
+ *
+ * multi_last argument is the address of a pointer to the last element
+ * of the multi_files linked list. A NULL pointer indicates empty list.
+ *
+ * Pointers stored in multi_first and multi_last are modified while
+ * function is executed. An out of memory condition free's the whole
+ * list and returns with pointers stored in multi_first and multi_last
+ * set to NULL and a NULL function result.
+ *
+ * Function returns same pointer as stored at multi_last.
+ */
+
+struct multi_files *AddMultiFiles(const char *file_name,
+                                  const char *type_name,
+                                  const char *show_filename,
+                                  struct multi_files **multi_first,
+                                  struct multi_files **multi_last)
+{
+  struct multi_files *multi;
+  struct multi_files *multi_type;
+  struct multi_files *multi_name;
+
+  multi = calloc(1, sizeof(struct multi_files));
+  if(multi) {
+    multi->form.option = CURLFORM_FILE;
+    multi->form.value = file_name;
+    AppendNode(multi_first, multi_last, multi);
+  }
+  else {
+    FreeMultiInfo(multi_first, multi_last);
+    return NULL;
+  }
+
+  if(type_name) {
+    multi_type = calloc(1, sizeof(struct multi_files));
+    if(multi_type) {
+      multi_type->form.option = CURLFORM_CONTENTTYPE;
+      multi_type->form.value = type_name;
+      AppendNode(multi_first, multi_last, multi_type);
+    }
+    else {
+      FreeMultiInfo(multi_first, multi_last);
+      return NULL;
+    }
+  }
+
+  if(show_filename) {
+    multi_name = calloc(1, sizeof(struct multi_files));
+    if(multi_name) {
+      multi_name->form.option = CURLFORM_FILENAME;
+      multi_name->form.value = show_filename;
+      AppendNode(multi_first, multi_last, multi_name);
+    }
+    else {
+      FreeMultiInfo(multi_first, multi_last);
+      return NULL;
+    }
+  }
+
+  return *multi_last;
+}
+
+/*
+ * FreeMultiInfo: Free the items of the list.
+ */
+
+void FreeMultiInfo(struct multi_files **multi_first,
+                   struct multi_files **multi_last)
+{
+  struct multi_files *next;
+  struct multi_files *item = *multi_first;
+
+  while(item) {
+    next = item->next;
+    Curl_safefree(item);
+    item = next;
+  }
+  *multi_first = NULL;
+  if(multi_last)
+    *multi_last = NULL;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_mfiles.h b/ap/lib/libcurl/curl-7.54.1/src/tool_mfiles.h
new file mode 100644
index 0000000..827f400
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_mfiles.h
@@ -0,0 +1,46 @@
+#ifndef HEADER_CURL_TOOL_MFILES_H
+#define HEADER_CURL_TOOL_MFILES_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 "tool_setup.h"
+
+/*
+ * Structure for storing the information needed to build
+ * a multiple files section.
+ */
+
+struct multi_files {
+  struct curl_forms   form;
+  struct multi_files *next;
+};
+
+struct multi_files *AddMultiFiles(const char *file_name,
+                                  const char *type_name,
+                                  const char *show_filename,
+                                  struct multi_files **multi_first,
+                                  struct multi_files **multi_last);
+
+void FreeMultiInfo(struct multi_files **multi_first,
+                   struct multi_files **multi_last);
+
+#endif /* HEADER_CURL_TOOL_MFILES_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_msgs.c b/ap/lib/libcurl/curl-7.54.1/src/tool_msgs.c
new file mode 100644
index 0000000..08aa2ca
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_msgs.c
@@ -0,0 +1,125 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_msgs.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#define WARN_PREFIX "Warning: "
+#define NOTE_PREFIX "Note: "
+
+static void voutf(struct GlobalConfig *config,
+                  const char *prefix,
+                  const char *fmt,
+                  va_list ap)
+{
+  size_t width = (79 - strlen(prefix));
+  if(!config->mute) {
+    size_t len;
+    char *ptr;
+    char print_buffer[256];
+
+    len = vsnprintf(print_buffer, sizeof(print_buffer), fmt, ap);
+
+    ptr = print_buffer;
+    while(len > 0) {
+      fputs(prefix, config->errors);
+
+      if(len > width) {
+        size_t cut = width-1;
+
+        while(!ISSPACE(ptr[cut]) && cut) {
+          cut--;
+        }
+        if(0 == cut)
+          /* not a single cutting position was found, just cut it at the
+             max text width then! */
+          cut = width-1;
+
+        (void)fwrite(ptr, cut + 1, 1, config->errors);
+        fputs("\n", config->errors);
+        ptr += cut+1; /* skip the space too */
+
+        // changed for CVE-2018-16842 1/1-files-1/1-changes
+//        len -= cut;
+        len -= cut + 1;
+
+      }
+      else {
+        fputs(ptr, config->errors);
+        len = 0;
+      }
+    }
+  }
+}
+
+/*
+ * Emit 'note' formatted message on configured 'errors' stream, if verbose was
+ * selected.
+ */
+void notef(struct GlobalConfig *config, const char *fmt, ...)
+{
+  va_list ap;
+  va_start(ap, fmt);
+  if(config->tracetype)
+    voutf(config, NOTE_PREFIX, fmt, ap);
+  va_end(ap);
+}
+
+/*
+ * Emit warning formatted message on configured 'errors' stream unless
+ * mute (--silent) was selected.
+ */
+
+void warnf(struct GlobalConfig *config, const char *fmt, ...)
+{
+  va_list ap;
+  va_start(ap, fmt);
+  voutf(config, WARN_PREFIX, fmt, ap);
+  va_end(ap);
+}
+/*
+ * Emit help formatted message on given stream.
+ */
+
+void helpf(FILE *errors, const char *fmt, ...)
+{
+  va_list ap;
+  if(fmt) {
+    va_start(ap, fmt);
+    fputs("curl: ", errors); /* prefix it */
+    vfprintf(errors, fmt, ap);
+    va_end(ap);
+  }
+  fprintf(errors, "curl: try 'curl --help' "
+#ifdef USE_MANUAL
+          "or 'curl --manual' "
+#endif
+          "for more information\n");
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_msgs.h b/ap/lib/libcurl/curl-7.54.1/src/tool_msgs.h
new file mode 100644
index 0000000..e84c1b2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_msgs.h
@@ -0,0 +1,32 @@
+#ifndef HEADER_CURL_TOOL_MSGS_H
+#define HEADER_CURL_TOOL_MSGS_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+
+void warnf(struct GlobalConfig *config, const char *fmt, ...);
+void notef(struct GlobalConfig *config, const char *fmt, ...);
+
+void helpf(FILE *errors, const char *fmt, ...);
+
+#endif /* HEADER_CURL_TOOL_MSGS_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_operate.c b/ap/lib/libcurl/curl-7.54.1/src/tool_operate.c
new file mode 100644
index 0000000..6f1525e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_operate.c
@@ -0,0 +1,2076 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef HAVE_FCNTL_H
+#  include <fcntl.h>
+#endif
+
+#ifdef HAVE_UTIME_H
+#  include <utime.h>
+#elif defined(HAVE_SYS_UTIME_H)
+#  include <sys/utime.h>
+#endif
+
+#ifdef HAVE_LOCALE_H
+#  include <locale.h>
+#endif
+
+#ifdef __VMS
+#  include <fabdef.h>
+#endif
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_binmode.h"
+#include "tool_cfgable.h"
+#include "tool_cb_dbg.h"
+#include "tool_cb_hdr.h"
+#include "tool_cb_prg.h"
+#include "tool_cb_rea.h"
+#include "tool_cb_see.h"
+#include "tool_cb_wrt.h"
+#include "tool_dirhie.h"
+#include "tool_doswin.h"
+#include "tool_easysrc.h"
+#include "tool_getparam.h"
+#include "tool_helpers.h"
+#include "tool_homedir.h"
+#include "tool_libinfo.h"
+#include "tool_main.h"
+#include "tool_metalink.h"
+#include "tool_msgs.h"
+#include "tool_operate.h"
+#include "tool_operhlp.h"
+#include "tool_paramhlp.h"
+#include "tool_parsecfg.h"
+#include "tool_setopt.h"
+#include "tool_sleep.h"
+#include "tool_urlglob.h"
+#include "tool_util.h"
+#include "tool_writeout.h"
+#include "tool_xattr.h"
+#include "tool_vms.h"
+#include "tool_help.h"
+#include "tool_hugehelp.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef CURLDEBUG
+/* libcurl's debug builds provide an extra function */
+CURLcode curl_easy_perform_ev(CURL *easy);
+#endif
+
+#define CURLseparator  "--_curl_--"
+
+#ifndef O_BINARY
+/* since O_BINARY as used in bitmasks, setting it to zero makes it usable in
+   source code but yet it doesn't ruin anything */
+#  define O_BINARY 0
+#endif
+
+#define CURL_CA_CERT_ERRORMSG1                                              \
+  "More details here: https://curl.haxx.se/docs/sslcerts.html\n\n"           \
+  "curl performs SSL certificate verification by default, "                 \
+  "using a \"bundle\"\n"                                                    \
+  " of Certificate Authority (CA) public keys (CA certs). If the default\n" \
+  " bundle file isn't adequate, you can specify an alternate file\n"        \
+  " using the --cacert option.\n"
+
+#define CURL_CA_CERT_ERRORMSG2                                              \
+  "If this HTTPS server uses a certificate signed by a CA represented in\n" \
+  " the bundle, the certificate verification probably failed due to a\n"    \
+  " problem with the certificate (it might be expired, or the name might\n" \
+  " not match the domain name in the URL).\n"                               \
+  "If you'd like to turn off curl's verification of the certificate, use\n" \
+  " the -k (or --insecure) option.\n"
+
+static bool is_fatal_error(CURLcode code)
+{
+  switch(code) {
+  /* TODO: Should CURLE_SSL_CACERT be included as critical error ? */
+  case CURLE_FAILED_INIT:
+  case CURLE_OUT_OF_MEMORY:
+  case CURLE_UNKNOWN_OPTION:
+  case CURLE_FUNCTION_NOT_FOUND:
+  case CURLE_BAD_FUNCTION_ARGUMENT:
+    /* critical error */
+    return TRUE;
+  default:
+    break;
+  }
+
+  /* no error or not critical */
+  return FALSE;
+}
+
+#ifdef __VMS
+/*
+ * get_vms_file_size does what it takes to get the real size of the file
+ *
+ * For fixed files, find out the size of the EOF block and adjust.
+ *
+ * For all others, have to read the entire file in, discarding the contents.
+ * Most posted text files will be small, and binary files like zlib archives
+ * and CD/DVD images should be either a STREAM_LF format or a fixed format.
+ *
+ */
+static curl_off_t vms_realfilesize(const char *name,
+                                   const struct_stat *stat_buf)
+{
+  char buffer[8192];
+  curl_off_t count;
+  int ret_stat;
+  FILE * file;
+
+  /* !checksrc! disable FOPENMODE 1 */
+  file = fopen(name, "r"); /* VMS */
+  if(file == NULL) {
+    return 0;
+  }
+  count = 0;
+  ret_stat = 1;
+  while(ret_stat > 0) {
+    ret_stat = fread(buffer, 1, sizeof(buffer), file);
+    if(ret_stat != 0)
+      count += ret_stat;
+  }
+  fclose(file);
+
+  return count;
+}
+
+/*
+ *
+ *  VmsSpecialSize checks to see if the stat st_size can be trusted and
+ *  if not to call a routine to get the correct size.
+ *
+ */
+static curl_off_t VmsSpecialSize(const char *name,
+                                 const struct_stat *stat_buf)
+{
+  switch(stat_buf->st_fab_rfm) {
+  case FAB$C_VAR:
+  case FAB$C_VFC:
+    return vms_realfilesize(name, stat_buf);
+    break;
+  default:
+    return stat_buf->st_size;
+  }
+}
+#endif /* __VMS */
+
+#if defined(HAVE_UTIME) || \
+    (defined(WIN32) && (CURL_SIZEOF_CURL_OFF_T >= 8))
+static void setfiletime(long filetime, const char *filename,
+                        FILE *error_stream)
+{
+  if(filetime >= 0) {
+/* Windows utime() may attempt to adjust our unix gmt 'filetime' by a daylight
+   saving time offset and since it's GMT that is bad behavior. When we have
+   access to a 64-bit type we can bypass utime and set the times directly. */
+#if defined(WIN32) && (CURL_SIZEOF_CURL_OFF_T >= 8)
+    HANDLE hfile;
+
+#if (CURL_SIZEOF_LONG >= 8)
+    /* 910670515199 is the maximum unix filetime that can be used as a
+       Windows FILETIME without overflow: 30827-12-31T23:59:59. */
+    if(filetime > CURL_OFF_T_C(910670515199)) {
+      fprintf(error_stream,
+              "Failed to set filetime %ld on outfile: overflow\n",
+              filetime);
+      return;
+    }
+#endif /* CURL_SIZEOF_LONG >= 8 */
+
+    hfile = CreateFileA(filename, FILE_WRITE_ATTRIBUTES,
+                        (FILE_SHARE_READ | FILE_SHARE_WRITE |
+                         FILE_SHARE_DELETE),
+                        NULL, OPEN_EXISTING, 0, NULL);
+    if(hfile != INVALID_HANDLE_VALUE) {
+      curl_off_t converted = ((curl_off_t)filetime * 10000000) +
+                             CURL_OFF_T_C(116444736000000000);
+      FILETIME ft;
+      ft.dwLowDateTime = (DWORD)(converted & 0xFFFFFFFF);
+      ft.dwHighDateTime = (DWORD)(converted >> 32);
+      if(!SetFileTime(hfile, NULL, &ft, &ft)) {
+        fprintf(error_stream,
+                "Failed to set filetime %ld on outfile: "
+                "SetFileTime failed: GetLastError %u\n",
+                filetime, GetLastError());
+      }
+      CloseHandle(hfile);
+    }
+    else {
+      fprintf(error_stream,
+              "Failed to set filetime %ld on outfile: "
+              "CreateFile failed: GetLastError %u\n",
+              filetime, GetLastError());
+    }
+
+#elif defined(HAVE_UTIMES)
+    struct timeval times[2];
+    times[0].tv_sec = times[1].tv_sec = filetime;
+    times[0].tv_usec = times[1].tv_usec = 0;
+    if(utimes(filename, times)) {
+      fprintf(error_stream,
+              "Failed to set filetime %ld on outfile: errno %d\n",
+              filetime, errno);
+    }
+
+#elif defined(HAVE_UTIME)
+    struct utimbuf times;
+    times.actime = (time_t)filetime;
+    times.modtime = (time_t)filetime;
+    if(utime(filename, &times)) {
+      fprintf(error_stream,
+              "Failed to set filetime %ld on outfile: errno %d\n",
+              filetime, errno);
+    }
+#endif
+  }
+}
+#endif /* defined(HAVE_UTIME) || \
+          (defined(WIN32) && (CURL_SIZEOF_CURL_OFF_T >= 8)) */
+
+#define BUFFER_SIZE (100*1024)
+
+static CURLcode operate_do(struct GlobalConfig *global,
+                           struct OperationConfig *config)
+{
+  char errorbuffer[CURL_ERROR_SIZE];
+  struct ProgressData progressbar;
+  struct getout *urlnode;
+
+  struct HdrCbData hdrcbdata;
+  struct OutStruct heads;
+
+  metalinkfile *mlfile_last = NULL;
+
+  CURL *curl = config->easy;
+  char *httpgetfields = NULL;
+
+  CURLcode result = CURLE_OK;
+  unsigned long li;
+  bool capath_from_env;
+
+  /* Save the values of noprogress and isatty to restore them later on */
+  bool orig_noprogress = global->noprogress;
+  bool orig_isatty = global->isatty;
+
+  errorbuffer[0] = '\0';
+
+  /* default headers output stream is stdout */
+  memset(&hdrcbdata, 0, sizeof(struct HdrCbData));
+  memset(&heads, 0, sizeof(struct OutStruct));
+  heads.stream = stdout;
+  heads.config = config;
+
+  /*
+  ** Beyond this point no return'ing from this function allowed.
+  ** Jump to label 'quit_curl' in order to abandon this function
+  ** from outside of nested loops further down below.
+  */
+
+  /* Check we have a url */
+  if(!config->url_list || !config->url_list->url) {
+    helpf(global->errors, "no URL specified!\n");
+    result = CURLE_FAILED_INIT;
+    goto quit_curl;
+  }
+
+  /* On WIN32 we can't set the path to curl-ca-bundle.crt
+   * at compile time. So we look here for the file in two ways:
+   * 1: look at the environment variable CURL_CA_BUNDLE for a path
+   * 2: if #1 isn't found, use the windows API function SearchPath()
+   *    to find it along the app's path (includes app's dir and CWD)
+   *
+   * We support the environment variable thing for non-Windows platforms
+   * too. Just for the sake of it.
+   */
+  capath_from_env = false;
+  if(!config->cacert &&
+     !config->capath &&
+     !config->insecure_ok) {
+    char *env;
+    env = curlx_getenv("CURL_CA_BUNDLE");
+    if(env) {
+      config->cacert = strdup(env);
+      if(!config->cacert) {
+        curl_free(env);
+        helpf(global->errors, "out of memory\n");
+        result = CURLE_OUT_OF_MEMORY;
+        goto quit_curl;
+      }
+    }
+    else {
+      env = curlx_getenv("SSL_CERT_DIR");
+      if(env) {
+        config->capath = strdup(env);
+        if(!config->capath) {
+          curl_free(env);
+          helpf(global->errors, "out of memory\n");
+          result = CURLE_OUT_OF_MEMORY;
+          goto quit_curl;
+        }
+        capath_from_env = true;
+      }
+      else {
+        env = curlx_getenv("SSL_CERT_FILE");
+        if(env) {
+          config->cacert = strdup(env);
+          if(!config->cacert) {
+            curl_free(env);
+            helpf(global->errors, "out of memory\n");
+            result = CURLE_OUT_OF_MEMORY;
+            goto quit_curl;
+          }
+        }
+      }
+    }
+
+    if(env)
+      curl_free(env);
+#ifdef WIN32
+    else {
+      result = FindWin32CACert(config, "curl-ca-bundle.crt");
+      if(result)
+        goto quit_curl;
+    }
+#endif
+  }
+
+  if(config->postfields) {
+    if(config->use_httpget) {
+      /* Use the postfields data for a http get */
+      httpgetfields = strdup(config->postfields);
+      Curl_safefree(config->postfields);
+      if(!httpgetfields) {
+        helpf(global->errors, "out of memory\n");
+        result = CURLE_OUT_OF_MEMORY;
+        goto quit_curl;
+      }
+      if(SetHTTPrequest(config,
+                        (config->no_body?HTTPREQ_HEAD:HTTPREQ_GET),
+                        &config->httpreq)) {
+        result = CURLE_FAILED_INIT;
+        goto quit_curl;
+      }
+    }
+    else {
+      if(SetHTTPrequest(config, HTTPREQ_SIMPLEPOST, &config->httpreq)) {
+        result = CURLE_FAILED_INIT;
+        goto quit_curl;
+      }
+    }
+  }
+
+  /* Single header file for all URLs */
+  if(config->headerfile) {
+    /* open file for output: */
+    if(strcmp(config->headerfile, "-")) {
+      FILE *newfile = fopen(config->headerfile, "wb");
+      if(!newfile) {
+        warnf(config->global, "Failed to open %s\n", config->headerfile);
+        result = CURLE_WRITE_ERROR;
+        goto quit_curl;
+      }
+      else {
+        heads.filename = config->headerfile;
+        heads.s_isreg = TRUE;
+        heads.fopened = TRUE;
+        heads.stream = newfile;
+      }
+    }
+    else {
+      /* always use binary mode for protocol header output */
+      set_binmode(heads.stream);
+    }
+  }
+
+  /*
+  ** Nested loops start here.
+  */
+
+  /* loop through the list of given URLs */
+
+  for(urlnode = config->url_list; urlnode; urlnode = urlnode->next) {
+
+    unsigned long up; /* upload file counter within a single upload glob */
+    char *infiles; /* might be a glob pattern */
+    char *outfiles;
+    unsigned long infilenum;
+    URLGlob *inglob;
+
+    int metalink = 0; /* nonzero for metalink download. */
+    metalinkfile *mlfile;
+    metalink_resource *mlres;
+
+    outfiles = NULL;
+    infilenum = 1;
+    inglob = NULL;
+
+    if(urlnode->flags & GETOUT_METALINK) {
+      metalink = 1;
+      if(mlfile_last == NULL) {
+        mlfile_last = config->metalinkfile_list;
+      }
+      mlfile = mlfile_last;
+      mlfile_last = mlfile_last->next;
+      mlres = mlfile->resource;
+    }
+    else {
+      mlfile = NULL;
+      mlres = NULL;
+    }
+
+    /* urlnode->url is the full URL (it might be NULL) */
+
+    if(!urlnode->url) {
+      /* This node has no URL. Free node data without destroying the
+         node itself nor modifying next pointer and continue to next */
+      Curl_safefree(urlnode->outfile);
+      Curl_safefree(urlnode->infile);
+      urlnode->flags = 0;
+      continue; /* next URL please */
+    }
+
+    /* save outfile pattern before expansion */
+    if(urlnode->outfile) {
+      outfiles = strdup(urlnode->outfile);
+      if(!outfiles) {
+        helpf(global->errors, "out of memory\n");
+        result = CURLE_OUT_OF_MEMORY;
+        break;
+      }
+    }
+
+    infiles = urlnode->infile;
+
+    if(!config->globoff && infiles) {
+      /* Unless explicitly shut off */
+      result = glob_url(&inglob, infiles, &infilenum,
+                        global->showerror?global->errors:NULL);
+      if(result) {
+        Curl_safefree(outfiles);
+        break;
+      }
+    }
+
+    /* Here's the loop for uploading multiple files within the same
+       single globbed string. If no upload, we enter the loop once anyway. */
+    for(up = 0 ; up < infilenum; up++) {
+
+      char *uploadfile; /* a single file, never a glob */
+      int separator;
+      URLGlob *urls;
+      unsigned long urlnum;
+
+      uploadfile = NULL;
+      urls = NULL;
+      urlnum = 0;
+
+      if(!up && !infiles)
+        Curl_nop_stmt;
+      else {
+        if(inglob) {
+          result = glob_next_url(&uploadfile, inglob);
+          if(result == CURLE_OUT_OF_MEMORY)
+            helpf(global->errors, "out of memory\n");
+        }
+        else if(!up) {
+          uploadfile = strdup(infiles);
+          if(!uploadfile) {
+            helpf(global->errors, "out of memory\n");
+            result = CURLE_OUT_OF_MEMORY;
+          }
+        }
+        else
+          uploadfile = NULL;
+        if(!uploadfile)
+          break;
+      }
+
+      if(metalink) {
+        /* For Metalink download, we don't use glob. Instead we use
+           the number of resources as urlnum. */
+        urlnum = count_next_metalink_resource(mlfile);
+      }
+      else
+      if(!config->globoff) {
+        /* Unless explicitly shut off, we expand '{...}' and '[...]'
+           expressions and return total number of URLs in pattern set */
+        result = glob_url(&urls, urlnode->url, &urlnum,
+                          global->showerror?global->errors:NULL);
+        if(result) {
+          Curl_safefree(uploadfile);
+          break;
+        }
+      }
+      else
+        urlnum = 1; /* without globbing, this is a single URL */
+
+      /* if multiple files extracted to stdout, insert separators! */
+      separator= ((!outfiles || !strcmp(outfiles, "-")) && urlnum > 1);
+
+      /* Here's looping around each globbed URL */
+      for(li = 0 ; li < urlnum; li++) {
+
+        int infd;
+        bool infdopen;
+        char *outfile;
+        struct OutStruct outs;
+        struct InStruct input;
+        struct timeval retrystart;
+        curl_off_t uploadfilesize;
+        long retry_numretries;
+        long retry_sleep_default;
+        long retry_sleep;
+        char *this_url = NULL;
+        int metalink_next_res = 0;
+
+        outfile = NULL;
+        infdopen = FALSE;
+        infd = STDIN_FILENO;
+        uploadfilesize = -1; /* -1 means unknown */
+
+        /* default output stream is stdout */
+        memset(&outs, 0, sizeof(struct OutStruct));
+        outs.stream = stdout;
+        outs.config = config;
+
+        if(metalink) {
+          /* For Metalink download, use name in Metalink file as
+             filename. */
+          outfile = strdup(mlfile->filename);
+          if(!outfile) {
+            result = CURLE_OUT_OF_MEMORY;
+            goto show_error;
+          }
+          this_url = strdup(mlres->url);
+          if(!this_url) {
+            result = CURLE_OUT_OF_MEMORY;
+            goto show_error;
+          }
+        }
+        else {
+          if(urls) {
+            result = glob_next_url(&this_url, urls);
+            if(result)
+              goto show_error;
+          }
+          else if(!li) {
+            this_url = strdup(urlnode->url);
+            if(!this_url) {
+              result = CURLE_OUT_OF_MEMORY;
+              goto show_error;
+            }
+          }
+          else
+            this_url = NULL;
+          if(!this_url)
+            break;
+
+          if(outfiles) {
+            outfile = strdup(outfiles);
+            if(!outfile) {
+              result = CURLE_OUT_OF_MEMORY;
+              goto show_error;
+            }
+          }
+        }
+
+        if(((urlnode->flags&GETOUT_USEREMOTE) ||
+            (outfile && strcmp("-", outfile))) &&
+           (metalink || !config->use_metalink)) {
+
+          /*
+           * We have specified a file name to store the result in, or we have
+           * decided we want to use the remote file name.
+           */
+
+          if(!outfile) {
+            /* extract the file name from the URL */
+            result = get_url_file_name(&outfile, this_url);
+            if(result)
+              goto show_error;
+            if(!*outfile && !config->content_disposition) {
+              helpf(global->errors, "Remote file name has no length!\n");
+              result = CURLE_WRITE_ERROR;
+              goto quit_urls;
+            }
+          }
+          else if(urls) {
+            /* fill '#1' ... '#9' terms from URL pattern */
+            char *storefile = outfile;
+            result = glob_match_url(&outfile, storefile, urls);
+            Curl_safefree(storefile);
+            if(result) {
+              /* bad globbing */
+              warnf(config->global, "bad output glob!\n");
+              goto quit_urls;
+            }
+          }
+
+          /* Create the directory hierarchy, if not pre-existent to a multiple
+             file output call */
+
+          if(config->create_dirs || metalink) {
+            result = create_dir_hierarchy(outfile, global->errors);
+            /* create_dir_hierarchy shows error upon CURLE_WRITE_ERROR */
+            if(result == CURLE_WRITE_ERROR)
+              goto quit_urls;
+            if(result) {
+              goto show_error;
+            }
+          }
+
+          if((urlnode->flags & GETOUT_USEREMOTE)
+             && config->content_disposition) {
+            /* Our header callback MIGHT set the filename */
+            DEBUGASSERT(!outs.filename);
+          }
+
+          if(config->resume_from_current) {
+            /* We're told to continue from where we are now. Get the size
+               of the file as it is now and open it for append instead */
+            struct_stat fileinfo;
+            /* VMS -- Danger, the filesize is only valid for stream files */
+            if(0 == stat(outfile, &fileinfo))
+              /* set offset to current file size: */
+              config->resume_from = fileinfo.st_size;
+            else
+              /* let offset be 0 */
+              config->resume_from = 0;
+          }
+
+          if(config->resume_from) {
+#ifdef __VMS
+            /* open file for output, forcing VMS output format into stream
+               mode which is needed for stat() call above to always work. */
+            FILE *file = fopen(outfile, config->resume_from?"ab":"wb",
+                               "ctx=stm", "rfm=stmlf", "rat=cr", "mrs=0");
+#else
+            /* open file for output: */
+            FILE *file = fopen(outfile, config->resume_from?"ab":"wb");
+#endif
+            if(!file) {
+              helpf(global->errors, "Can't open '%s'!\n", outfile);
+              result = CURLE_WRITE_ERROR;
+              goto quit_urls;
+            }
+            outs.fopened = TRUE;
+            outs.stream = file;
+            outs.init = config->resume_from;
+          }
+          else {
+            outs.stream = NULL; /* open when needed */
+          }
+          outs.filename = outfile;
+          outs.s_isreg = TRUE;
+        }
+
+        if(uploadfile && !stdin_upload(uploadfile)) {
+          /*
+           * We have specified a file to upload and it isn't "-".
+           */
+          struct_stat fileinfo;
+
+          this_url = add_file_name_to_url(curl, this_url, uploadfile);
+          if(!this_url) {
+            result = CURLE_OUT_OF_MEMORY;
+            goto show_error;
+          }
+          /* VMS Note:
+           *
+           * Reading binary from files can be a problem...  Only FIXED, VAR
+           * etc WITHOUT implied CC will work Others need a \n appended to a
+           * line
+           *
+           * - Stat gives a size but this is UNRELIABLE in VMS As a f.e. a
+           * fixed file with implied CC needs to have a byte added for every
+           * record processed, this can by derived from Filesize & recordsize
+           * for VARiable record files the records need to be counted!  for
+           * every record add 1 for linefeed and subtract 2 for the record
+           * header for VARIABLE header files only the bare record data needs
+           * to be considered with one appended if implied CC
+           */
+#ifdef __VMS
+          /* Calculate the real upload site for VMS */
+          infd = -1;
+          if(stat(uploadfile, &fileinfo) == 0) {
+            fileinfo.st_size = VmsSpecialSize(uploadfile, &fileinfo);
+            switch(fileinfo.st_fab_rfm) {
+            case FAB$C_VAR:
+            case FAB$C_VFC:
+            case FAB$C_STMCR:
+              infd = open(uploadfile, O_RDONLY | O_BINARY);
+              break;
+            default:
+              infd = open(uploadfile, O_RDONLY | O_BINARY,
+                          "rfm=stmlf", "ctx=stm");
+            }
+          }
+          if(infd == -1)
+#else
+          infd = open(uploadfile, O_RDONLY | O_BINARY);
+          if((infd == -1) || fstat(infd, &fileinfo))
+#endif
+          {
+            helpf(global->errors, "Can't open '%s'!\n", uploadfile);
+            if(infd != -1) {
+              close(infd);
+              infd = STDIN_FILENO;
+            }
+            result = CURLE_READ_ERROR;
+            goto quit_urls;
+          }
+          infdopen = TRUE;
+
+          /* we ignore file size for char/block devices, sockets, etc. */
+          if(S_ISREG(fileinfo.st_mode))
+            uploadfilesize = fileinfo.st_size;
+
+        }
+        else if(uploadfile && stdin_upload(uploadfile)) {
+          /* count to see if there are more than one auth bit set
+             in the authtype field */
+          int authbits = 0;
+          int bitcheck = 0;
+          while(bitcheck < 32) {
+            if(config->authtype & (1UL << bitcheck++)) {
+              authbits++;
+              if(authbits > 1) {
+                /* more than one, we're done! */
+                break;
+              }
+            }
+          }
+
+          /*
+           * If the user has also selected --anyauth or --proxy-anyauth
+           * we should warn him/her.
+           */
+          if(config->proxyanyauth || (authbits>1)) {
+            warnf(config->global,
+                  "Using --anyauth or --proxy-anyauth with upload from stdin"
+                  " involves a big risk of it not working. Use a temporary"
+                  " file or a fixed auth type instead!\n");
+          }
+
+          DEBUGASSERT(infdopen == FALSE);
+          DEBUGASSERT(infd == STDIN_FILENO);
+
+          set_binmode(stdin);
+          if(!strcmp(uploadfile, ".")) {
+            if(curlx_nonblock((curl_socket_t)infd, TRUE) < 0)
+              warnf(config->global,
+                    "fcntl failed on fd=%d: %s\n", infd, strerror(errno));
+          }
+        }
+
+        if(uploadfile && config->resume_from_current)
+          config->resume_from = -1; /* -1 will then force get-it-yourself */
+
+        if(output_expected(this_url, uploadfile) && outs.stream &&
+           isatty(fileno(outs.stream)))
+          /* we send the output to a tty, therefore we switch off the progress
+             meter */
+          global->noprogress = global->isatty = TRUE;
+        else {
+          /* progress meter is per download, so restore config
+             values */
+          global->noprogress = orig_noprogress;
+          global->isatty = orig_isatty;
+        }
+
+        if(urlnum > 1 && !global->mute) {
+          fprintf(global->errors, "\n[%lu/%lu]: %s --> %s\n",
+                  li+1, urlnum, this_url, outfile ? outfile : "<stdout>");
+          if(separator)
+            printf("%s%s\n", CURLseparator, this_url);
+        }
+        if(httpgetfields) {
+          char *urlbuffer;
+          /* Find out whether the url contains a file name */
+          const char *pc = strstr(this_url, "://");
+          char sep = '?';
+          if(pc)
+            pc += 3;
+          else
+            pc = this_url;
+
+          pc = strrchr(pc, '/'); /* check for a slash */
+
+          if(pc) {
+            /* there is a slash present in the URL */
+
+            if(strchr(pc, '?'))
+              /* Ouch, there's already a question mark in the URL string, we
+                 then append the data with an ampersand separator instead! */
+              sep='&';
+          }
+          /*
+           * Then append ? followed by the get fields to the url.
+           */
+          if(pc)
+            urlbuffer = aprintf("%s%c%s", this_url, sep, httpgetfields);
+          else
+            /* Append  / before the ? to create a well-formed url
+               if the url contains a hostname only
+            */
+            urlbuffer = aprintf("%s/?%s", this_url, httpgetfields);
+
+          if(!urlbuffer) {
+            result = CURLE_OUT_OF_MEMORY;
+            goto show_error;
+          }
+
+          Curl_safefree(this_url); /* free previous URL */
+          this_url = urlbuffer; /* use our new URL instead! */
+        }
+
+        if(!global->errors)
+          global->errors = stderr;
+
+        if((!outfile || !strcmp(outfile, "-")) && !config->use_ascii) {
+          /* We get the output to stdout and we have not got the ASCII/text
+             flag, then set stdout to be binary */
+          set_binmode(stdout);
+        }
+
+        if(!config->tcp_nodelay)
+          my_setopt(curl, CURLOPT_TCP_NODELAY, 0L);
+
+        if(config->tcp_fastopen)
+          my_setopt(curl, CURLOPT_TCP_FASTOPEN, 1L);
+
+        /* where to store */
+        my_setopt(curl, CURLOPT_WRITEDATA, &outs);
+        my_setopt(curl, CURLOPT_INTERLEAVEDATA, &outs);
+        if(metalink || !config->use_metalink)
+          /* what call to write */
+          my_setopt(curl, CURLOPT_WRITEFUNCTION, tool_write_cb);
+#ifdef USE_METALINK
+        else
+          /* Set Metalink specific write callback function to parse
+             XML data progressively. */
+          my_setopt(curl, CURLOPT_WRITEFUNCTION, metalink_write_cb);
+#endif /* USE_METALINK */
+
+        /* for uploads */
+        input.fd = infd;
+        input.config = config;
+        /* Note that if CURLOPT_READFUNCTION is fread (the default), then
+         * lib/telnet.c will Curl_poll() on the input file descriptor
+         * rather then calling the READFUNCTION at regular intervals.
+         * The circumstances in which it is preferable to enable this
+         * behaviour, by omitting to set the READFUNCTION & READDATA options,
+         * have not been determined.
+         */
+        my_setopt(curl, CURLOPT_READDATA, &input);
+        /* what call to read */
+        my_setopt(curl, CURLOPT_READFUNCTION, tool_read_cb);
+
+        /* in 7.18.0, the CURLOPT_SEEKFUNCTION/DATA pair is taking over what
+           CURLOPT_IOCTLFUNCTION/DATA pair previously provided for seeking */
+        my_setopt(curl, CURLOPT_SEEKDATA, &input);
+        my_setopt(curl, CURLOPT_SEEKFUNCTION, tool_seek_cb);
+
+        if(config->recvpersecond &&
+           (config->recvpersecond < BUFFER_SIZE))
+          /* use a smaller sized buffer for better sleeps */
+          my_setopt(curl, CURLOPT_BUFFERSIZE, (long)config->recvpersecond);
+        else
+          my_setopt(curl, CURLOPT_BUFFERSIZE, (long)BUFFER_SIZE);
+
+        /* size of uploaded file: */
+        if(uploadfilesize != -1)
+          my_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadfilesize);
+        my_setopt_str(curl, CURLOPT_URL, this_url);     /* what to fetch */
+        my_setopt(curl, CURLOPT_NOPROGRESS, global->noprogress?1L:0L);
+        if(config->no_body) {
+          my_setopt(curl, CURLOPT_NOBODY, 1L);
+          my_setopt(curl, CURLOPT_HEADER, 1L);
+        }
+        /* If --metalink is used, we ignore --include (headers in
+           output) option because mixing headers to the body will
+           confuse XML parser and/or hash check will fail. */
+        else if(!config->use_metalink)
+          my_setopt(curl, CURLOPT_HEADER, config->include_headers?1L:0L);
+
+        if(config->oauth_bearer)
+          my_setopt_str(curl, CURLOPT_XOAUTH2_BEARER, config->oauth_bearer);
+
+#if !defined(CURL_DISABLE_PROXY)
+        {
+          /* TODO: Make this a run-time check instead of compile-time one. */
+
+          my_setopt_str(curl, CURLOPT_PROXY, config->proxy);
+          /* new in libcurl 7.5 */
+          if(config->proxy)
+            my_setopt_enum(curl, CURLOPT_PROXYTYPE, config->proxyver);
+
+          my_setopt_str(curl, CURLOPT_PROXYUSERPWD, config->proxyuserpwd);
+
+          /* new in libcurl 7.3 */
+          my_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, config->proxytunnel?1L:0L);
+
+          /* new in libcurl 7.52.0 */
+          if(config->preproxy)
+            my_setopt_str(curl, CURLOPT_PRE_PROXY, config->preproxy);
+
+          /* new in libcurl 7.10.6 */
+          if(config->proxyanyauth)
+            my_setopt_bitmask(curl, CURLOPT_PROXYAUTH,
+                              (long)CURLAUTH_ANY);
+          else if(config->proxynegotiate)
+            my_setopt_bitmask(curl, CURLOPT_PROXYAUTH,
+                              (long)CURLAUTH_GSSNEGOTIATE);
+          else if(config->proxyntlm)
+            my_setopt_bitmask(curl, CURLOPT_PROXYAUTH,
+                              (long)CURLAUTH_NTLM);
+          else if(config->proxydigest)
+            my_setopt_bitmask(curl, CURLOPT_PROXYAUTH,
+                              (long)CURLAUTH_DIGEST);
+          else if(config->proxybasic)
+            my_setopt_bitmask(curl, CURLOPT_PROXYAUTH,
+                              (long)CURLAUTH_BASIC);
+
+          /* new in libcurl 7.19.4 */
+          my_setopt_str(curl, CURLOPT_NOPROXY, config->noproxy);
+
+          my_setopt(curl, CURLOPT_SUPPRESS_CONNECT_HEADERS,
+                    config->suppress_connect_headers?1L:0L);
+        }
+#endif /* !CURL_DISABLE_PROXY */
+
+        my_setopt(curl, CURLOPT_FAILONERROR, config->failonerror?1L:0L);
+        my_setopt(curl, CURLOPT_UPLOAD, uploadfile?1L:0L);
+        my_setopt(curl, CURLOPT_DIRLISTONLY, config->dirlistonly?1L:0L);
+        my_setopt(curl, CURLOPT_APPEND, config->ftp_append?1L:0L);
+
+        if(config->netrc_opt)
+          my_setopt_enum(curl, CURLOPT_NETRC, (long)CURL_NETRC_OPTIONAL);
+        else if(config->netrc || config->netrc_file)
+          my_setopt_enum(curl, CURLOPT_NETRC, (long)CURL_NETRC_REQUIRED);
+        else
+          my_setopt_enum(curl, CURLOPT_NETRC, (long)CURL_NETRC_IGNORED);
+
+        if(config->netrc_file)
+          my_setopt_str(curl, CURLOPT_NETRC_FILE, config->netrc_file);
+
+        my_setopt(curl, CURLOPT_TRANSFERTEXT, config->use_ascii?1L:0L);
+        if(config->login_options)
+          my_setopt_str(curl, CURLOPT_LOGIN_OPTIONS, config->login_options);
+        my_setopt_str(curl, CURLOPT_USERPWD, config->userpwd);
+        my_setopt_str(curl, CURLOPT_RANGE, config->range);
+        my_setopt(curl, CURLOPT_ERRORBUFFER, errorbuffer);
+        my_setopt(curl, CURLOPT_TIMEOUT_MS, (long)(config->timeout * 1000));
+
+        if(built_in_protos & CURLPROTO_HTTP) {
+
+          long postRedir = 0;
+
+          my_setopt(curl, CURLOPT_FOLLOWLOCATION,
+                    config->followlocation?1L:0L);
+          my_setopt(curl, CURLOPT_UNRESTRICTED_AUTH,
+                    config->unrestricted_auth?1L:0L);
+
+          switch(config->httpreq) {
+          case HTTPREQ_SIMPLEPOST:
+            my_setopt_str(curl, CURLOPT_POSTFIELDS,
+                          config->postfields);
+            my_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE,
+                      config->postfieldsize);
+            break;
+          case HTTPREQ_FORMPOST:
+            my_setopt_httppost(curl, CURLOPT_HTTPPOST, config->httppost);
+            break;
+          default:
+            break;
+          }
+
+          my_setopt_str(curl, CURLOPT_REFERER, config->referer);
+          my_setopt(curl, CURLOPT_AUTOREFERER, config->autoreferer?1L:0L);
+          my_setopt_str(curl, CURLOPT_USERAGENT, config->useragent);
+          my_setopt_slist(curl, CURLOPT_HTTPHEADER, config->headers);
+
+          /* new in libcurl 7.36.0 */
+          if(config->proxyheaders) {
+            my_setopt_slist(curl, CURLOPT_PROXYHEADER, config->proxyheaders);
+            my_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_SEPARATE);
+          }
+
+          /* new in libcurl 7.5 */
+          my_setopt(curl, CURLOPT_MAXREDIRS, config->maxredirs);
+
+          if(config->httpversion)
+            my_setopt_enum(curl, CURLOPT_HTTP_VERSION, config->httpversion);
+          else if(curlinfo->features & CURL_VERSION_HTTP2) {
+            my_setopt_enum(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS);
+          }
+
+          /* new in libcurl 7.10.6 (default is Basic) */
+          if(config->authtype)
+            my_setopt_bitmask(curl, CURLOPT_HTTPAUTH, (long)config->authtype);
+
+          /* curl 7.19.1 (the 301 version existed in 7.18.2),
+             303 was added in 7.26.0 */
+          if(config->post301)
+            postRedir |= CURL_REDIR_POST_301;
+          if(config->post302)
+            postRedir |= CURL_REDIR_POST_302;
+          if(config->post303)
+            postRedir |= CURL_REDIR_POST_303;
+          my_setopt(curl, CURLOPT_POSTREDIR, postRedir);
+
+          /* new in libcurl 7.21.6 */
+          if(config->encoding)
+            my_setopt_str(curl, CURLOPT_ACCEPT_ENCODING, "");
+
+          /* new in libcurl 7.21.6 */
+          if(config->tr_encoding)
+            my_setopt(curl, CURLOPT_TRANSFER_ENCODING, 1L);
+
+        } /* (built_in_protos & CURLPROTO_HTTP) */
+
+        my_setopt_str(curl, CURLOPT_FTPPORT, config->ftpport);
+        my_setopt(curl, CURLOPT_LOW_SPEED_LIMIT,
+                  config->low_speed_limit);
+        my_setopt(curl, CURLOPT_LOW_SPEED_TIME, config->low_speed_time);
+        my_setopt(curl, CURLOPT_MAX_SEND_SPEED_LARGE,
+                  config->sendpersecond);
+        my_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE,
+                  config->recvpersecond);
+
+        if(config->use_resume)
+          my_setopt(curl, CURLOPT_RESUME_FROM_LARGE, config->resume_from);
+        else
+          my_setopt(curl, CURLOPT_RESUME_FROM_LARGE, CURL_OFF_T_C(0));
+
+        my_setopt_str(curl, CURLOPT_KEYPASSWD, config->key_passwd);
+        my_setopt_str(curl, CURLOPT_PROXY_KEYPASSWD, config->proxy_key_passwd);
+
+        if(built_in_protos & (CURLPROTO_SCP|CURLPROTO_SFTP)) {
+
+          /* SSH and SSL private key uses same command-line option */
+          /* new in libcurl 7.16.1 */
+          my_setopt_str(curl, CURLOPT_SSH_PRIVATE_KEYFILE, config->key);
+          /* new in libcurl 7.16.1 */
+          my_setopt_str(curl, CURLOPT_SSH_PUBLIC_KEYFILE, config->pubkey);
+
+          /* new in libcurl 7.17.1: SSH host key md5 checking allows us
+             to fail if we are not talking to who we think we should */
+          my_setopt_str(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5,
+                        config->hostpubmd5);
+        }
+
+        if(config->cacert)
+          my_setopt_str(curl, CURLOPT_CAINFO, config->cacert);
+        if(config->proxy_cacert)
+          my_setopt_str(curl, CURLOPT_PROXY_CAINFO, config->proxy_cacert);
+
+        if(config->capath) {
+          result = res_setopt_str(curl, CURLOPT_CAPATH, config->capath);
+          if(result == CURLE_NOT_BUILT_IN) {
+            warnf(config->global, "ignoring %s, not supported by libcurl\n",
+                  capath_from_env?
+                  "SSL_CERT_DIR environment variable":"--capath");
+          }
+          else if(result)
+            goto show_error;
+        }
+        /* For the time being if --proxy-capath is not set then we use the
+           --capath value for it, if any. See #1257 */
+        if(config->proxy_capath || config->capath) {
+          result = res_setopt_str(curl, CURLOPT_PROXY_CAPATH,
+                                  (config->proxy_capath ?
+                                   config->proxy_capath :
+                                   config->capath));
+          if(result == CURLE_NOT_BUILT_IN) {
+            if(config->proxy_capath) {
+              warnf(config->global,
+                    "ignoring --proxy-capath, not supported by libcurl\n");
+            }
+          }
+          else if(result)
+            goto show_error;
+        }
+
+        if(config->crlfile)
+          my_setopt_str(curl, CURLOPT_CRLFILE, config->crlfile);
+        if(config->proxy_crlfile)
+          my_setopt_str(curl, CURLOPT_PROXY_CRLFILE, config->proxy_crlfile);
+        else if(config->crlfile) /* CURLOPT_PROXY_CRLFILE default is crlfile */
+          my_setopt_str(curl, CURLOPT_PROXY_CRLFILE, config->crlfile);
+
+        if(config->pinnedpubkey)
+          my_setopt_str(curl, CURLOPT_PINNEDPUBLICKEY, config->pinnedpubkey);
+
+        if(curlinfo->features & CURL_VERSION_SSL) {
+          my_setopt_str(curl, CURLOPT_SSLCERT, config->cert);
+          my_setopt_str(curl, CURLOPT_PROXY_SSLCERT, config->proxy_cert);
+          my_setopt_str(curl, CURLOPT_SSLCERTTYPE, config->cert_type);
+          my_setopt_str(curl, CURLOPT_PROXY_SSLCERTTYPE,
+                        config->proxy_cert_type);
+          my_setopt_str(curl, CURLOPT_SSLKEY, config->key);
+          my_setopt_str(curl, CURLOPT_PROXY_SSLKEY, config->proxy_key);
+          my_setopt_str(curl, CURLOPT_SSLKEYTYPE, config->key_type);
+          my_setopt_str(curl, CURLOPT_PROXY_SSLKEYTYPE,
+                        config->proxy_key_type);
+
+          if(config->insecure_ok) {
+            my_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
+            my_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
+          }
+          else {
+            my_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
+            /* libcurl default is strict verifyhost -> 2L   */
+            /* my_setopt(curl, CURLOPT_SSL_VERIFYHOST, 2L); */
+          }
+          if(config->proxy_insecure_ok) {
+            my_setopt(curl, CURLOPT_PROXY_SSL_VERIFYPEER, 0L);
+            my_setopt(curl, CURLOPT_PROXY_SSL_VERIFYHOST, 0L);
+          }
+          else {
+            my_setopt(curl, CURLOPT_PROXY_SSL_VERIFYPEER, 1L);
+          }
+
+          if(config->verifystatus)
+            my_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 1L);
+
+          if(config->falsestart)
+            my_setopt(curl, CURLOPT_SSL_FALSESTART, 1L);
+
+          my_setopt_enum(curl, CURLOPT_SSLVERSION,
+                         config->ssl_version | config->ssl_version_max);
+          my_setopt_enum(curl, CURLOPT_PROXY_SSLVERSION,
+                         config->proxy_ssl_version);
+        }
+        if(config->path_as_is)
+          my_setopt(curl, CURLOPT_PATH_AS_IS, 1L);
+
+        if(built_in_protos & (CURLPROTO_SCP|CURLPROTO_SFTP)) {
+          if(!config->insecure_ok) {
+            char *home;
+            char *file;
+            result = CURLE_OUT_OF_MEMORY;
+            home = homedir();
+            if(home) {
+              file = aprintf("%s/%sssh/known_hosts", home, DOT_CHAR);
+              if(file) {
+                /* new in curl 7.19.6 */
+                result = res_setopt_str(curl, CURLOPT_SSH_KNOWNHOSTS, file);
+                curl_free(file);
+                if(result == CURLE_UNKNOWN_OPTION)
+                  /* libssh2 version older than 1.1.1 */
+                  result = CURLE_OK;
+              }
+              Curl_safefree(home);
+            }
+            if(result)
+              goto show_error;
+          }
+        }
+
+        if(config->no_body || config->remote_time) {
+          /* no body or use remote time */
+          my_setopt(curl, CURLOPT_FILETIME, 1L);
+        }
+
+        my_setopt(curl, CURLOPT_CRLF, config->crlf?1L:0L);
+        my_setopt_slist(curl, CURLOPT_QUOTE, config->quote);
+        my_setopt_slist(curl, CURLOPT_POSTQUOTE, config->postquote);
+        my_setopt_slist(curl, CURLOPT_PREQUOTE, config->prequote);
+
+#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
+        if(config->cookie)
+          my_setopt_str(curl, CURLOPT_COOKIE, config->cookie);
+
+        if(config->cookiefile)
+          my_setopt_str(curl, CURLOPT_COOKIEFILE, config->cookiefile);
+
+        /* new in libcurl 7.9 */
+        if(config->cookiejar)
+          my_setopt_str(curl, CURLOPT_COOKIEJAR, config->cookiejar);
+
+        /* new in libcurl 7.9.7 */
+        my_setopt(curl, CURLOPT_COOKIESESSION, config->cookiesession?1L:0L);
+#else
+        if(config->cookie || config->cookiefile || config->cookiejar) {
+          warnf(config->global, "cookie option(s) used even though cookie "
+                "support is disabled!\n");
+          return CURLE_NOT_BUILT_IN;
+        }
+#endif
+
+        my_setopt_enum(curl, CURLOPT_TIMECONDITION, (long)config->timecond);
+        my_setopt(curl, CURLOPT_TIMEVALUE, (long)config->condtime);
+        my_setopt_str(curl, CURLOPT_CUSTOMREQUEST, config->customrequest);
+        customrequest_helper(config, config->httpreq, config->customrequest);
+        my_setopt(curl, CURLOPT_STDERR, global->errors);
+
+        /* three new ones in libcurl 7.3: */
+        my_setopt_str(curl, CURLOPT_INTERFACE, config->iface);
+        my_setopt_str(curl, CURLOPT_KRBLEVEL, config->krblevel);
+
+        progressbarinit(&progressbar, config);
+        if((global->progressmode == CURL_PROGRESS_BAR) &&
+           !global->noprogress && !global->mute) {
+          /* we want the alternative style, then we have to implement it
+             ourselves! */
+          my_setopt(curl, CURLOPT_XFERINFOFUNCTION, tool_progress_cb);
+          my_setopt(curl, CURLOPT_XFERINFODATA, &progressbar);
+        }
+
+        /* new in libcurl 7.24.0: */
+        if(config->dns_servers)
+          my_setopt_str(curl, CURLOPT_DNS_SERVERS, config->dns_servers);
+
+        /* new in libcurl 7.33.0: */
+        if(config->dns_interface)
+          my_setopt_str(curl, CURLOPT_DNS_INTERFACE, config->dns_interface);
+        if(config->dns_ipv4_addr)
+          my_setopt_str(curl, CURLOPT_DNS_LOCAL_IP4, config->dns_ipv4_addr);
+        if(config->dns_ipv6_addr)
+        my_setopt_str(curl, CURLOPT_DNS_LOCAL_IP6, config->dns_ipv6_addr);
+
+        /* new in libcurl 7.6.2: */
+        my_setopt_slist(curl, CURLOPT_TELNETOPTIONS, config->telnet_options);
+
+        /* new in libcurl 7.7: */
+        my_setopt_str(curl, CURLOPT_RANDOM_FILE, config->random_file);
+        my_setopt_str(curl, CURLOPT_EGDSOCKET, config->egd_file);
+        my_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS,
+                  (long)(config->connecttimeout * 1000));
+
+        if(config->cipher_list)
+          my_setopt_str(curl, CURLOPT_SSL_CIPHER_LIST, config->cipher_list);
+
+        if(config->proxy_cipher_list)
+          my_setopt_str(curl, CURLOPT_PROXY_SSL_CIPHER_LIST,
+                        config->proxy_cipher_list);
+
+        /* new in libcurl 7.9.2: */
+        if(config->disable_epsv)
+          /* disable it */
+          my_setopt(curl, CURLOPT_FTP_USE_EPSV, 0L);
+
+        /* new in libcurl 7.10.5 */
+        if(config->disable_eprt)
+          /* disable it */
+          my_setopt(curl, CURLOPT_FTP_USE_EPRT, 0L);
+
+        if(global->tracetype != TRACE_NONE) {
+          my_setopt(curl, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
+          my_setopt(curl, CURLOPT_DEBUGDATA, config);
+          my_setopt(curl, CURLOPT_VERBOSE, 1L);
+        }
+
+        /* new in curl 7.9.3 */
+        if(config->engine) {
+          result = res_setopt_str(curl, CURLOPT_SSLENGINE, config->engine);
+          if(result)
+            goto show_error;
+        }
+
+        /* new in curl 7.10.7, extended in 7.19.4. Modified to use
+           CREATE_DIR_RETRY in 7.49.0 */
+        my_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS,
+                  (long)(config->ftp_create_dirs?
+                         CURLFTP_CREATE_DIR_RETRY:
+                         CURLFTP_CREATE_DIR_NONE));
+
+        /* new in curl 7.10.8 */
+        if(config->max_filesize)
+          my_setopt(curl, CURLOPT_MAXFILESIZE_LARGE,
+                    config->max_filesize);
+
+        if(4 == config->ip_version)
+          my_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
+        else if(6 == config->ip_version)
+          my_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
+        else
+          my_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_WHATEVER);
+
+        /* new in curl 7.15.5 */
+        if(config->ftp_ssl_reqd)
+          my_setopt_enum(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_ALL);
+
+        /* new in curl 7.11.0 */
+        else if(config->ftp_ssl)
+          my_setopt_enum(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_TRY);
+
+        /* new in curl 7.16.0 */
+        else if(config->ftp_ssl_control)
+          my_setopt_enum(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_CONTROL);
+
+        /* new in curl 7.16.1 */
+        if(config->ftp_ssl_ccc)
+          my_setopt_enum(curl, CURLOPT_FTP_SSL_CCC,
+                         (long)config->ftp_ssl_ccc_mode);
+
+        /* new in curl 7.19.4 */
+        if(config->socks5_gssapi_nec)
+          my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_NEC,
+                        config->socks5_gssapi_nec);
+
+        /* new in curl 7.43.0 */
+        if(config->proxy_service_name)
+          my_setopt_str(curl, CURLOPT_PROXY_SERVICE_NAME,
+                        config->proxy_service_name);
+
+        /* new in curl 7.43.0 */
+        if(config->service_name)
+          my_setopt_str(curl, CURLOPT_SERVICE_NAME,
+                        config->service_name);
+
+        /* curl 7.13.0 */
+        my_setopt_str(curl, CURLOPT_FTP_ACCOUNT, config->ftp_account);
+
+        my_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, config->ignorecl?1L:0L);
+
+        /* curl 7.14.2 */
+        my_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, config->ftp_skip_ip?1L:0L);
+
+        /* curl 7.15.1 */
+        my_setopt(curl, CURLOPT_FTP_FILEMETHOD, (long)config->ftp_filemethod);
+
+        /* curl 7.15.2 */
+        if(config->localport) {
+          my_setopt(curl, CURLOPT_LOCALPORT, (long)config->localport);
+          my_setopt_str(curl, CURLOPT_LOCALPORTRANGE,
+                        (long)config->localportrange);
+        }
+
+        /* curl 7.15.5 */
+        my_setopt_str(curl, CURLOPT_FTP_ALTERNATIVE_TO_USER,
+                      config->ftp_alternative_to_user);
+
+        /* curl 7.16.0 */
+        if(config->disable_sessionid)
+          /* disable it */
+          my_setopt(curl, CURLOPT_SSL_SESSIONID_CACHE, 0L);
+
+        /* curl 7.16.2 */
+        if(config->raw) {
+          my_setopt(curl, CURLOPT_HTTP_CONTENT_DECODING, 0L);
+          my_setopt(curl, CURLOPT_HTTP_TRANSFER_DECODING, 0L);
+        }
+
+        /* curl 7.17.1 */
+        if(!config->nokeepalive) {
+          my_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
+          if(config->alivetime != 0) {
+            my_setopt(curl, CURLOPT_TCP_KEEPIDLE, config->alivetime);
+            my_setopt(curl, CURLOPT_TCP_KEEPINTVL, config->alivetime);
+          }
+        }
+        else
+          my_setopt(curl, CURLOPT_TCP_KEEPALIVE, 0L);
+
+        /* curl 7.20.0 */
+        if(config->tftp_blksize)
+          my_setopt(curl, CURLOPT_TFTP_BLKSIZE, config->tftp_blksize);
+
+        if(config->mail_from)
+          my_setopt_str(curl, CURLOPT_MAIL_FROM, config->mail_from);
+
+        if(config->mail_rcpt)
+          my_setopt_slist(curl, CURLOPT_MAIL_RCPT, config->mail_rcpt);
+
+        /* curl 7.20.x */
+        if(config->ftp_pret)
+          my_setopt(curl, CURLOPT_FTP_USE_PRET, 1L);
+
+        if(config->proto_present)
+          my_setopt_flags(curl, CURLOPT_PROTOCOLS, config->proto);
+        if(config->proto_redir_present)
+          my_setopt_flags(curl, CURLOPT_REDIR_PROTOCOLS, config->proto_redir);
+
+        if(config->content_disposition
+           && (urlnode->flags & GETOUT_USEREMOTE))
+          hdrcbdata.honor_cd_filename = TRUE;
+        else
+          hdrcbdata.honor_cd_filename = FALSE;
+
+        hdrcbdata.outs = &outs;
+        hdrcbdata.heads = &heads;
+
+        my_setopt(curl, CURLOPT_HEADERFUNCTION, tool_header_cb);
+        my_setopt(curl, CURLOPT_HEADERDATA, &hdrcbdata);
+
+        if(config->resolve)
+          /* new in 7.21.3 */
+          my_setopt_slist(curl, CURLOPT_RESOLVE, config->resolve);
+
+        if(config->connect_to)
+          /* new in 7.49.0 */
+          my_setopt_slist(curl, CURLOPT_CONNECT_TO, config->connect_to);
+
+        /* new in 7.21.4 */
+        if(curlinfo->features & CURL_VERSION_TLSAUTH_SRP) {
+          if(config->tls_username)
+            my_setopt_str(curl, CURLOPT_TLSAUTH_USERNAME,
+                          config->tls_username);
+          if(config->tls_password)
+            my_setopt_str(curl, CURLOPT_TLSAUTH_PASSWORD,
+                          config->tls_password);
+          if(config->tls_authtype)
+            my_setopt_str(curl, CURLOPT_TLSAUTH_TYPE,
+                          config->tls_authtype);
+          if(config->proxy_tls_username)
+            my_setopt_str(curl, CURLOPT_PROXY_TLSAUTH_USERNAME,
+                          config->proxy_tls_username);
+          if(config->proxy_tls_password)
+            my_setopt_str(curl, CURLOPT_PROXY_TLSAUTH_PASSWORD,
+                          config->proxy_tls_password);
+          if(config->proxy_tls_authtype)
+            my_setopt_str(curl, CURLOPT_PROXY_TLSAUTH_TYPE,
+                          config->proxy_tls_authtype);
+        }
+
+        /* new in 7.22.0 */
+        if(config->gssapi_delegation)
+          my_setopt_str(curl, CURLOPT_GSSAPI_DELEGATION,
+                        config->gssapi_delegation);
+
+        /* new in 7.25.0 and 7.44.0 */
+        {
+          long mask = (config->ssl_allow_beast ? CURLSSLOPT_ALLOW_BEAST : 0) |
+                      (config->ssl_no_revoke ? CURLSSLOPT_NO_REVOKE : 0);
+          if(mask)
+            my_setopt_bitmask(curl, CURLOPT_SSL_OPTIONS, mask);
+        }
+
+        if(config->proxy_ssl_allow_beast)
+          my_setopt(curl, CURLOPT_PROXY_SSL_OPTIONS,
+                    (long)CURLSSLOPT_ALLOW_BEAST);
+
+        if(config->mail_auth)
+          my_setopt_str(curl, CURLOPT_MAIL_AUTH, config->mail_auth);
+
+        /* new in 7.31.0 */
+        if(config->sasl_ir)
+          my_setopt(curl, CURLOPT_SASL_IR, 1L);
+
+        if(config->nonpn) {
+          my_setopt(curl, CURLOPT_SSL_ENABLE_NPN, 0L);
+        }
+
+        if(config->noalpn) {
+          my_setopt(curl, CURLOPT_SSL_ENABLE_ALPN, 0L);
+        }
+
+        /* new in 7.40.0, abstract support added in 7.53.0 */
+        if(config->unix_socket_path) {
+          if(config->abstract_unix_socket) {
+            my_setopt_str(curl, CURLOPT_ABSTRACT_UNIX_SOCKET,
+                          config->unix_socket_path);
+          }
+          else {
+            my_setopt_str(curl, CURLOPT_UNIX_SOCKET_PATH,
+                          config->unix_socket_path);
+          }
+        }
+        /* new in 7.45.0 */
+        if(config->proto_default)
+          my_setopt_str(curl, CURLOPT_DEFAULT_PROTOCOL, config->proto_default);
+
+        /* new in 7.47.0 */
+        if(config->expect100timeout > 0)
+          my_setopt_str(curl, CURLOPT_EXPECT_100_TIMEOUT_MS,
+                        (long)(config->expect100timeout*1000));
+
+        /* new in 7.48.0 */
+        if(config->tftp_no_options)
+          my_setopt(curl, CURLOPT_TFTP_NO_OPTIONS, 1L);
+
+        /* initialize retry vars for loop below */
+        retry_sleep_default = (config->retry_delay) ?
+          config->retry_delay*1000L : RETRY_SLEEP_DEFAULT; /* ms */
+
+        retry_numretries = config->req_retry;
+        retry_sleep = retry_sleep_default; /* ms */
+        retrystart = tvnow();
+
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+        if(global->libcurl) {
+          result = easysrc_perform();
+          if(result)
+            goto show_error;
+        }
+#endif
+
+        for(;;) {
+#ifdef USE_METALINK
+          if(!metalink && config->use_metalink) {
+            /* If outs.metalink_parser is non-NULL, delete it first. */
+            if(outs.metalink_parser)
+              metalink_parser_context_delete(outs.metalink_parser);
+            outs.metalink_parser = metalink_parser_context_new();
+            if(outs.metalink_parser == NULL) {
+              result = CURLE_OUT_OF_MEMORY;
+              goto show_error;
+            }
+            fprintf(config->global->errors,
+                    "Metalink: parsing (%s) metalink/XML...\n", this_url);
+          }
+          else if(metalink)
+            fprintf(config->global->errors,
+                    "Metalink: fetching (%s) from (%s)...\n",
+                    mlfile->filename, this_url);
+#endif /* USE_METALINK */
+
+#ifdef CURLDEBUG
+          if(config->test_event_based)
+            result = curl_easy_perform_ev(curl);
+          else
+#endif
+          result = curl_easy_perform(curl);
+
+          if(!result && !outs.stream && !outs.bytes) {
+            /* we have received no data despite the transfer was successful
+               ==> force cration of an empty output file (if an output file
+               was specified) */
+            long cond_unmet = 0L;
+            /* do not create (or even overwrite) the file in case we get no
+               data because of unmet condition */
+            curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &cond_unmet);
+            if(!cond_unmet && !tool_create_output_file(&outs))
+              result = CURLE_WRITE_ERROR;
+          }
+
+          if(outs.is_cd_filename && outs.stream && !global->mute &&
+             outs.filename)
+            printf("curl: Saved to filename '%s'\n", outs.filename);
+
+          /* if retry-max-time is non-zero, make sure we haven't exceeded the
+             time */
+          if(retry_numretries &&
+             (!config->retry_maxtime ||
+              (tvdiff(tvnow(), retrystart) <
+               config->retry_maxtime*1000L)) ) {
+            enum {
+              RETRY_NO,
+              RETRY_TIMEOUT,
+              RETRY_CONNREFUSED,
+              RETRY_HTTP,
+              RETRY_FTP,
+              RETRY_LAST /* not used */
+            } retry = RETRY_NO;
+            long response;
+            if((CURLE_OPERATION_TIMEDOUT == result) ||
+               (CURLE_COULDNT_RESOLVE_HOST == result) ||
+               (CURLE_COULDNT_RESOLVE_PROXY == result) ||
+               (CURLE_FTP_ACCEPT_TIMEOUT == result))
+              /* retry timeout always */
+              retry = RETRY_TIMEOUT;
+            else if(config->retry_connrefused &&
+                    (CURLE_COULDNT_CONNECT == result)) {
+              long oserrno;
+              curl_easy_getinfo(curl, CURLINFO_OS_ERRNO, &oserrno);
+              if(ECONNREFUSED == oserrno)
+                retry = RETRY_CONNREFUSED;
+            }
+            else if((CURLE_OK == result) ||
+                    (config->failonerror &&
+                     (CURLE_HTTP_RETURNED_ERROR == result))) {
+              /* If it returned OK. _or_ failonerror was enabled and it
+                 returned due to such an error, check for HTTP transient
+                 errors to retry on. */
+              char *effective_url = NULL;
+              curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &effective_url);
+              if(effective_url &&
+                 checkprefix("http", effective_url)) {
+                /* This was HTTP(S) */
+                curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response);
+
+                switch(response) {
+                case 500: /* Internal Server Error */
+                case 502: /* Bad Gateway */
+                case 503: /* Service Unavailable */
+                case 504: /* Gateway Timeout */
+                  retry = RETRY_HTTP;
+                  /*
+                   * At this point, we have already written data to the output
+                   * file (or terminal). If we write to a file, we must rewind
+                   * or close/re-open the file so that the next attempt starts
+                   * over from the beginning.
+                   *
+                   * TODO: similar action for the upload case. We might need
+                   * to start over reading from a previous point if we have
+                   * uploaded something when this was returned.
+                   */
+                  break;
+                }
+              }
+            } /* if CURLE_OK */
+            else if(result) {
+              curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response);
+
+              if(response/100 == 4)
+                /*
+                 * This is typically when the FTP server only allows a certain
+                 * amount of users and we are not one of them.  All 4xx codes
+                 * are transient.
+                 */
+                retry = RETRY_FTP;
+            }
+
+            if(retry) {
+              static const char * const m[]={
+                NULL,
+                "timeout",
+                "connection refused",
+                "HTTP error",
+                "FTP error"
+              };
+
+              warnf(config->global, "Transient problem: %s "
+                    "Will retry in %ld seconds. "
+                    "%ld retries left.\n",
+                    m[retry], retry_sleep/1000L, retry_numretries);
+
+              tool_go_sleep(retry_sleep);
+              retry_numretries--;
+              if(!config->retry_delay) {
+                retry_sleep *= 2;
+                if(retry_sleep > RETRY_SLEEP_MAX)
+                  retry_sleep = RETRY_SLEEP_MAX;
+              }
+              if(outs.bytes && outs.filename && outs.stream) {
+                /* We have written data to a output file, we truncate file
+                 */
+                if(!global->mute)
+                  fprintf(global->errors, "Throwing away %"
+                          CURL_FORMAT_CURL_OFF_T " bytes\n",
+                          outs.bytes);
+                fflush(outs.stream);
+                /* truncate file at the position where we started appending */
+#ifdef HAVE_FTRUNCATE
+                if(ftruncate(fileno(outs.stream), outs.init)) {
+                  /* when truncate fails, we can't just append as then we'll
+                     create something strange, bail out */
+                  if(!global->mute)
+                    fprintf(global->errors,
+                            "failed to truncate, exiting\n");
+                  result = CURLE_WRITE_ERROR;
+                  goto quit_urls;
+                }
+                /* now seek to the end of the file, the position where we
+                   just truncated the file in a large file-safe way */
+                fseek(outs.stream, 0, SEEK_END);
+#else
+                /* ftruncate is not available, so just reposition the file
+                   to the location we would have truncated it. This won't
+                   work properly with large files on 32-bit systems, but
+                   most of those will have ftruncate. */
+                fseek(outs.stream, (long)outs.init, SEEK_SET);
+#endif
+                outs.bytes = 0; /* clear for next round */
+              }
+              continue; /* curl_easy_perform loop */
+            }
+          } /* if retry_numretries */
+          else if(metalink) {
+            /* Metalink: Decide to try the next resource or
+               not. Basically, we want to try the next resource if
+               download was not successful. */
+            long response;
+            if(CURLE_OK == result) {
+              /* TODO We want to try next resource when download was
+                 not successful. How to know that? */
+              char *effective_url = NULL;
+              curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &effective_url);
+              if(effective_url &&
+                 curl_strnequal(effective_url, "http", 4)) {
+                /* This was HTTP(S) */
+                curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response);
+                if(response != 200 && response != 206) {
+                  metalink_next_res = 1;
+                  fprintf(global->errors,
+                          "Metalink: fetching (%s) from (%s) FAILED "
+                          "(HTTP status code %ld)\n",
+                          mlfile->filename, this_url, response);
+                }
+              }
+            }
+            else {
+              metalink_next_res = 1;
+              fprintf(global->errors,
+                      "Metalink: fetching (%s) from (%s) FAILED (%s)\n",
+                      mlfile->filename, this_url,
+                      (errorbuffer[0]) ?
+                      errorbuffer : curl_easy_strerror(result));
+            }
+          }
+          if(metalink && !metalink_next_res)
+            fprintf(global->errors, "Metalink: fetching (%s) from (%s) OK\n",
+                    mlfile->filename, this_url);
+
+          /* In all ordinary cases, just break out of loop here */
+          break; /* curl_easy_perform loop */
+
+        }
+
+        if((global->progressmode == CURL_PROGRESS_BAR) &&
+           progressbar.calls)
+          /* if the custom progress bar has been displayed, we output a
+             newline here */
+          fputs("\n", progressbar.out);
+
+        if(config->writeout)
+          ourWriteOut(curl, &outs, config->writeout);
+
+        /*
+        ** Code within this loop may jump directly here to label 'show_error'
+        ** in order to display an error message for CURLcode stored in 'res'
+        ** variable and exit loop once that necessary writing and cleanup
+        ** in label 'quit_urls' has been done.
+        */
+
+        show_error:
+
+#ifdef __VMS
+        if(is_vms_shell()) {
+          /* VMS DCL shell behavior */
+          if(!global->showerror)
+            vms_show = VMSSTS_HIDE;
+        }
+        else
+#endif
+        if(result && global->showerror) {
+          fprintf(global->errors, "curl: (%d) %s\n", result, (errorbuffer[0]) ?
+                  errorbuffer : curl_easy_strerror(result));
+          if(result == CURLE_SSL_CACERT)
+            fprintf(global->errors, "%s%s%s",
+                    CURL_CA_CERT_ERRORMSG1, CURL_CA_CERT_ERRORMSG2,
+                    ((curlinfo->features & CURL_VERSION_HTTPS_PROXY) ?
+                     "HTTPS-proxy has similar options --proxy-cacert "
+                     "and --proxy-insecure.\n" :
+                     ""));
+        }
+
+        /* Fall through comment to 'quit_urls' label */
+
+        /*
+        ** Upon error condition and always that a message has already been
+        ** displayed, code within this loop may jump directly here to label
+        ** 'quit_urls' otherwise it should jump to 'show_error' label above.
+        **
+        ** When 'res' variable is _not_ CURLE_OK loop will exit once that
+        ** all code following 'quit_urls' has been executed. Otherwise it
+        ** will loop to the beginning from where it may exit if there are
+        ** no more urls left.
+        */
+
+        quit_urls:
+
+        /* Set file extended attributes */
+        if(!result && config->xattr && outs.fopened && outs.stream) {
+          int rc = fwrite_xattr(curl, fileno(outs.stream));
+          if(rc)
+            warnf(config->global, "Error setting extended attributes: %s\n",
+                  strerror(errno));
+        }
+
+        /* Close the file */
+        if(outs.fopened && outs.stream) {
+          int rc = fclose(outs.stream);
+          if(!result && rc) {
+            /* something went wrong in the writing process */
+            result = CURLE_WRITE_ERROR;
+            fprintf(global->errors, "(%d) Failed writing body\n", result);
+          }
+        }
+        else if(!outs.s_isreg && outs.stream) {
+          /* Dump standard stream buffered data */
+          int rc = fflush(outs.stream);
+          if(!result && rc) {
+            /* something went wrong in the writing process */
+            result = CURLE_WRITE_ERROR;
+            fprintf(global->errors, "(%d) Failed writing body\n", result);
+          }
+        }
+
+#ifdef __AMIGA__
+        if(!result && outs.s_isreg && outs.filename) {
+          /* Set the url (up to 80 chars) as comment for the file */
+          if(strlen(url) > 78)
+            url[79] = '\0';
+          SetComment(outs.filename, url);
+        }
+#endif
+
+#if defined(HAVE_UTIME) || \
+    (defined(WIN32) && (CURL_SIZEOF_CURL_OFF_T >= 8))
+        /* File time can only be set _after_ the file has been closed */
+        if(!result && config->remote_time && outs.s_isreg && outs.filename) {
+          /* Ask libcurl if we got a remote file time */
+          long filetime = -1;
+          curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime);
+          if(filetime >= 0)
+            setfiletime(filetime, outs.filename, config->global->errors);
+        }
+#endif /* defined(HAVE_UTIME) || \
+          (defined(WIN32) && (CURL_SIZEOF_CURL_OFF_T >= 8)) */
+
+#ifdef USE_METALINK
+        if(!metalink && config->use_metalink && result == CURLE_OK) {
+          int rv = parse_metalink(config, &outs, this_url);
+          if(rv == 0)
+            fprintf(config->global->errors, "Metalink: parsing (%s) OK\n",
+                    this_url);
+          else if(rv == -1)
+            fprintf(config->global->errors, "Metalink: parsing (%s) FAILED\n",
+                    this_url);
+        }
+        else if(metalink && result == CURLE_OK && !metalink_next_res) {
+          int rv = metalink_check_hash(global, mlfile, outs.filename);
+          if(rv == 0) {
+            metalink_next_res = 1;
+          }
+        }
+#endif /* USE_METALINK */
+
+        /* No more business with this output struct */
+        if(outs.alloc_filename)
+          Curl_safefree(outs.filename);
+#ifdef USE_METALINK
+        if(outs.metalink_parser)
+          metalink_parser_context_delete(outs.metalink_parser);
+#endif /* USE_METALINK */
+        memset(&outs, 0, sizeof(struct OutStruct));
+        hdrcbdata.outs = NULL;
+
+        /* Free loop-local allocated memory and close loop-local opened fd */
+
+        Curl_safefree(outfile);
+        Curl_safefree(this_url);
+
+        if(infdopen)
+          close(infd);
+
+        if(metalink) {
+          /* Should exit if error is fatal. */
+          if(is_fatal_error(result)) {
+            break;
+          }
+          if(!metalink_next_res)
+            break;
+          mlres = mlres->next;
+          if(mlres == NULL)
+            /* TODO If metalink_next_res is 1 and mlres is NULL,
+             * set res to error code
+             */
+            break;
+        }
+        else
+        if(urlnum > 1) {
+          /* when url globbing, exit loop upon critical error */
+          if(is_fatal_error(result))
+            break;
+        }
+        else if(result)
+          /* when not url globbing, exit loop upon any error */
+          break;
+
+      } /* loop to the next URL */
+
+      /* Free loop-local allocated memory */
+
+      Curl_safefree(uploadfile);
+
+      if(urls) {
+        /* Free list of remaining URLs */
+        glob_cleanup(urls);
+        urls = NULL;
+      }
+
+      if(infilenum > 1) {
+        /* when file globbing, exit loop upon critical error */
+        if(is_fatal_error(result))
+          break;
+      }
+      else if(result)
+        /* when not file globbing, exit loop upon any error */
+        break;
+
+    } /* loop to the next globbed upload file */
+
+    /* Free loop-local allocated memory */
+
+    Curl_safefree(outfiles);
+
+    if(inglob) {
+      /* Free list of globbed upload files */
+      glob_cleanup(inglob);
+      inglob = NULL;
+    }
+
+    /* Free this URL node data without destroying the
+       the node itself nor modifying next pointer. */
+    Curl_safefree(urlnode->url);
+    Curl_safefree(urlnode->outfile);
+    Curl_safefree(urlnode->infile);
+    urlnode->flags = 0;
+
+    /*
+    ** Bail out upon critical errors or --fail-early
+    */
+    if(is_fatal_error(result) || (result && global->fail_early))
+      goto quit_curl;
+
+  } /* for-loop through all URLs */
+
+  /*
+  ** Nested loops end here.
+  */
+
+  quit_curl:
+
+  /* Reset the global config variables */
+  global->noprogress = orig_noprogress;
+  global->isatty = orig_isatty;
+
+  /* Free function-local referenced allocated memory */
+  Curl_safefree(httpgetfields);
+
+  /* Free list of given URLs */
+  clean_getout(config);
+
+  hdrcbdata.heads = NULL;
+
+  /* Close function-local opened file descriptors */
+  if(heads.fopened && heads.stream)
+    fclose(heads.stream);
+
+  if(heads.alloc_filename)
+    Curl_safefree(heads.filename);
+
+  /* Release metalink related resources here */
+  clean_metalink(config);
+
+  return result;
+}
+
+CURLcode operate(struct GlobalConfig *config, int argc, argv_item_t argv[])
+{
+  CURLcode result = CURLE_OK;
+
+  /* Setup proper locale from environment */
+#ifdef HAVE_SETLOCALE
+  setlocale(LC_ALL, "");
+#endif
+
+  /* Parse .curlrc if necessary */
+  if((argc == 1) ||
+     (!curl_strequal(argv[1], "-q") &&
+      !curl_strequal(argv[1], "--disable"))) {
+    parseconfig(NULL, config); /* ignore possible failure */
+
+    /* If we had no arguments then make sure a url was specified in .curlrc */
+    if((argc < 2) && (!config->first->url_list)) {
+      helpf(config->errors, NULL);
+      result = CURLE_FAILED_INIT;
+    }
+  }
+
+  if(!result) {
+    /* Parse the command line arguments */
+    ParameterError res = parse_args(config, argc, argv);
+    if(res) {
+      result = CURLE_OK;
+
+      /* Check if we were asked for the help */
+      if(res == PARAM_HELP_REQUESTED)
+        tool_help();
+      /* Check if we were asked for the manual */
+      else if(res == PARAM_MANUAL_REQUESTED)
+        hugehelp();
+      /* Check if we were asked for the version information */
+      else if(res == PARAM_VERSION_INFO_REQUESTED)
+        tool_version_info();
+      /* Check if we were asked to list the SSL engines */
+      else if(res == PARAM_ENGINES_REQUESTED)
+        tool_list_engines(config->easy);
+      else if(res == PARAM_LIBCURL_UNSUPPORTED_PROTOCOL)
+        result = CURLE_UNSUPPORTED_PROTOCOL;
+      else
+        result = CURLE_FAILED_INIT;
+    }
+    else {
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+      if(config->libcurl) {
+        /* Initialise the libcurl source output */
+        result = easysrc_init();
+      }
+#endif
+
+      /* Perform the main operations */
+      if(!result) {
+        size_t count = 0;
+        struct OperationConfig *operation = config->first;
+
+        /* Get the required aguments for each operation */
+        while(!result && operation) {
+          result = get_args(operation, count++);
+
+          operation = operation->next;
+        }
+
+        /* Set the current operation pointer */
+        config->current = config->first;
+
+        /* Perform each operation */
+        while(!result && config->current) {
+          result = operate_do(config, config->current);
+
+          config->current = config->current->next;
+
+          if(config->current && config->current->easy)
+            curl_easy_reset(config->current->easy);
+        }
+
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+        if(config->libcurl) {
+          /* Cleanup the libcurl source output */
+          easysrc_cleanup();
+
+          /* Dump the libcurl code if previously enabled */
+          dumpeasysrc(config);
+        }
+#endif
+      }
+      else
+        helpf(config->errors, "out of memory\n");
+    }
+  }
+
+  return result;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_operate.h b/ap/lib/libcurl/curl-7.54.1/src/tool_operate.h
new file mode 100644
index 0000000..c54fe3f
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_operate.h
@@ -0,0 +1,29 @@
+#ifndef HEADER_CURL_TOOL_OPERATE_H
+#define HEADER_CURL_TOOL_OPERATE_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 "tool_setup.h"
+
+CURLcode operate(struct GlobalConfig *config, int argc, argv_item_t argv[]);
+
+#endif /* HEADER_CURL_TOOL_OPERATE_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_operhlp.c b/ap/lib/libcurl/curl-7.54.1/src/tool_operhlp.c
new file mode 100644
index 0000000..21b5ffe
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_operhlp.c
@@ -0,0 +1,190 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2014, 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 "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_convert.h"
+#include "tool_doswin.h"
+#include "tool_operhlp.h"
+#include "tool_metalink.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+void clean_getout(struct OperationConfig *config)
+{
+  struct getout *next;
+  struct getout *node = config->url_list;
+
+  while(node) {
+    next = node->next;
+    Curl_safefree(node->url);
+    Curl_safefree(node->outfile);
+    Curl_safefree(node->infile);
+    Curl_safefree(node);
+    node = next;
+  }
+  config->url_list = NULL;
+}
+
+bool output_expected(const char *url, const char *uploadfile)
+{
+  if(!uploadfile)
+    return TRUE;  /* download */
+  if(checkprefix("http://", url) || checkprefix("https://", url))
+    return TRUE;   /* HTTP(S) upload */
+
+  return FALSE; /* non-HTTP upload, probably no output should be expected */
+}
+
+bool stdin_upload(const char *uploadfile)
+{
+  return (!strcmp(uploadfile, "-") ||
+          !strcmp(uploadfile, ".")) ? TRUE : FALSE;
+}
+
+/*
+ * Adds the file name to the URL if it doesn't already have one.
+ * url will be freed before return if the returned pointer is different
+ */
+char *add_file_name_to_url(CURL *curl, char *url, const char *filename)
+{
+  /* If no file name part is given in the URL, we add this file name */
+  char *ptr = strstr(url, "://");
+  if(ptr)
+    ptr += 3;
+  else
+    ptr = url;
+  ptr = strrchr(ptr, '/');
+  if(!ptr || !strlen(++ptr)) {
+    /* The URL has no file name part, add the local file name. In order
+       to be able to do so, we have to create a new URL in another
+       buffer.*/
+
+    /* We only want the part of the local path that is on the right
+       side of the rightmost slash and backslash. */
+    const char *filep = strrchr(filename, '/');
+    char *file2 = strrchr(filep?filep:filename, '\\');
+    char *encfile;
+
+    if(file2)
+      filep = file2 + 1;
+    else if(filep)
+      filep++;
+    else
+      filep = filename;
+
+    /* URL encode the file name */
+    encfile = curl_easy_escape(curl, filep, 0 /* use strlen */);
+    if(encfile) {
+      char *urlbuffer;
+      if(ptr)
+        /* there is a trailing slash on the URL */
+        urlbuffer = aprintf("%s%s", url, encfile);
+      else
+        /* there is no trailing slash on the URL */
+        urlbuffer = aprintf("%s/%s", url, encfile);
+
+      curl_free(encfile);
+      Curl_safefree(url);
+
+      if(!urlbuffer)
+        return NULL;
+
+      url = urlbuffer; /* use our new URL instead! */
+    }
+    else
+      Curl_safefree(url);
+  }
+  return url;
+}
+
+/* Extracts the name portion of the URL.
+ * Returns a pointer to a heap-allocated string or NULL if
+ * no name part, at location indicated by first argument.
+ */
+CURLcode get_url_file_name(char **filename, const char *url)
+{
+  const char *pc, *pc2;
+
+  *filename = NULL;
+
+  /* Find and get the remote file name */
+  pc = strstr(url, "://");
+  if(pc)
+    pc += 3;
+  else
+    pc = url;
+
+  pc2 = strrchr(pc, '\\');
+  pc = strrchr(pc, '/');
+  if(pc2 && (!pc || pc < pc2))
+    pc = pc2;
+
+  if(pc)
+    /* duplicate the string beyond the slash */
+    pc++;
+  else
+    /* no slash => empty string */
+    pc = "";
+
+  *filename = strdup(pc);
+  if(!*filename)
+    return CURLE_OUT_OF_MEMORY;
+
+#if defined(MSDOS) || defined(WIN32)
+  {
+    char *sanitized;
+    SANITIZEcode sc = sanitize_file_name(&sanitized, *filename, 0);
+    Curl_safefree(*filename);
+    if(sc)
+      return CURLE_URL_MALFORMAT;
+    *filename = sanitized;
+  }
+#endif /* MSDOS || WIN32 */
+
+  /* in case we built debug enabled, we allow an environment variable
+   * named CURL_TESTDIR to prefix the given file name to put it into a
+   * specific directory
+   */
+#ifdef DEBUGBUILD
+  {
+    char *tdir = curlx_getenv("CURL_TESTDIR");
+    if(tdir) {
+      char buffer[512]; /* suitably large */
+      snprintf(buffer, sizeof(buffer), "%s/%s", tdir, *filename);
+      Curl_safefree(*filename);
+      *filename = strdup(buffer); /* clone the buffer */
+      curl_free(tdir);
+      if(!*filename)
+        return CURLE_OUT_OF_MEMORY;
+    }
+  }
+#endif
+
+  return CURLE_OK;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_operhlp.h b/ap/lib/libcurl/curl-7.54.1/src/tool_operhlp.h
new file mode 100644
index 0000000..446c560
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_operhlp.h
@@ -0,0 +1,39 @@
+#ifndef HEADER_CURL_TOOL_OPERHLP_H
+#define HEADER_CURL_TOOL_OPERHLP_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 "tool_setup.h"
+
+struct OperationConfig;
+
+void clean_getout(struct OperationConfig *config);
+
+bool output_expected(const char *url, const char *uploadfile);
+
+bool stdin_upload(const char *uploadfile);
+
+char *add_file_name_to_url(CURL *curl, char *url, const char *filename);
+
+CURLcode get_url_file_name(char **filename, const char *url);
+
+#endif /* HEADER_CURL_TOOL_OPERHLP_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_panykey.c b/ap/lib/libcurl/curl-7.54.1/src/tool_panykey.c
new file mode 100644
index 0000000..14e1e05
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_panykey.c
@@ -0,0 +1,48 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#if defined(__SYMBIAN32__) || defined(NETWARE)
+
+#ifdef NETWARE
+#  ifdef __NOVELL_LIBC__
+#    include <screen.h>
+#  else
+#    include <nwconio.h>
+#  endif
+#endif
+
+#include "tool_panykey.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+void tool_pressanykey(void)
+{
+#if defined(__SYMBIAN32__)
+  getchar();
+#elif defined(NETWARE)
+  pressanykey();
+#endif
+}
+
+#endif /* __SYMBIAN32__ || NETWARE */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_panykey.h b/ap/lib/libcurl/curl-7.54.1/src/tool_panykey.h
new file mode 100644
index 0000000..9d64418
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_panykey.h
@@ -0,0 +1,37 @@
+#ifndef HEADER_CURL_TOOL_PANYKEY_H
+#define HEADER_CURL_TOOL_PANYKEY_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 "tool_setup.h"
+
+#if defined(__SYMBIAN32__) || defined(NETWARE)
+
+void tool_pressanykey(void);
+
+#else
+
+#define tool_pressanykey() Curl_nop_stmt
+
+#endif
+
+#endif /* HEADER_CURL_TOOL_PANYKEY_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_paramhlp.c b/ap/lib/libcurl/curl-7.54.1/src/tool_paramhlp.c
new file mode 100644
index 0000000..6b534ce
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_paramhlp.c
@@ -0,0 +1,585 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "strcase.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_getparam.h"
+#include "tool_getpass.h"
+#include "tool_homedir.h"
+#include "tool_msgs.h"
+#include "tool_paramhlp.h"
+#include "tool_version.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+struct getout *new_getout(struct OperationConfig *config)
+{
+  struct getout *node = calloc(1, sizeof(struct getout));
+  struct getout *last = config->url_last;
+  if(node) {
+    /* append this new node last in the list */
+    if(last)
+      last->next = node;
+    else
+      config->url_list = node; /* first node */
+
+    /* move the last pointer */
+    config->url_last = node;
+
+    node->flags = config->default_node_flags;
+  }
+  return node;
+}
+
+ParameterError file2string(char **bufp, FILE *file)
+{
+  char buffer[256];
+  char *ptr;
+  char *string = NULL;
+  size_t stringlen = 0;
+  size_t buflen;
+
+  if(file) {
+    while(fgets(buffer, sizeof(buffer), file)) {
+      ptr = strchr(buffer, '\r');
+      if(ptr)
+        *ptr = '\0';
+      ptr = strchr(buffer, '\n');
+      if(ptr)
+        *ptr = '\0';
+      buflen = strlen(buffer);
+      ptr = realloc(string, stringlen+buflen+1);
+      if(!ptr) {
+        Curl_safefree(string);
+        return PARAM_NO_MEM;
+      }
+      string = ptr;
+      strcpy(string+stringlen, buffer);
+      stringlen += buflen;
+    }
+  }
+  *bufp = string;
+  return PARAM_OK;
+}
+
+ParameterError file2memory(char **bufp, size_t *size, FILE *file)
+{
+  char *newbuf;
+  char *buffer = NULL;
+  size_t alloc = 512;
+  size_t nused = 0;
+  size_t nread;
+
+  if(file) {
+    do {
+      if(!buffer || (alloc == nused)) {
+        /* size_t overflow detection for huge files */
+        if(alloc+1 > ((size_t)-1)/2) {
+          Curl_safefree(buffer);
+          return PARAM_NO_MEM;
+        }
+        alloc *= 2;
+        /* allocate an extra char, reserved space, for null termination */
+        newbuf = realloc(buffer, alloc+1);
+        if(!newbuf) {
+          Curl_safefree(buffer);
+          return PARAM_NO_MEM;
+        }
+        buffer = newbuf;
+      }
+      nread = fread(buffer+nused, 1, alloc-nused, file);
+      nused += nread;
+    } while(nread);
+    /* null terminate the buffer in case it's used as a string later */
+    buffer[nused] = '\0';
+    /* free trailing slack space, if possible */
+    if(alloc != nused) {
+      newbuf = realloc(buffer, nused+1);
+      if(!newbuf) {
+        Curl_safefree(buffer);
+        return PARAM_NO_MEM;
+      }
+      buffer = newbuf;
+    }
+    /* discard buffer if nothing was read */
+    if(!nused) {
+      Curl_safefree(buffer); /* no string */
+    }
+  }
+  *size = nused;
+  *bufp = buffer;
+  return PARAM_OK;
+}
+
+void cleanarg(char *str)
+{
+#ifdef HAVE_WRITABLE_ARGV
+  /* now that GetStr has copied the contents of nextarg, wipe the next
+   * argument out so that the username:password isn't displayed in the
+   * system process list */
+  if(str) {
+    size_t len = strlen(str);
+    memset(str, ' ', len);
+  }
+#else
+  (void)str;
+#endif
+}
+
+/*
+ * Parse the string and write the long in the given address. Return PARAM_OK
+ * on success, otherwise a parameter specific error enum.
+ *
+ * Since this function gets called with the 'nextarg' pointer from within the
+ * getparameter a lot, we must check it for NULL before accessing the str
+ * data.
+ */
+
+ParameterError str2num(long *val, const char *str)
+{
+  if(str) {
+    char *endptr;
+    long num = strtol(str, &endptr, 10);
+    if((endptr != str) && (endptr == str + strlen(str))) {
+      *val = num;
+      return PARAM_OK;  /* Ok */
+    }
+  }
+  return PARAM_BAD_NUMERIC; /* badness */
+}
+
+/*
+ * Parse the string and write the long in the given address. Return PARAM_OK
+ * on success, otherwise a parameter error enum. ONLY ACCEPTS POSITIVE NUMBERS!
+ *
+ * Since this function gets called with the 'nextarg' pointer from within the
+ * getparameter a lot, we must check it for NULL before accessing the str
+ * data.
+ */
+
+ParameterError str2unum(long *val, const char *str)
+{
+  ParameterError result = str2num(val, str);
+  if(result != PARAM_OK)
+    return result;
+  if(*val < 0)
+    return PARAM_NEGATIVE_NUMERIC;
+
+  return PARAM_OK;
+}
+
+/*
+ * Parse the string and write the double in the given address. Return PARAM_OK
+ * on success, otherwise a parameter specific error enum.
+ *
+ * Since this function gets called with the 'nextarg' pointer from within the
+ * getparameter a lot, we must check it for NULL before accessing the str
+ * data.
+ */
+
+ParameterError str2double(double *val, const char *str)
+{
+  if(str) {
+    char *endptr;
+    double num = strtod(str, &endptr);
+    if((endptr != str) && (endptr == str + strlen(str))) {
+      *val = num;
+      return PARAM_OK;  /* Ok */
+    }
+  }
+  return PARAM_BAD_NUMERIC; /* badness */
+}
+
+/*
+ * Parse the string and write the double in the given address. Return PARAM_OK
+ * on success, otherwise a parameter error enum. ONLY ACCEPTS POSITIVE NUMBERS!
+ *
+ * Since this function gets called with the 'nextarg' pointer from within the
+ * getparameter a lot, we must check it for NULL before accessing the str
+ * data.
+ */
+
+ParameterError str2udouble(double *val, const char *str)
+{
+  ParameterError result = str2double(val, str);
+  if(result != PARAM_OK)
+    return result;
+  if(*val < 0)
+    return PARAM_NEGATIVE_NUMERIC;
+
+  return PARAM_OK;
+}
+
+/*
+ * Parse the string and modify the long in the given address. Return
+ * non-zero on failure, zero on success.
+ *
+ * The string is a list of protocols
+ *
+ * Since this function gets called with the 'nextarg' pointer from within the
+ * getparameter a lot, we must check it for NULL before accessing the str
+ * data.
+ */
+
+long proto2num(struct OperationConfig *config, long *val, const char *str)
+{
+  char *buffer;
+  const char *sep = ",";
+  char *token;
+
+  static struct sprotos {
+    const char *name;
+    long bit;
+  } const protos[] = {
+    { "all", CURLPROTO_ALL },
+    { "http", CURLPROTO_HTTP },
+    { "https", CURLPROTO_HTTPS },
+    { "ftp", CURLPROTO_FTP },
+    { "ftps", CURLPROTO_FTPS },
+    { "scp", CURLPROTO_SCP },
+    { "sftp", CURLPROTO_SFTP },
+    { "telnet", CURLPROTO_TELNET },
+    { "ldap", CURLPROTO_LDAP },
+    { "ldaps", CURLPROTO_LDAPS },
+    { "dict", CURLPROTO_DICT },
+    { "file", CURLPROTO_FILE },
+    { "tftp", CURLPROTO_TFTP },
+    { "imap", CURLPROTO_IMAP },
+    { "imaps", CURLPROTO_IMAPS },
+    { "pop3", CURLPROTO_POP3 },
+    { "pop3s", CURLPROTO_POP3S },
+    { "smtp", CURLPROTO_SMTP },
+    { "smtps", CURLPROTO_SMTPS },
+    { "rtsp", CURLPROTO_RTSP },
+    { "gopher", CURLPROTO_GOPHER },
+    { "smb", CURLPROTO_SMB },
+    { "smbs", CURLPROTO_SMBS },
+    { NULL, 0 }
+  };
+
+  if(!str)
+    return 1;
+
+  buffer = strdup(str); /* because strtok corrupts it */
+  if(!buffer)
+    return 1;
+
+  /* Allow strtok() here since this isn't used threaded */
+  /* !checksrc! disable BANNEDFUNC 2 */
+  for(token = strtok(buffer, sep);
+      token;
+      token = strtok(NULL, sep)) {
+    enum e_action { allow, deny, set } action = allow;
+
+    struct sprotos const *pp;
+
+    /* Process token modifiers */
+    while(!ISALNUM(*token)) { /* may be NULL if token is all modifiers */
+      switch (*token++) {
+      case '=':
+        action = set;
+        break;
+      case '-':
+        action = deny;
+        break;
+      case '+':
+        action = allow;
+        break;
+      default: /* Includes case of terminating NULL */
+        Curl_safefree(buffer);
+        return 1;
+      }
+    }
+
+    for(pp=protos; pp->name; pp++) {
+      if(curl_strequal(token, pp->name)) {
+        switch(action) {
+        case deny:
+          *val &= ~(pp->bit);
+          break;
+        case allow:
+          *val |= pp->bit;
+          break;
+        case set:
+          *val = pp->bit;
+          break;
+        }
+        break;
+      }
+    }
+
+    if(!(pp->name)) { /* unknown protocol */
+      /* If they have specified only this protocol, we say treat it as
+         if no protocols are allowed */
+      if(action == set)
+        *val = 0;
+      warnf(config->global, "unrecognized protocol '%s'\n", token);
+    }
+  }
+  Curl_safefree(buffer);
+  return 0;
+}
+
+/**
+ * Check if the given string is a protocol supported by libcurl
+ *
+ * @param str  the protocol name
+ * @return PARAM_OK  protocol supported
+ * @return PARAM_LIBCURL_UNSUPPORTED_PROTOCOL  protocol not supported
+ * @return PARAM_REQUIRES_PARAMETER   missing parameter
+ */
+int check_protocol(const char *str)
+{
+  const char * const *pp;
+  const curl_version_info_data *curlinfo = curl_version_info(CURLVERSION_NOW);
+  if(!str)
+    return PARAM_REQUIRES_PARAMETER;
+  for(pp = curlinfo->protocols; *pp; pp++) {
+    if(curl_strequal(*pp, str))
+      return PARAM_OK;
+  }
+  return PARAM_LIBCURL_UNSUPPORTED_PROTOCOL;
+}
+
+/**
+ * Parses the given string looking for an offset (which may be a
+ * larger-than-integer value). The offset CANNOT be negative!
+ *
+ * @param val  the offset to populate
+ * @param str  the buffer containing the offset
+ * @return PARAM_OK if successful, a parameter specific error enum if failure.
+ */
+ParameterError str2offset(curl_off_t *val, const char *str)
+{
+  char *endptr;
+  if(str[0] == '-')
+    /* offsets aren't negative, this indicates weird input */
+    return PARAM_NEGATIVE_NUMERIC;
+
+#if(CURL_SIZEOF_CURL_OFF_T > CURL_SIZEOF_LONG)
+  *val = curlx_strtoofft(str, &endptr, 0);
+  if((*val == CURL_OFF_T_MAX || *val == CURL_OFF_T_MIN) && (ERRNO == ERANGE))
+    return PARAM_BAD_NUMERIC;
+#else
+  *val = strtol(str, &endptr, 0);
+  if((*val == LONG_MIN || *val == LONG_MAX) && ERRNO == ERANGE)
+    return PARAM_BAD_NUMERIC;
+#endif
+  if((endptr != str) && (endptr == str + strlen(str)))
+    return PARAM_OK;
+
+  return PARAM_BAD_NUMERIC;
+}
+
+static CURLcode checkpasswd(const char *kind, /* for what purpose */
+                            const size_t i,   /* operation index */
+                            const bool last,  /* TRUE if last operation */
+                            char **userpwd)   /* pointer to allocated string */
+{
+  char *psep;
+  char *osep;
+
+  if(!*userpwd)
+    return CURLE_OK;
+
+  /* Attempt to find the password separator */
+  psep = strchr(*userpwd, ':');
+
+  /* Attempt to find the options separator */
+  osep = strchr(*userpwd, ';');
+
+  if(!psep && **userpwd != ';') {
+    /* no password present, prompt for one */
+    char passwd[256] = "";
+    char prompt[256];
+    size_t passwdlen;
+    size_t userlen = strlen(*userpwd);
+    char *passptr;
+
+    if(osep)
+      *osep = '\0';
+
+    /* build a nice-looking prompt */
+    if(!i && last)
+      curlx_msnprintf(prompt, sizeof(prompt),
+                      "Enter %s password for user '%s':",
+                      kind, *userpwd);
+    else
+      curlx_msnprintf(prompt, sizeof(prompt),
+                      "Enter %s password for user '%s' on URL #%"
+                      CURL_FORMAT_CURL_OFF_TU ":",
+                      kind, *userpwd, (curl_off_t) (i + 1));
+
+    /* get password */
+    getpass_r(prompt, passwd, sizeof(passwd));
+    passwdlen = strlen(passwd);
+
+    if(osep)
+      *osep = ';';
+
+    /* extend the allocated memory area to fit the password too */
+    passptr = realloc(*userpwd,
+                      passwdlen + 1 + /* an extra for the colon */
+                      userlen + 1);   /* an extra for the zero */
+    if(!passptr)
+      return CURLE_OUT_OF_MEMORY;
+
+    /* append the password separated with a colon */
+    passptr[userlen] = ':';
+    memcpy(&passptr[userlen+1], passwd, passwdlen+1);
+    *userpwd = passptr;
+  }
+
+  return CURLE_OK;
+}
+
+ParameterError add2list(struct curl_slist **list, const char *ptr)
+{
+  struct curl_slist *newlist = curl_slist_append(*list, ptr);
+  if(newlist)
+    *list = newlist;
+  else
+    return PARAM_NO_MEM;
+
+  return PARAM_OK;
+}
+
+int ftpfilemethod(struct OperationConfig *config, const char *str)
+{
+  if(curl_strequal("singlecwd", str))
+    return CURLFTPMETHOD_SINGLECWD;
+  if(curl_strequal("nocwd", str))
+    return CURLFTPMETHOD_NOCWD;
+  if(curl_strequal("multicwd", str))
+    return CURLFTPMETHOD_MULTICWD;
+
+  warnf(config->global, "unrecognized ftp file method '%s', using default\n",
+        str);
+
+  return CURLFTPMETHOD_MULTICWD;
+}
+
+int ftpcccmethod(struct OperationConfig *config, const char *str)
+{
+  if(curl_strequal("passive", str))
+    return CURLFTPSSL_CCC_PASSIVE;
+  if(curl_strequal("active", str))
+    return CURLFTPSSL_CCC_ACTIVE;
+
+  warnf(config->global, "unrecognized ftp CCC method '%s', using default\n",
+        str);
+
+  return CURLFTPSSL_CCC_PASSIVE;
+}
+
+long delegation(struct OperationConfig *config, char *str)
+{
+  if(curl_strequal("none", str))
+    return CURLGSSAPI_DELEGATION_NONE;
+  if(curl_strequal("policy", str))
+    return CURLGSSAPI_DELEGATION_POLICY_FLAG;
+  if(curl_strequal("always", str))
+    return CURLGSSAPI_DELEGATION_FLAG;
+
+  warnf(config->global, "unrecognized delegation method '%s', using none\n",
+        str);
+
+  return CURLGSSAPI_DELEGATION_NONE;
+}
+
+/*
+ * my_useragent: returns allocated string with default user agent
+ */
+static char *my_useragent(void)
+{
+  return strdup(CURL_NAME "/" CURL_VERSION);
+}
+
+CURLcode get_args(struct OperationConfig *config, const size_t i)
+{
+  CURLcode result = CURLE_OK;
+  bool last = (config->next ? FALSE : TRUE);
+
+  /* Check we have a password for the given host user */
+  if(config->userpwd && !config->oauth_bearer) {
+    result = checkpasswd("host", i, last, &config->userpwd);
+    if(result)
+      return result;
+  }
+
+  /* Check we have a password for the given proxy user */
+  if(config->proxyuserpwd) {
+    result = checkpasswd("proxy", i, last, &config->proxyuserpwd);
+    if(result)
+      return result;
+  }
+
+  /* Check we have a user agent */
+  if(!config->useragent) {
+    config->useragent = my_useragent();
+    if(!config->useragent) {
+      helpf(config->global->errors, "out of memory\n");
+      result = CURLE_OUT_OF_MEMORY;
+    }
+  }
+
+  return result;
+}
+
+/*
+ * Parse the string and modify ssl_version in the val argument. Return PARAM_OK
+ * on success, otherwise a parameter error enum. ONLY ACCEPTS POSITIVE NUMBERS!
+ *
+ * Since this function gets called with the 'nextarg' pointer from within the
+ * getparameter a lot, we must check it for NULL before accessing the str
+ * data.
+ */
+
+ParameterError str2tls_max(long *val, const char *str)
+{
+   static struct s_tls_max {
+    const char *tls_max_str;
+    long tls_max;
+  } const tls_max_array[] = {
+    { "default", CURL_SSLVERSION_MAX_DEFAULT },
+    { "1.0",     CURL_SSLVERSION_MAX_TLSv1_0 },
+    { "1.1",     CURL_SSLVERSION_MAX_TLSv1_1 },
+    { "1.2",     CURL_SSLVERSION_MAX_TLSv1_2 },
+    { "1.3",     CURL_SSLVERSION_MAX_TLSv1_3 }
+  };
+  size_t i = 0;
+  if(!str)
+    return PARAM_REQUIRES_PARAMETER;
+  for(i = 0; i < sizeof(tls_max_array)/sizeof(tls_max_array[0]); i++) {
+    if(!strcmp(str, tls_max_array[i].tls_max_str)) {
+      *val = tls_max_array[i].tls_max;
+      return PARAM_OK;
+    }
+  }
+  return PARAM_BAD_USE;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_paramhlp.h b/ap/lib/libcurl/curl-7.54.1/src/tool_paramhlp.h
new file mode 100644
index 0000000..cdfbacf
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_paramhlp.h
@@ -0,0 +1,57 @@
+#ifndef HEADER_CURL_TOOL_PARAMHLP_H
+#define HEADER_CURL_TOOL_PARAMHLP_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 "tool_setup.h"
+
+struct getout *new_getout(struct OperationConfig *config);
+
+ParameterError file2string(char **bufp, FILE *file);
+
+ParameterError file2memory(char **bufp, size_t *size, FILE *file);
+
+void cleanarg(char *str);
+
+ParameterError str2num(long *val, const char *str);
+ParameterError str2unum(long *val, const char *str);
+ParameterError str2double(double *val, const char *str);
+ParameterError str2udouble(double *val, const char *str);
+
+long proto2num(struct OperationConfig *config, long *val, const char *str);
+
+int check_protocol(const char *str);
+
+ParameterError str2offset(curl_off_t *val, const char *str);
+
+CURLcode get_args(struct OperationConfig *config, const size_t i);
+
+ParameterError add2list(struct curl_slist **list, const char *ptr);
+
+int ftpfilemethod(struct OperationConfig *config, const char *str);
+
+int ftpcccmethod(struct OperationConfig *config, const char *str);
+
+long delegation(struct OperationConfig *config, char *str);
+
+ParameterError str2tls_max(long *val, const char *str);
+
+#endif /* HEADER_CURL_TOOL_PARAMHLP_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_parsecfg.c b/ap/lib/libcurl/curl-7.54.1/src/tool_parsecfg.c
new file mode 100644
index 0000000..8432e57
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_parsecfg.c
@@ -0,0 +1,361 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_getparam.h"
+#include "tool_helpers.h"
+#include "tool_homedir.h"
+#include "tool_msgs.h"
+#include "tool_parsecfg.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#define CURLRC DOT_CHAR "curlrc"
+
+/* only acknowledge colon or equals as separators if the option was not
+   specified with an initial dash! */
+#define ISSEP(x,dash) (!dash && (((x) == '=') || ((x) == ':')))
+
+static const char *unslashquote(const char *line, char *param);
+static char *my_get_line(FILE *fp);
+
+/* return 0 on everything-is-fine, and non-zero otherwise */
+int parseconfig(const char *filename, struct GlobalConfig *global)
+{
+  int res;
+  FILE *file;
+  char filebuffer[512];
+  bool usedarg;
+  char *home;
+  int rc = 0;
+  struct OperationConfig *operation = global->first;
+
+  if(!filename || !*filename) {
+    /* NULL or no file name attempts to load .curlrc from the homedir! */
+
+#ifndef __AMIGA__
+    filename = CURLRC;   /* sensible default */
+    home = homedir();    /* portable homedir finder */
+    if(home) {
+      if(strlen(home) < (sizeof(filebuffer) - strlen(CURLRC))) {
+        snprintf(filebuffer, sizeof(filebuffer),
+                 "%s%s%s", home, DIR_CHAR, CURLRC);
+
+#ifdef WIN32
+        /* Check if the file exists - if not, try CURLRC in the same
+         * directory as our executable
+         */
+        file = fopen(filebuffer, FOPEN_READTEXT);
+        if(file != NULL) {
+          fclose(file);
+          filename = filebuffer;
+        }
+        else {
+          /* Get the filename of our executable. GetModuleFileName is
+           * already declared via inclusions done in setup header file.
+           * We assume that we are using the ASCII version here.
+           */
+          int n = GetModuleFileNameA(0, filebuffer, sizeof(filebuffer));
+          if(n > 0 && n < (int)sizeof(filebuffer)) {
+            /* We got a valid filename - get the directory part */
+            char *lastdirchar = strrchr(filebuffer, '\\');
+            if(lastdirchar) {
+              size_t remaining;
+              *lastdirchar = 0;
+              /* If we have enough space, build the RC filename */
+              remaining = sizeof(filebuffer) - strlen(filebuffer);
+              if(strlen(CURLRC) < remaining - 1) {
+                snprintf(lastdirchar, remaining,
+                         "%s%s", DIR_CHAR, CURLRC);
+                /* Don't bother checking if it exists - we do
+                 * that later
+                 */
+                filename = filebuffer;
+              }
+            }
+          }
+        }
+#else /* WIN32 */
+        filename = filebuffer;
+#endif /* WIN32 */
+      }
+      Curl_safefree(home); /* we've used it, now free it */
+    }
+
+# else /* __AMIGA__ */
+    /* On AmigaOS all the config files are into env:
+     */
+    filename = "ENV:" CURLRC;
+
+#endif
+  }
+
+  if(strcmp(filename, "-"))
+    file = fopen(filename, FOPEN_READTEXT);
+  else
+    file = stdin;
+
+  if(file) {
+    char *line;
+    char *aline;
+    char *option;
+    char *param;
+    int lineno = 0;
+    bool alloced_param;
+    bool dashed_option;
+
+    while(NULL != (aline = my_get_line(file))) {
+      lineno++;
+      line = aline;
+      alloced_param=FALSE;
+
+      /* line with # in the first non-blank column is a comment! */
+      while(*line && ISSPACE(*line))
+        line++;
+
+      switch(*line) {
+      case '#':
+      case '/':
+      case '\r':
+      case '\n':
+      case '*':
+      case '\0':
+        Curl_safefree(aline);
+        continue;
+      }
+
+      /* the option keywords starts here */
+      option = line;
+
+      /* the option starts with a dash? */
+      dashed_option = option[0]=='-'?TRUE:FALSE;
+
+      while(*line && !ISSPACE(*line) && !ISSEP(*line, dashed_option))
+        line++;
+      /* ... and has ended here */
+
+      if(*line)
+        *line++ = '\0'; /* zero terminate, we have a local copy of the data */
+
+#ifdef DEBUG_CONFIG
+      fprintf(stderr, "GOT: %s\n", option);
+#endif
+
+      /* pass spaces and separator(s) */
+      while(*line && (ISSPACE(*line) || ISSEP(*line, dashed_option)))
+        line++;
+
+      /* the parameter starts here (unless quoted) */
+      if(*line == '\"') {
+        /* quoted parameter, do the quote dance */
+        line++;
+        param = malloc(strlen(line) + 1); /* parameter */
+        if(!param) {
+          /* out of memory */
+          Curl_safefree(aline);
+          rc = 1;
+          break;
+        }
+        alloced_param = TRUE;
+        (void)unslashquote(line, param);
+      }
+      else {
+        param = line; /* parameter starts here */
+        while(*line && !ISSPACE(*line))
+          line++;
+
+        if(*line) {
+          *line = '\0'; /* zero terminate */
+
+          /* to detect mistakes better, see if there's data following */
+          line++;
+          /* pass all spaces */
+          while(*line && ISSPACE(*line))
+            line++;
+
+          switch(*line) {
+          case '\0':
+          case '\r':
+          case '\n':
+          case '#': /* comment */
+            break;
+          default:
+            warnf(operation->global, "%s:%d: warning: '%s' uses unquoted "
+                  "white space in the line that may cause side-effects!\n",
+                  filename, lineno, option);
+          }
+        }
+        if(!*param)
+          /* do this so getparameter can check for required parameters.
+             Otherwise it always thinks there's a parameter. */
+          param = NULL;
+      }
+
+#ifdef DEBUG_CONFIG
+      fprintf(stderr, "PARAM: \"%s\"\n",(param ? param : "(null)"));
+#endif
+      res = getparameter(option, param, &usedarg, global, operation);
+
+      if(param && *param && !usedarg)
+        /* we passed in a parameter that wasn't used! */
+        res = PARAM_GOT_EXTRA_PARAMETER;
+
+      if(res == PARAM_NEXT_OPERATION) {
+        if(operation->url_list && operation->url_list->url) {
+          /* Allocate the next config */
+          operation->next = malloc(sizeof(struct OperationConfig));
+          if(operation->next) {
+            /* Initialise the newly created config */
+            config_init(operation->next);
+
+            /* Copy the easy handle */
+            operation->next->easy = global->easy;
+
+            /* Set the global config pointer */
+            operation->next->global = global;
+
+            /* Update the last operation pointer */
+            global->last = operation->next;
+
+            /* Move onto the new config */
+            operation->next->prev = operation;
+            operation = operation->next;
+          }
+          else
+            res = PARAM_NO_MEM;
+        }
+      }
+
+      if(res != PARAM_OK && res != PARAM_NEXT_OPERATION) {
+        /* the help request isn't really an error */
+        if(!strcmp(filename, "-")) {
+          filename = "<stdin>";
+        }
+        if(res != PARAM_HELP_REQUESTED &&
+           res != PARAM_MANUAL_REQUESTED &&
+           res != PARAM_VERSION_INFO_REQUESTED &&
+           res != PARAM_ENGINES_REQUESTED) {
+          const char *reason = param2text(res);
+          warnf(operation->global, "%s:%d: warning: '%s' %s\n",
+                filename, lineno, option, reason);
+        }
+      }
+
+      if(alloced_param)
+        Curl_safefree(param);
+
+      Curl_safefree(aline);
+    }
+    if(file != stdin)
+      fclose(file);
+  }
+  else
+    rc = 1; /* couldn't open the file */
+
+  return rc;
+}
+
+/*
+ * Copies the string from line to the buffer at param, unquoting
+ * backslash-quoted characters and NUL-terminating the output string.
+ * Stops at the first non-backslash-quoted double quote character or the
+ * end of the input string. param must be at least as long as the input
+ * string.  Returns the pointer after the last handled input character.
+ */
+static const char *unslashquote(const char *line, char *param)
+{
+  while(*line && (*line != '\"')) {
+    if(*line == '\\') {
+      char out;
+      line++;
+
+      /* default is to output the letter after the backslash */
+      switch(out = *line) {
+      case '\0':
+        continue; /* this'll break out of the loop */
+      case 't':
+        out = '\t';
+        break;
+      case 'n':
+        out = '\n';
+        break;
+      case 'r':
+        out = '\r';
+        break;
+      case 'v':
+        out = '\v';
+        break;
+      }
+      *param++ = out;
+      line++;
+    }
+    else
+      *param++ = *line++;
+  }
+  *param = '\0'; /* always zero terminate */
+  return line;
+}
+
+/*
+ * Reads a line from the given file, ensuring is NUL terminated.
+ * The pointer must be freed by the caller.
+ * NULL is returned on an out of memory condition.
+ */
+static char *my_get_line(FILE *fp)
+{
+  char buf[4096];
+  char *nl = NULL;
+  char *line = NULL;
+
+  do {
+    if(NULL == fgets(buf, sizeof(buf), fp))
+      break;
+    if(!line) {
+      line = strdup(buf);
+      if(!line)
+        return NULL;
+    }
+    else {
+      char *ptr;
+      size_t linelen = strlen(line);
+      ptr = realloc(line, linelen + strlen(buf) + 1);
+      if(!ptr) {
+        Curl_safefree(line);
+        return NULL;
+      }
+      line = ptr;
+      strcpy(&line[linelen], buf);
+    }
+    nl = strchr(line, '\n');
+  } while(!nl);
+
+  if(nl)
+    *nl = '\0';
+
+  return line;
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_parsecfg.h b/ap/lib/libcurl/curl-7.54.1/src/tool_parsecfg.h
new file mode 100644
index 0000000..b676ec3
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_parsecfg.h
@@ -0,0 +1,29 @@
+#ifndef HEADER_CURL_TOOL_PARSECFG_H
+#define HEADER_CURL_TOOL_PARSECFG_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 "tool_setup.h"
+
+int parseconfig(const char *filename, struct GlobalConfig *config);
+
+#endif /* HEADER_CURL_TOOL_PARSECFG_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_sdecls.h b/ap/lib/libcurl/curl-7.54.1/src/tool_sdecls.h
new file mode 100644
index 0000000..a56390e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_sdecls.h
@@ -0,0 +1,151 @@
+#ifndef HEADER_CURL_TOOL_SDECLS_H
+#define HEADER_CURL_TOOL_SDECLS_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+#ifdef USE_METALINK
+#  include <metalink/metalink.h>
+#endif /* USE_METALINK */
+
+/*
+ * OutStruct variables keep track of information relative to curl's
+ * output writing, which may take place to a standard stream or a file.
+ *
+ * 'filename' member is either a pointer to a file name string or NULL
+ * when dealing with a standard stream.
+ *
+ * 'alloc_filename' member is TRUE when string pointed by 'filename' has been
+ * dynamically allocated and 'belongs' to this OutStruct, otherwise FALSE.
+ *
+ * 'is_cd_filename' member is TRUE when string pointed by 'filename' has been
+ * set using a server-specified Content-Disposition filename, otherwise FALSE.
+ *
+ * 's_isreg' member is TRUE when output goes to a regular file, this also
+ * implies that output is 'seekable' and 'appendable' and also that member
+ * 'filename' points to file name's string. For any standard stream member
+ * 's_isreg' will be FALSE.
+ *
+ * 'fopened' member is TRUE when output goes to a regular file and it
+ * has been fopen'ed, requiring it to be closed later on. In any other
+ * case this is FALSE.
+ *
+ * 'stream' member is a pointer to a stream controlling object as returned
+ * from a 'fopen' call or a standard stream.
+ *
+ * 'config' member is a pointer to associated 'OperationConfig' struct.
+ *
+ * 'bytes' member represents amount written so far.
+ *
+ * 'init' member holds original file size or offset at which truncation is
+ * taking place. Always zero unless appending to a non-empty regular file.
+ *
+ * 'metalink_parser' member is a pointer to Metalink XML parser
+ * context.
+ */
+
+struct OutStruct {
+  char *filename;
+  bool alloc_filename;
+  bool is_cd_filename;
+  bool s_isreg;
+  bool fopened;
+  FILE *stream;
+  struct OperationConfig *config;
+  curl_off_t bytes;
+  curl_off_t init;
+#ifdef USE_METALINK
+  metalink_parser_context_t *metalink_parser;
+#endif /* USE_METALINK */
+};
+
+
+/*
+ * InStruct variables keep track of information relative to curl's
+ * input reading, which may take place from stdin or from some file.
+ *
+ * 'fd' member is either 'stdin' file descriptor number STDIN_FILENO
+ * or a file descriptor as returned from an 'open' call for some file.
+ *
+ * 'config' member is a pointer to associated 'OperationConfig' struct.
+ */
+
+struct InStruct {
+  int fd;
+  struct OperationConfig *config;
+};
+
+
+/*
+ * A linked list of these 'getout' nodes contain URL's to fetch,
+ * as well as information relative to where URL contents should
+ * be stored or which file should be uploaded.
+ */
+
+struct getout {
+  struct getout *next;      /* next one */
+  char          *url;       /* the URL we deal with */
+  char          *outfile;   /* where to store the output */
+  char          *infile;    /* file to upload, if GETOUT_UPLOAD is set */
+  int            flags;     /* options - composed of GETOUT_* bits */
+};
+
+#define GETOUT_OUTFILE    (1<<0)  /* set when outfile is deemed done */
+#define GETOUT_URL        (1<<1)  /* set when URL is deemed done */
+#define GETOUT_USEREMOTE  (1<<2)  /* use remote file name locally */
+#define GETOUT_UPLOAD     (1<<3)  /* if set, -T has been used */
+#define GETOUT_NOUPLOAD   (1<<4)  /* if set, -T "" has been used */
+#define GETOUT_METALINK   (1<<5)  /* set when Metalink download */
+
+/*
+ * 'trace' enumeration represents curl's output look'n feel possibilities.
+ */
+
+typedef enum {
+  TRACE_NONE,  /* no trace/verbose output at all */
+  TRACE_BIN,   /* tcpdump inspired look */
+  TRACE_ASCII, /* like *BIN but without the hex output */
+  TRACE_PLAIN  /* -v/--verbose type */
+} trace;
+
+
+/*
+ * 'HttpReq' enumeration represents HTTP request types.
+ */
+
+typedef enum {
+  HTTPREQ_UNSPEC,  /* first in list */
+  HTTPREQ_GET,
+  HTTPREQ_HEAD,
+  HTTPREQ_FORMPOST,
+  HTTPREQ_SIMPLEPOST
+} HttpReq;
+
+
+/*
+ * Complete struct declarations which have OperationConfig struct members,
+ * just in case this header is directly included in some source file.
+ */
+
+#include "tool_cfgable.h"
+
+#endif /* HEADER_CURL_TOOL_SDECLS_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_setopt.c b/ap/lib/libcurl/curl-7.54.1/src/tool_setopt.c
new file mode 100644
index 0000000..ad3d307
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_setopt.c
@@ -0,0 +1,588 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+
+#include "tool_cfgable.h"
+#include "tool_easysrc.h"
+#include "tool_setopt.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+/* Lookup tables for converting setopt values back to symbols */
+/* For enums, values may be in any order. */
+/* For bit masks, put combinations first, then single bits, */
+/* and finally any "NONE" value. */
+
+#define NV(e) {#e, e}
+#define NV1(e, v) {#e, (v)}
+#define NVEND {NULL, 0}         /* sentinel to mark end of list */
+
+const NameValue setopt_nv_CURLPROXY[] = {
+  NV(CURLPROXY_HTTP),
+  NV(CURLPROXY_HTTP_1_0),
+  NV(CURLPROXY_HTTPS),
+  NV(CURLPROXY_SOCKS4),
+  NV(CURLPROXY_SOCKS5),
+  NV(CURLPROXY_SOCKS4A),
+  NV(CURLPROXY_SOCKS5_HOSTNAME),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURL_SOCKS_PROXY[] = {
+  NV(CURLPROXY_SOCKS4),
+  NV(CURLPROXY_SOCKS5),
+  NV(CURLPROXY_SOCKS4A),
+  NV(CURLPROXY_SOCKS5_HOSTNAME),
+  NVEND,
+};
+
+const NameValueUnsigned setopt_nv_CURLAUTH[] = {
+  NV(CURLAUTH_ANY),             /* combination */
+  NV(CURLAUTH_ANYSAFE),         /* combination */
+  NV(CURLAUTH_BASIC),
+  NV(CURLAUTH_DIGEST),
+  NV(CURLAUTH_GSSNEGOTIATE),
+  NV(CURLAUTH_NTLM),
+  NV(CURLAUTH_DIGEST_IE),
+  NV(CURLAUTH_NTLM_WB),
+  NV(CURLAUTH_ONLY),
+  NV(CURLAUTH_NONE),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURL_HTTP_VERSION[] = {
+  NV(CURL_HTTP_VERSION_NONE),
+  NV(CURL_HTTP_VERSION_1_0),
+  NV(CURL_HTTP_VERSION_1_1),
+  NV(CURL_HTTP_VERSION_2_0),
+  NV(CURL_HTTP_VERSION_2TLS),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURL_SSLVERSION[] = {
+  NV(CURL_SSLVERSION_DEFAULT),
+  NV(CURL_SSLVERSION_TLSv1),
+  NV(CURL_SSLVERSION_SSLv2),
+  NV(CURL_SSLVERSION_SSLv3),
+  NV(CURL_SSLVERSION_TLSv1_0),
+  NV(CURL_SSLVERSION_TLSv1_1),
+  NV(CURL_SSLVERSION_TLSv1_2),
+  NV(CURL_SSLVERSION_TLSv1_3),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURL_TIMECOND[] = {
+  NV(CURL_TIMECOND_IFMODSINCE),
+  NV(CURL_TIMECOND_IFUNMODSINCE),
+  NV(CURL_TIMECOND_LASTMOD),
+  NV(CURL_TIMECOND_NONE),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURLFTPSSL_CCC[] = {
+  NV(CURLFTPSSL_CCC_NONE),
+  NV(CURLFTPSSL_CCC_PASSIVE),
+  NV(CURLFTPSSL_CCC_ACTIVE),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURLUSESSL[] = {
+  NV(CURLUSESSL_NONE),
+  NV(CURLUSESSL_TRY),
+  NV(CURLUSESSL_CONTROL),
+  NV(CURLUSESSL_ALL),
+  NVEND,
+};
+
+const NameValueUnsigned setopt_nv_CURLSSLOPT[] = {
+  NV(CURLSSLOPT_ALLOW_BEAST),
+  NV(CURLSSLOPT_NO_REVOKE),
+  NVEND,
+};
+
+const NameValue setopt_nv_CURL_NETRC[] = {
+  NV(CURL_NETRC_IGNORED),
+  NV(CURL_NETRC_OPTIONAL),
+  NV(CURL_NETRC_REQUIRED),
+  NVEND,
+};
+
+/* These mappings essentially triplicated - see
+ * tool_libinfo.c and tool_paramhlp.c */
+const NameValue setopt_nv_CURLPROTO[] = {
+  NV(CURLPROTO_ALL),            /* combination */
+  NV(CURLPROTO_DICT),
+  NV(CURLPROTO_FILE),
+  NV(CURLPROTO_FTP),
+  NV(CURLPROTO_FTPS),
+  NV(CURLPROTO_GOPHER),
+  NV(CURLPROTO_HTTP),
+  NV(CURLPROTO_HTTPS),
+  NV(CURLPROTO_IMAP),
+  NV(CURLPROTO_IMAPS),
+  NV(CURLPROTO_LDAP),
+  NV(CURLPROTO_LDAPS),
+  NV(CURLPROTO_POP3),
+  NV(CURLPROTO_POP3S),
+  NV(CURLPROTO_RTSP),
+  NV(CURLPROTO_SCP),
+  NV(CURLPROTO_SFTP),
+  NV(CURLPROTO_SMB),
+  NV(CURLPROTO_SMBS),
+  NV(CURLPROTO_SMTP),
+  NV(CURLPROTO_SMTPS),
+  NV(CURLPROTO_TELNET),
+  NV(CURLPROTO_TFTP),
+  NVEND,
+};
+
+/* These options have non-zero default values. */
+static const NameValue setopt_nv_CURLNONZERODEFAULTS[] = {
+  NV1(CURLOPT_SSL_VERIFYPEER, 1),
+  NV1(CURLOPT_SSL_VERIFYHOST, 1),
+  NV1(CURLOPT_SSL_ENABLE_NPN, 1),
+  NV1(CURLOPT_SSL_ENABLE_ALPN, 1),
+  NV1(CURLOPT_TCP_NODELAY, 1),
+  NV1(CURLOPT_PROXY_SSL_VERIFYPEER, 1),
+  NV1(CURLOPT_PROXY_SSL_VERIFYHOST, 1),
+  NVEND
+};
+
+/* Format and add code; jump to nomem on malloc error */
+#define ADD(args) do { \
+  ret = easysrc_add args; \
+  if(ret) \
+    goto nomem; \
+} WHILE_FALSE
+#define ADDF(args) do { \
+  ret = easysrc_addf args; \
+  if(ret) \
+    goto nomem; \
+} WHILE_FALSE
+
+#define DECL0(s) ADD((&easysrc_decl, s))
+#define DECL1(f,a) ADDF((&easysrc_decl, f,a))
+
+#define DATA0(s) ADD((&easysrc_data, s))
+#define DATA1(f,a) ADDF((&easysrc_data, f,a))
+#define DATA2(f,a,b) ADDF((&easysrc_data, f,a,b))
+#define DATA3(f,a,b,c) ADDF((&easysrc_data, f,a,b,c))
+
+#define CODE0(s) ADD((&easysrc_code, s))
+#define CODE1(f,a) ADDF((&easysrc_code, f,a))
+#define CODE2(f,a,b) ADDF((&easysrc_code, f,a,b))
+#define CODE3(f,a,b,c) ADDF((&easysrc_code, f,a,b,c))
+
+#define CLEAN0(s) ADD((&easysrc_clean, s))
+#define CLEAN1(f,a) ADDF((&easysrc_clean, f,a))
+
+#define REM0(s) ADD((&easysrc_toohard, s))
+#define REM1(f,a) ADDF((&easysrc_toohard, f,a))
+#define REM2(f,a,b) ADDF((&easysrc_toohard, f,a,b))
+
+/* Escape string to C string syntax.  Return NULL if out of memory.
+ * Is this correct for those wacky EBCDIC guys? */
+static char *c_escape(const char *str)
+{
+  size_t len = 0;
+  const char *s;
+  unsigned char c;
+  char *escaped, *e;
+  /* Allocate space based on worst-case */
+  len = strlen(str);
+  escaped = malloc(4 * len + 1);
+  if(!escaped)
+    return NULL;
+
+  e = escaped;
+  for(s=str; (c=*s) != '\0'; s++) {
+    if(c=='\n') {
+      strcpy(e, "\\n");
+      e += 2;
+    }
+    else if(c=='\r') {
+      strcpy(e, "\\r");
+      e += 2;
+    }
+    else if(c=='\t') {
+      strcpy(e, "\\t");
+      e += 2;
+    }
+    else if(c=='\\') {
+      strcpy(e, "\\\\");
+      e += 2;
+    }
+    else if(c=='"') {
+      strcpy(e, "\\\"");
+      e += 2;
+    }
+    else if(! isprint(c)) {
+      snprintf(e, 5, "\\%03o", (unsigned)c);
+      e += 4;
+    }
+    else
+      *e++ = c;
+  }
+  *e = '\0';
+  return escaped;
+}
+
+/* setopt wrapper for enum types */
+CURLcode tool_setopt_enum(CURL *curl, struct GlobalConfig *config,
+                          const char *name, CURLoption tag,
+                          const NameValue *nvlist, long lval)
+{
+  CURLcode ret = CURLE_OK;
+  bool skip = FALSE;
+
+  ret = curl_easy_setopt(curl, tag, lval);
+  if(!lval)
+    skip = TRUE;
+
+  if(config->libcurl && !skip && !ret) {
+    /* we only use this for real if --libcurl was used */
+    const NameValue *nv = NULL;
+    for(nv=nvlist; nv->name; nv++) {
+      if(nv->value == lval) break; /* found it */
+    }
+    if(! nv->name) {
+      /* If no definition was found, output an explicit value.
+       * This could happen if new values are defined and used
+       * but the NameValue list is not updated. */
+      CODE2("curl_easy_setopt(hnd, %s, %ldL);", name, lval);
+    }
+    else {
+      CODE2("curl_easy_setopt(hnd, %s, (long)%s);", name, nv->name);
+    }
+  }
+
+ nomem:
+  return ret;
+}
+
+/* setopt wrapper for flags */
+CURLcode tool_setopt_flags(CURL *curl, struct GlobalConfig *config,
+                           const char *name, CURLoption tag,
+                           const NameValue *nvlist, long lval)
+{
+  CURLcode ret = CURLE_OK;
+  bool skip = FALSE;
+
+  ret = curl_easy_setopt(curl, tag, lval);
+  if(!lval)
+    skip = TRUE;
+
+  if(config->libcurl && !skip && !ret) {
+    /* we only use this for real if --libcurl was used */
+    char preamble[80];          /* should accommodate any symbol name */
+    long rest = lval;           /* bits not handled yet */
+    const NameValue *nv = NULL;
+    snprintf(preamble, sizeof(preamble),
+             "curl_easy_setopt(hnd, %s, ", name);
+    for(nv=nvlist; nv->name; nv++) {
+      if((nv->value & ~ rest) == 0) {
+        /* all value flags contained in rest */
+        rest &= ~ nv->value;    /* remove bits handled here */
+        CODE3("%s(long)%s%s",
+              preamble, nv->name, rest ? " |" : ");");
+        if(!rest)
+          break;                /* handled them all */
+        /* replace with all spaces for continuation line */
+        snprintf(preamble, sizeof(preamble), "%*s", strlen(preamble), "");
+      }
+    }
+    /* If any bits have no definition, output an explicit value.
+     * This could happen if new bits are defined and used
+     * but the NameValue list is not updated. */
+    if(rest)
+      CODE2("%s%ldL);", preamble, rest);
+  }
+
+ nomem:
+  return ret;
+}
+
+/* setopt wrapper for bitmasks */
+CURLcode tool_setopt_bitmask(CURL *curl, struct GlobalConfig *config,
+                             const char *name, CURLoption tag,
+                             const NameValueUnsigned *nvlist,
+                             long lval)
+{
+  CURLcode ret = CURLE_OK;
+  bool skip = FALSE;
+
+  ret = curl_easy_setopt(curl, tag, lval);
+  if(!lval)
+    skip = TRUE;
+
+  if(config->libcurl && !skip && !ret) {
+    /* we only use this for real if --libcurl was used */
+    char preamble[80];
+    unsigned long rest = (unsigned long)lval;
+    const NameValueUnsigned *nv = NULL;
+    snprintf(preamble, sizeof(preamble),
+             "curl_easy_setopt(hnd, %s, ", name);
+    for(nv=nvlist; nv->name; nv++) {
+      if((nv->value & ~ rest) == 0) {
+        /* all value flags contained in rest */
+        rest &= ~ nv->value;    /* remove bits handled here */
+        CODE3("%s(long)%s%s",
+              preamble, nv->name, rest ? " |" : ");");
+        if(!rest)
+          break;                /* handled them all */
+        /* replace with all spaces for continuation line */
+        snprintf(preamble, sizeof(preamble), "%*s", strlen(preamble), "");
+      }
+    }
+    /* If any bits have no definition, output an explicit value.
+     * This could happen if new bits are defined and used
+     * but the NameValue list is not updated. */
+    if(rest)
+      CODE2("%s%luUL);", preamble, rest);
+  }
+
+ nomem:
+  return ret;
+}
+
+/* setopt wrapper for CURLOPT_HTTPPOST */
+CURLcode tool_setopt_httppost(CURL *curl, struct GlobalConfig *config,
+                              const char *name, CURLoption tag,
+                              struct curl_httppost *post)
+{
+  CURLcode ret = CURLE_OK;
+  char *escaped = NULL;
+  bool skip = FALSE;
+
+  ret = curl_easy_setopt(curl, tag, post);
+  if(!post)
+    skip = TRUE;
+
+  if(config->libcurl && !skip && !ret) {
+    struct curl_httppost *pp, *p;
+    int i;
+    /* May use several httppost lists, if multiple POST actions */
+    i = ++ easysrc_form_count;
+    DECL1("struct curl_httppost *post%d;", i);
+    DATA1("post%d = NULL;", i);
+    CLEAN1("curl_formfree(post%d);", i);
+    CLEAN1("post%d = NULL;", i);
+    if(i == 1)
+      DECL0("struct curl_httppost *postend;");
+    DATA0("postend = NULL;");
+    for(p=post; p; p=p->next) {
+      DATA1("curl_formadd(&post%d, &postend,", i);
+      DATA1("             CURLFORM_COPYNAME, \"%s\",", p->name);
+      for(pp=p; pp; pp=pp->more) {
+        /* May be several files uploaded for one name;
+         * these are linked through the 'more' pointer */
+        Curl_safefree(escaped);
+        escaped = c_escape(pp->contents);
+        if(!escaped) {
+          ret = CURLE_OUT_OF_MEMORY;
+          goto nomem;
+        }
+        if(pp->flags & CURL_HTTPPOST_FILENAME) {
+          /* file upload as for -F @filename */
+          DATA1("             CURLFORM_FILE, \"%s\",", escaped);
+        }
+        else if(pp->flags & CURL_HTTPPOST_READFILE) {
+          /* content from file as for -F <filename */
+          DATA1("             CURLFORM_FILECONTENT, \"%s\",", escaped);
+        }
+        else
+          DATA1("             CURLFORM_COPYCONTENTS, \"%s\",", escaped);
+        if(pp->showfilename) {
+          Curl_safefree(escaped);
+          escaped = c_escape(pp->showfilename);
+          if(!escaped) {
+            ret = CURLE_OUT_OF_MEMORY;
+            goto nomem;
+          }
+          DATA1("             CURLFORM_FILENAME, \"%s\",", escaped);
+        }
+        if(pp->contenttype) {
+          Curl_safefree(escaped);
+          escaped = c_escape(pp->contenttype);
+          if(!escaped) {
+            ret = CURLE_OUT_OF_MEMORY;
+            goto nomem;
+          }
+          DATA1("             CURLFORM_CONTENTTYPE, \"%s\",", escaped);
+        }
+      }
+      DATA0("             CURLFORM_END);");
+    }
+    CODE2("curl_easy_setopt(hnd, %s, post%d);", name, i);
+  }
+
+ nomem:
+  Curl_safefree(escaped);
+  return ret;
+}
+
+/* setopt wrapper for curl_slist options */
+CURLcode tool_setopt_slist(CURL *curl, struct GlobalConfig *config,
+                           const char *name, CURLoption tag,
+                           struct curl_slist *list)
+{
+  CURLcode ret = CURLE_OK;
+  char *escaped = NULL;
+  bool skip = FALSE;
+
+  ret = curl_easy_setopt(curl, tag, list);
+  if(!list)
+    skip = TRUE;
+
+  if(config->libcurl && !skip && !ret) {
+    struct curl_slist *s;
+    int i;
+    /* May need several slist variables, so invent name */
+    i = ++ easysrc_slist_count;
+    DECL1("struct curl_slist *slist%d;", i);
+    DATA1("slist%d = NULL;", i);
+    CLEAN1("curl_slist_free_all(slist%d);", i);
+    CLEAN1("slist%d = NULL;", i);
+    for(s=list; s; s=s->next) {
+      Curl_safefree(escaped);
+      escaped = c_escape(s->data);
+      if(!escaped) {
+        ret = CURLE_OUT_OF_MEMORY;
+        goto nomem;
+      }
+      DATA3("slist%d = curl_slist_append(slist%d, \"%s\");", i, i, escaped);
+    }
+    CODE2("curl_easy_setopt(hnd, %s, slist%d);", name, i);
+  }
+
+ nomem:
+  Curl_safefree(escaped);
+  return ret;
+}
+
+/* generic setopt wrapper for all other options.
+ * Some type information is encoded in the tag value. */
+CURLcode tool_setopt(CURL *curl, bool str, struct GlobalConfig *config,
+                     const char *name, CURLoption tag, ...)
+{
+  va_list arg;
+  char buf[256];
+  const char *value = NULL;
+  bool remark = FALSE;
+  bool skip = FALSE;
+  bool escape = FALSE;
+  char *escaped = NULL;
+  CURLcode ret = CURLE_OK;
+
+  va_start(arg, tag);
+
+  if(tag < CURLOPTTYPE_OBJECTPOINT) {
+    /* Value is expected to be a long */
+    long lval = va_arg(arg, long);
+    long defval = 0L;
+    const NameValue *nv = NULL;
+    for(nv=setopt_nv_CURLNONZERODEFAULTS; nv->name; nv++) {
+      if(!strcmp(name, nv->name)) {
+        defval = nv->value;
+        break; /* found it */
+      }
+    }
+
+    snprintf(buf, sizeof(buf), "%ldL", lval);
+    value = buf;
+    ret = curl_easy_setopt(curl, tag, lval);
+    if(lval == defval)
+      skip = TRUE;
+  }
+  else if(tag < CURLOPTTYPE_OFF_T) {
+    /* Value is some sort of object pointer */
+    void *pval = va_arg(arg, void *);
+
+    /* function pointers are never printable */
+    if(tag >= CURLOPTTYPE_FUNCTIONPOINT) {
+      if(pval) {
+        value = "functionpointer";
+        remark = TRUE;
+      }
+      else
+        skip = TRUE;
+    }
+
+    else if(pval && str) {
+      value = (char *)pval;
+      escape = TRUE;
+    }
+    else if(pval) {
+      value = "objectpointer";
+      remark = TRUE;
+    }
+    else
+      skip = TRUE;
+
+    ret = curl_easy_setopt(curl, tag, pval);
+
+  }
+  else {
+    /* Value is expected to be curl_off_t */
+    curl_off_t oval = va_arg(arg, curl_off_t);
+    snprintf(buf, sizeof(buf),
+             "(curl_off_t)%" CURL_FORMAT_CURL_OFF_T, oval);
+    value = buf;
+    ret = curl_easy_setopt(curl, tag, oval);
+
+    if(!oval)
+      skip = TRUE;
+  }
+
+  va_end(arg);
+
+  if(config->libcurl && !skip && !ret) {
+    /* we only use this for real if --libcurl was used */
+
+    if(remark)
+      REM2("%s set to a %s", name, value);
+    else {
+      if(escape) {
+        escaped = c_escape(value);
+        if(!escaped) {
+          ret = CURLE_OUT_OF_MEMORY;
+          goto nomem;
+        }
+        CODE2("curl_easy_setopt(hnd, %s, \"%s\");", name, escaped);
+      }
+      else
+        CODE2("curl_easy_setopt(hnd, %s, %s);", name, value);
+    }
+  }
+
+ nomem:
+  Curl_safefree(escaped);
+  return ret;
+}
+
+#endif /* CURL_DISABLE_LIBCURL_OPTION */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_setopt.h b/ap/lib/libcurl/curl-7.54.1/src/tool_setopt.h
new file mode 100644
index 0000000..c27541b
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_setopt.h
@@ -0,0 +1,152 @@
+#ifndef HEADER_CURL_TOOL_SETOPT_H
+#define HEADER_CURL_TOOL_SETOPT_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 "tool_setup.h"
+
+/*
+ * Macros used in operate()
+ */
+
+#define SETOPT_CHECK(v) do { \
+  result = (v); \
+  if(result) \
+    goto show_error; \
+} WHILE_FALSE
+
+#ifndef CURL_DISABLE_LIBCURL_OPTION
+
+/* Associate symbolic names with option values */
+typedef struct {
+  const char *name;
+  long value;
+} NameValue;
+
+typedef struct {
+  const char *name;
+  unsigned long value;
+} NameValueUnsigned;
+
+extern const NameValue setopt_nv_CURLPROXY[];
+extern const NameValue setopt_nv_CURL_SOCKS_PROXY[];
+extern const NameValue setopt_nv_CURL_HTTP_VERSION[];
+extern const NameValue setopt_nv_CURL_SSLVERSION[];
+extern const NameValue setopt_nv_CURL_TIMECOND[];
+extern const NameValue setopt_nv_CURLFTPSSL_CCC[];
+extern const NameValue setopt_nv_CURLUSESSL[];
+extern const NameValueUnsigned setopt_nv_CURLSSLOPT[];
+extern const NameValue setopt_nv_CURL_NETRC[];
+extern const NameValue setopt_nv_CURLPROTO[];
+extern const NameValueUnsigned setopt_nv_CURLAUTH[];
+
+/* Map options to NameValue sets */
+#define setopt_nv_CURLOPT_HTTP_VERSION setopt_nv_CURL_HTTP_VERSION
+#define setopt_nv_CURLOPT_HTTPAUTH setopt_nv_CURLAUTH
+#define setopt_nv_CURLOPT_SSLVERSION setopt_nv_CURL_SSLVERSION
+#define setopt_nv_CURLOPT_PROXY_SSLVERSION setopt_nv_CURL_SSLVERSION
+#define setopt_nv_CURLOPT_TIMECONDITION setopt_nv_CURL_TIMECOND
+#define setopt_nv_CURLOPT_FTP_SSL_CCC setopt_nv_CURLFTPSSL_CCC
+#define setopt_nv_CURLOPT_USE_SSL setopt_nv_CURLUSESSL
+#define setopt_nv_CURLOPT_SSL_OPTIONS setopt_nv_CURLSSLOPT
+#define setopt_nv_CURLOPT_NETRC setopt_nv_CURL_NETRC
+#define setopt_nv_CURLOPT_PROTOCOLS setopt_nv_CURLPROTO
+#define setopt_nv_CURLOPT_REDIR_PROTOCOLS setopt_nv_CURLPROTO
+#define setopt_nv_CURLOPT_PROXYTYPE setopt_nv_CURLPROXY
+#define setopt_nv_CURLOPT_PROXYAUTH setopt_nv_CURLAUTH
+
+/* Intercept setopt calls for --libcurl */
+
+CURLcode tool_setopt_enum(CURL *curl, struct GlobalConfig *config,
+                          const char *name, CURLoption tag,
+                          const NameValue *nv, long lval);
+CURLcode tool_setopt_flags(CURL *curl, struct GlobalConfig *config,
+                           const char *name, CURLoption tag,
+                           const NameValue *nv, long lval);
+CURLcode tool_setopt_bitmask(CURL *curl, struct GlobalConfig *config,
+                             const char *name, CURLoption tag,
+                             const NameValueUnsigned *nv, long lval);
+CURLcode tool_setopt_httppost(CURL *curl, struct GlobalConfig *config,
+                              const char *name, CURLoption tag,
+                              struct curl_httppost *httppost);
+CURLcode tool_setopt_slist(CURL *curl, struct GlobalConfig *config,
+                           const char *name, CURLoption tag,
+                           struct curl_slist *list);
+CURLcode tool_setopt(CURL *curl, bool str, struct GlobalConfig *config,
+                     const char *name, CURLoption tag, ...);
+
+#define my_setopt(x,y,z) \
+  SETOPT_CHECK(tool_setopt(x, FALSE, global, #y, y, z))
+
+#define my_setopt_str(x,y,z) \
+  SETOPT_CHECK(tool_setopt(x, TRUE, global, #y, y, z))
+
+#define my_setopt_enum(x,y,z) \
+  SETOPT_CHECK(tool_setopt_enum(x, global, #y, y, setopt_nv_ ## y, z))
+
+#define my_setopt_flags(x,y,z) \
+  SETOPT_CHECK(tool_setopt_flags(x, global, #y, y, setopt_nv_ ## y, z))
+
+#define my_setopt_bitmask(x,y,z) \
+  SETOPT_CHECK(tool_setopt_bitmask(x, global, #y, y, setopt_nv_ ## y, z))
+
+#define my_setopt_httppost(x,y,z) \
+  SETOPT_CHECK(tool_setopt_httppost(x, global, #y, y, z))
+
+#define my_setopt_slist(x,y,z) \
+  SETOPT_CHECK(tool_setopt_slist(x, global, #y, y, z))
+
+#define res_setopt(x,y,z) tool_setopt(x, FALSE, global, #y, y, z)
+
+#define res_setopt_str(x,y,z) tool_setopt(x, TRUE, global, #y, y, z)
+
+#else /* CURL_DISABLE_LIBCURL_OPTION */
+
+/* No --libcurl, so pass options directly to library */
+
+#define my_setopt(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define my_setopt_str(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define my_setopt_enum(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define my_setopt_flags(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define my_setopt_bitmask(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define my_setopt_httppost(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define my_setopt_slist(x,y,z) \
+  SETOPT_CHECK(curl_easy_setopt(x, y, z))
+
+#define res_setopt(x,y,z) curl_easy_setopt(x,y,z)
+
+#define res_setopt_str(x,y,z) curl_easy_setopt(x,y,z)
+
+#endif /* CURL_DISABLE_LIBCURL_OPTION */
+
+#endif /* HEADER_CURL_TOOL_SETOPT_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_setup.h b/ap/lib/libcurl/curl-7.54.1/src/tool_setup.h
new file mode 100644
index 0000000..90b01d7
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_setup.h
@@ -0,0 +1,74 @@
+#ifndef HEADER_CURL_TOOL_SETUP_H
+#define HEADER_CURL_TOOL_SETUP_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.
+ *
+ ***************************************************************************/
+
+#define CURL_NO_OLDIES
+
+/*
+ * curl_setup.h may define preprocessor macros such as _FILE_OFFSET_BITS and
+ * _LARGE_FILES in order to support files larger than 2 GB. On platforms
+ * where this happens it is mandatory that these macros are defined before
+ * any system header file is included, otherwise file handling function
+ * prototypes will be misdeclared and curl tool may not build properly;
+ * therefore we must include curl_setup.h before curl.h when building curl.
+ */
+
+#include "curl_setup.h" /* from the lib directory */
+
+/*
+ * curl tool certainly uses libcurl's external interface.
+ */
+
+#include <curl/curl.h> /* external interface */
+
+/*
+ * Platform specific stuff.
+ */
+
+#if defined(macintosh) && defined(__MRC__)
+#  define main(x,y) curl_main(x,y)
+#endif
+
+#ifdef TPF
+#  undef select
+   /* change which select is used for the curl command line tool */
+#  define select(a,b,c,d,e) tpf_select_bsd(a,b,c,d,e)
+   /* and turn off the progress meter */
+#  define CONF_DEFAULT (0|CONF_NOPROGRESS)
+#endif
+
+#ifndef OS
+#  define OS "unknown"
+#endif
+
+#ifndef UNPRINTABLE_CHAR
+   /* define what to use for unprintable characters */
+#  define UNPRINTABLE_CHAR '.'
+#endif
+
+#ifndef HAVE_STRDUP
+#  include "tool_strdup.h"
+#endif
+
+#endif /* HEADER_CURL_TOOL_SETUP_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_sleep.c b/ap/lib/libcurl/curl-7.54.1/src/tool_sleep.c
new file mode 100644
index 0000000..e19db5a
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_sleep.c
@@ -0,0 +1,58 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef HAVE_SYS_SELECT_H
+#  include <sys/select.h>
+#endif
+
+#ifdef HAVE_POLL_H
+#  include <poll.h>
+#elif defined(HAVE_SYS_POLL_H)
+#  include <sys/poll.h>
+#endif
+
+#ifdef MSDOS
+#  include <dos.h>
+#endif
+
+#include "tool_sleep.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+void tool_go_sleep(long ms)
+{
+#if defined(MSDOS)
+  delay(ms);
+#elif defined(WIN32)
+  Sleep(ms);
+#elif defined(HAVE_POLL_FINE)
+  (void)poll((void *)0, 0, (int)ms);
+#else
+  struct timeval timeout;
+  timeout.tv_sec = ms / 1000L;
+  ms = ms % 1000L;
+  timeout.tv_usec = ms * 1000L;
+  select(0, NULL,  NULL, NULL, &timeout);
+#endif
+}
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_sleep.h b/ap/lib/libcurl/curl-7.54.1/src/tool_sleep.h
new file mode 100644
index 0000000..6c51a93
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_sleep.h
@@ -0,0 +1,29 @@
+#ifndef HEADER_CURL_TOOL_SLEEP_H
+#define HEADER_CURL_TOOL_SLEEP_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 "tool_setup.h"
+
+void tool_go_sleep(long ms);
+
+#endif /* HEADER_CURL_TOOL_SLEEP_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_strdup.c b/ap/lib/libcurl/curl-7.54.1/src/tool_strdup.c
new file mode 100644
index 0000000..cb4a1c5
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_strdup.c
@@ -0,0 +1,47 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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.
+ *
+ ***************************************************************************/
+#include "tool_strdup.h"
+
+#ifndef HAVE_STRDUP
+char *strdup(const char *str)
+{
+  size_t len;
+  char *newstr;
+
+  if(!str)
+    return (char *)NULL;
+
+  len = strlen(str);
+
+  if(len >= ((size_t)-1) / sizeof(char))
+    return (char *)NULL;
+
+  newstr = malloc((len+1)*sizeof(char));
+  if(!newstr)
+    return (char *)NULL;
+
+  memcpy(newstr, str, (len+1)*sizeof(char));
+
+  return newstr;
+
+}
+#endif
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_strdup.h b/ap/lib/libcurl/curl-7.54.1/src/tool_strdup.h
new file mode 100644
index 0000000..f84b202
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_strdup.h
@@ -0,0 +1,30 @@
+#ifndef HEADER_TOOL_STRDUP_H
+#define HEADER_TOOL_STRDUP_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 "tool_setup.h"
+
+#ifndef HAVE_STRDUP
+extern char *strdup(const char *str);
+#endif
+
+#endif /* HEADER_TOOL_STRDUP_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_urlglob.c b/ap/lib/libcurl/curl-7.54.1/src/tool_urlglob.c
new file mode 100644
index 0000000..6b1ece0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_urlglob.c
@@ -0,0 +1,708 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+#include "tool_cfgable.h"
+#include "tool_doswin.h"
+#include "tool_urlglob.h"
+#include "tool_vms.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#define GLOBERROR(string, column, code) \
+  glob->error = string, glob->pos = column, code
+
+void glob_cleanup(URLGlob* glob);
+
+static CURLcode glob_fixed(URLGlob *glob, char *fixed, size_t len)
+{
+  URLPattern *pat = &glob->pattern[glob->size];
+  pat->type = UPTSet;
+  pat->content.Set.size = 1;
+  pat->content.Set.ptr_s = 0;
+  pat->globindex = -1;
+
+  pat->content.Set.elements = malloc(sizeof(char *));
+
+  if(!pat->content.Set.elements)
+    return GLOBERROR("out of memory", 0, CURLE_OUT_OF_MEMORY);
+
+  pat->content.Set.elements[0] = malloc(len+1);
+  if(!pat->content.Set.elements[0])
+    return GLOBERROR("out of memory", 0, CURLE_OUT_OF_MEMORY);
+
+  memcpy(pat->content.Set.elements[0], fixed, len);
+  pat->content.Set.elements[0][len] = 0;
+
+  return CURLE_OK;
+}
+
+/* multiply
+ *
+ * Multiplies and checks for overflow.
+ */
+static int multiply(unsigned long *amount, long with)
+{
+  unsigned long sum = *amount * with;
+  if(!with) {
+    *amount = 0;
+    return 0;
+  }
+  if(sum/with != *amount)
+    return 1; /* didn't fit, bail out */
+  *amount = sum;
+  return 0;
+}
+
+static CURLcode glob_set(URLGlob *glob, char **patternp,
+                         size_t *posp, unsigned long *amount,
+                         int globindex)
+{
+  /* processes a set expression with the point behind the opening '{'
+     ','-separated elements are collected until the next closing '}'
+  */
+  URLPattern *pat;
+  bool done = FALSE;
+  char *buf = glob->glob_buffer;
+  char *pattern = *patternp;
+  char *opattern = pattern;
+  size_t opos = *posp-1;
+
+  pat = &glob->pattern[glob->size];
+  /* patterns 0,1,2,... correspond to size=1,3,5,... */
+  pat->type = UPTSet;
+  pat->content.Set.size = 0;
+  pat->content.Set.ptr_s = 0;
+  pat->content.Set.elements = NULL;
+  pat->globindex = globindex;
+
+  while(!done) {
+    switch (*pattern) {
+    case '\0':                  /* URL ended while set was still open */
+      return GLOBERROR("unmatched brace", opos, CURLE_URL_MALFORMAT);
+
+    case '{':
+    case '[':                   /* no nested expressions at this time */
+      return GLOBERROR("nested brace", *posp, CURLE_URL_MALFORMAT);
+
+    case '}':                           /* set element completed */
+      if(opattern == pattern)
+        return GLOBERROR("empty string within braces", *posp,
+                         CURLE_URL_MALFORMAT);
+
+      /* add 1 to size since it'll be incremented below */
+      if(multiply(amount, pat->content.Set.size+1))
+        return GLOBERROR("range overflow", 0, CURLE_URL_MALFORMAT);
+
+      /* fall-through */
+    case ',':
+
+      *buf = '\0';
+      if(pat->content.Set.elements) {
+        char **new_arr = realloc(pat->content.Set.elements,
+                                 (pat->content.Set.size + 1) * sizeof(char *));
+        if(!new_arr)
+          return GLOBERROR("out of memory", 0, CURLE_OUT_OF_MEMORY);
+
+        pat->content.Set.elements = new_arr;
+      }
+      else
+        pat->content.Set.elements = malloc(sizeof(char *));
+
+      if(!pat->content.Set.elements)
+        return GLOBERROR("out of memory", 0, CURLE_OUT_OF_MEMORY);
+
+      pat->content.Set.elements[pat->content.Set.size] =
+        strdup(glob->glob_buffer);
+      if(!pat->content.Set.elements[pat->content.Set.size])
+        return GLOBERROR("out of memory", 0, CURLE_OUT_OF_MEMORY);
+      ++pat->content.Set.size;
+
+      if(*pattern == '}') {
+        pattern++; /* pass the closing brace */
+        done = TRUE;
+        continue;
+      }
+
+      buf = glob->glob_buffer;
+      ++pattern;
+      ++(*posp);
+      break;
+
+    case ']':                           /* illegal closing bracket */
+      return GLOBERROR("unexpected close bracket", *posp, CURLE_URL_MALFORMAT);
+
+    case '\\':                          /* escaped character, skip '\' */
+      if(pattern[1]) {
+        ++pattern;
+        ++(*posp);
+      }
+      /* intentional fallthrough */
+    default:
+      *buf++ = *pattern++;              /* copy character to set element */
+      ++(*posp);
+    }
+  }
+
+  *patternp = pattern; /* return with the new position */
+  return CURLE_OK;
+}
+
+static CURLcode glob_range(URLGlob *glob, char **patternp,
+                           size_t *posp, unsigned long *amount,
+                           int globindex)
+{
+  /* processes a range expression with the point behind the opening '['
+     - char range: e.g. "a-z]", "B-Q]"
+     - num range: e.g. "0-9]", "17-2000]"
+     - num range with leading zeros: e.g. "001-999]"
+     expression is checked for well-formedness and collected until the next ']'
+  */
+  URLPattern *pat;
+  int rc;
+  char *pattern = *patternp;
+  char *c;
+
+  pat = &glob->pattern[glob->size];
+  pat->globindex = globindex;
+
+  if(ISALPHA(*pattern)) {
+    /* character range detected */
+    char min_c;
+    char max_c;
+    char end_c;
+    unsigned long step = 1;
+
+    pat->type = UPTCharRange;
+
+    rc = sscanf(pattern, "%c-%c%c", &min_c, &max_c, &end_c);
+
+    if(rc == 3) {
+      if(end_c == ':') {
+        char *endp;
+        errno = 0;
+        step = strtoul(&pattern[4], &endp, 10);
+        if(errno || &pattern[4] == endp || *endp != ']')
+          step = 0;
+        else
+          pattern = endp+1;
+      }
+      else if(end_c != ']')
+        /* then this is wrong */
+        rc = 0;
+      else
+        /* end_c == ']' */
+        pattern += 4;
+    }
+
+    *posp += (pattern - *patternp);
+
+    if(rc != 3 || !step || step > (unsigned)INT_MAX ||
+       (min_c == max_c && step != 1) ||
+       (min_c != max_c && (min_c > max_c || step > (unsigned)(max_c - min_c) ||
+                           (max_c - min_c) > ('z' - 'a'))))
+      /* the pattern is not well-formed */
+      return GLOBERROR("bad range", *posp, CURLE_URL_MALFORMAT);
+
+    /* if there was a ":[num]" thing, use that as step or else use 1 */
+    pat->content.CharRange.step = (int)step;
+    pat->content.CharRange.ptr_c = pat->content.CharRange.min_c = min_c;
+    pat->content.CharRange.max_c = max_c;
+
+    if(multiply(amount, ((pat->content.CharRange.max_c -
+                          pat->content.CharRange.min_c) /
+                         pat->content.CharRange.step + 1)))
+      return GLOBERROR("range overflow", *posp, CURLE_URL_MALFORMAT);
+  }
+  else if(ISDIGIT(*pattern)) {
+    /* numeric range detected */
+    unsigned long min_n;
+    unsigned long max_n = 0;
+    unsigned long step_n = 0;
+    char *endp;
+
+    pat->type = UPTNumRange;
+    pat->content.NumRange.padlength = 0;
+
+    if(*pattern == '0') {
+      /* leading zero specified, count them! */
+      c = pattern;
+      while(ISDIGIT(*c)) {
+        c++;
+        ++pat->content.NumRange.padlength; /* padding length is set for all
+                                              instances of this pattern */
+      }
+    }
+
+    errno = 0;
+    min_n = strtoul(pattern, &endp, 10);
+    if(errno || (endp == pattern))
+      endp=NULL;
+    else {
+      if(*endp != '-')
+        endp = NULL;
+      else {
+        pattern = endp+1;
+        while(*pattern && ISBLANK(*pattern))
+          pattern++;
+        if(!ISDIGIT(*pattern)) {
+          endp = NULL;
+          goto fail;
+        }
+        errno = 0;
+        max_n = strtoul(pattern, &endp, 10);
+        if(errno || (*endp == ':')) {
+          pattern = endp+1;
+          errno = 0;
+          step_n = strtoul(pattern, &endp, 10);
+          if(errno)
+            /* over/underflow situation */
+            endp = NULL;
+        }
+        else
+          step_n = 1;
+        if(endp && (*endp == ']')) {
+          pattern= endp+1;
+        }
+        else
+          endp = NULL;
+      }
+    }
+
+    fail:
+    *posp += (pattern - *patternp);
+
+    if(!endp || !step_n ||
+       (min_n == max_n && step_n != 1) ||
+       (min_n != max_n && (min_n > max_n || step_n > (max_n - min_n))))
+      /* the pattern is not well-formed */
+      return GLOBERROR("bad range", *posp, CURLE_URL_MALFORMAT);
+
+    /* typecasting to ints are fine here since we make sure above that we
+       are within 31 bits */
+    pat->content.NumRange.ptr_n = pat->content.NumRange.min_n = min_n;
+    pat->content.NumRange.max_n = max_n;
+    pat->content.NumRange.step = step_n;
+
+    if(multiply(amount, ((pat->content.NumRange.max_n -
+                          pat->content.NumRange.min_n) /
+                         pat->content.NumRange.step + 1)))
+      return GLOBERROR("range overflow", *posp, CURLE_URL_MALFORMAT);
+  }
+  else
+    return GLOBERROR("bad range specification", *posp, CURLE_URL_MALFORMAT);
+
+  *patternp = pattern;
+  return CURLE_OK;
+}
+
+static bool peek_ipv6(const char *str, size_t *skip)
+{
+  /*
+   * Scan for a potential IPv6 literal.
+   * - Valid globs contain a hyphen and <= 1 colon.
+   * - IPv6 literals contain no hyphens and >= 2 colons.
+   */
+  size_t i = 0;
+  size_t colons = 0;
+  if(str[i++] != '[') {
+    return FALSE;
+  }
+  for(;;) {
+    const char c = str[i++];
+    if(ISALNUM(c) || c == '.' || c == '%') {
+      /* ok */
+    }
+    else if(c == ':') {
+      colons++;
+    }
+    else if(c == ']') {
+      *skip = i;
+      return colons >= 2 ? TRUE : FALSE;
+    }
+    else {
+      return FALSE;
+    }
+  }
+}
+
+static CURLcode glob_parse(URLGlob *glob, char *pattern,
+                           size_t pos, unsigned long *amount)
+{
+  /* processes a literal string component of a URL
+     special characters '{' and '[' branch to set/range processing functions
+   */
+  CURLcode res = CURLE_OK;
+  int globindex = 0; /* count "actual" globs */
+
+  *amount = 1;
+
+  while(*pattern && !res) {
+    char *buf = glob->glob_buffer;
+    size_t sublen = 0;
+    while(*pattern && *pattern != '{') {
+      if(*pattern == '[') {
+        /* Skip over potential IPv6 literals. */
+        size_t skip;
+        if(peek_ipv6(pattern, &skip)) {
+          memcpy(buf, pattern, skip);
+          buf += skip;
+          pattern += skip;
+          sublen += skip;
+          continue;
+        }
+        break;
+      }
+      if(*pattern == '}' || *pattern == ']')
+        return GLOBERROR("unmatched close brace/bracket", pos,
+                         CURLE_URL_MALFORMAT);
+
+      /* only allow \ to escape known "special letters" */
+      if(*pattern == '\\' &&
+         (*(pattern+1) == '{' || *(pattern+1) == '[' ||
+          *(pattern+1) == '}' || *(pattern+1) == ']') ) {
+
+        /* escape character, skip '\' */
+        ++pattern;
+        ++pos;
+      }
+      *buf++ = *pattern++; /* copy character to literal */
+      ++pos;
+      sublen++;
+    }
+    if(sublen) {
+      /* we got a literal string, add it as a single-item list */
+      *buf = '\0';
+      res = glob_fixed(glob, glob->glob_buffer, sublen);
+    }
+    else {
+      switch (*pattern) {
+      case '\0': /* done  */
+        break;
+
+      case '{':
+        /* process set pattern */
+        pattern++;
+        pos++;
+        res = glob_set(glob, &pattern, &pos, amount, globindex++);
+        break;
+
+      case '[':
+        /* process range pattern */
+        pattern++;
+        pos++;
+        res = glob_range(glob, &pattern, &pos, amount, globindex++);
+        break;
+      }
+    }
+
+    if(++glob->size >= GLOB_PATTERN_NUM)
+      return GLOBERROR("too many globs", pos, CURLE_URL_MALFORMAT);
+  }
+  return res;
+}
+
+CURLcode glob_url(URLGlob **glob, char *url, unsigned long *urlnum,
+                  FILE *error)
+{
+  /*
+   * We can deal with any-size, just make a buffer with the same length
+   * as the specified URL!
+   */
+  URLGlob *glob_expand;
+  unsigned long amount = 0;
+  char *glob_buffer;
+  CURLcode res;
+
+  *glob = NULL;
+
+  glob_buffer = malloc(strlen(url) + 1);
+  if(!glob_buffer)
+    return CURLE_OUT_OF_MEMORY;
+  glob_buffer[0]=0;
+
+  glob_expand = calloc(1, sizeof(URLGlob));
+  if(!glob_expand) {
+    Curl_safefree(glob_buffer);
+    return CURLE_OUT_OF_MEMORY;
+  }
+  glob_expand->urllen = strlen(url);
+  glob_expand->glob_buffer = glob_buffer;
+
+  res = glob_parse(glob_expand, url, 1, &amount);
+  if(!res)
+    *urlnum = amount;
+  else {
+    if(error && glob_expand->error) {
+      char text[128];
+      const char *t;
+      if(glob_expand->pos) {
+        snprintf(text, sizeof(text), "%s in column %zu", glob_expand->error,
+                 glob_expand->pos);
+        t = text;
+      }
+      else
+        t = glob_expand->error;
+
+      /* send error description to the error-stream */
+      fprintf(error, "curl: (%d) [globbing] %s\n", res, t);
+    }
+    /* it failed, we cleanup */
+    glob_cleanup(glob_expand);
+    *urlnum = 1;
+    return res;
+  }
+
+  *glob = glob_expand;
+  return CURLE_OK;
+}
+
+void glob_cleanup(URLGlob* glob)
+{
+  size_t i;
+  int elem;
+
+  for(i = 0; i < glob->size; i++) {
+    if((glob->pattern[i].type == UPTSet) &&
+       (glob->pattern[i].content.Set.elements)) {
+      for(elem = glob->pattern[i].content.Set.size - 1;
+          elem >= 0;
+          --elem) {
+        Curl_safefree(glob->pattern[i].content.Set.elements[elem]);
+      }
+      Curl_safefree(glob->pattern[i].content.Set.elements);
+    }
+  }
+  Curl_safefree(glob->glob_buffer);
+  Curl_safefree(glob);
+}
+
+CURLcode glob_next_url(char **globbed, URLGlob *glob)
+{
+  URLPattern *pat;
+  size_t i;
+  size_t len;
+  size_t buflen = glob->urllen + 1;
+  char *buf = glob->glob_buffer;
+
+  *globbed = NULL;
+
+  if(!glob->beenhere)
+    glob->beenhere = 1;
+  else {
+    bool carry = TRUE;
+
+    /* implement a counter over the index ranges of all patterns, starting
+       with the rightmost pattern */
+    for(i = 0; carry && (i < glob->size); i++) {
+      carry = FALSE;
+      pat = &glob->pattern[glob->size - 1 - i];
+      switch(pat->type) {
+      case UPTSet:
+        if((pat->content.Set.elements) &&
+           (++pat->content.Set.ptr_s == pat->content.Set.size)) {
+          pat->content.Set.ptr_s = 0;
+          carry = TRUE;
+        }
+        break;
+      case UPTCharRange:
+        pat->content.CharRange.ptr_c =
+          (char)(pat->content.CharRange.step +
+                 (int)((unsigned char)pat->content.CharRange.ptr_c));
+        if(pat->content.CharRange.ptr_c > pat->content.CharRange.max_c) {
+          pat->content.CharRange.ptr_c = pat->content.CharRange.min_c;
+          carry = TRUE;
+        }
+        break;
+      case UPTNumRange:
+        pat->content.NumRange.ptr_n += pat->content.NumRange.step;
+        if(pat->content.NumRange.ptr_n > pat->content.NumRange.max_n) {
+          pat->content.NumRange.ptr_n = pat->content.NumRange.min_n;
+          carry = TRUE;
+        }
+        break;
+      default:
+        printf("internal error: invalid pattern type (%d)\n", (int)pat->type);
+        return CURLE_FAILED_INIT;
+      }
+    }
+    if(carry) {         /* first pattern ptr has run into overflow, done! */
+      /* TODO: verify if this should actally return CURLE_OK. */
+      return CURLE_OK; /* CURLE_OK to match previous behavior */
+    }
+  }
+
+  for(i = 0; i < glob->size; ++i) {
+    pat = &glob->pattern[i];
+    switch(pat->type) {
+    case UPTSet:
+      if(pat->content.Set.elements) {
+        snprintf(buf, buflen, "%s",
+                 pat->content.Set.elements[pat->content.Set.ptr_s]);
+        len = strlen(buf);
+        buf += len;
+        buflen -= len;
+      }
+      break;
+    case UPTCharRange:
+      if(buflen) {
+        *buf++ = pat->content.CharRange.ptr_c;
+        *buf = '\0';
+        buflen--;
+      }
+      break;
+    case UPTNumRange:
+      snprintf(buf, buflen, "%0*ld",
+               pat->content.NumRange.padlength,
+               pat->content.NumRange.ptr_n);
+      len = strlen(buf);
+      buf += len;
+      buflen -= len;
+      break;
+    default:
+      printf("internal error: invalid pattern type (%d)\n", (int)pat->type);
+      return CURLE_FAILED_INIT;
+    }
+  }
+
+  *globbed = strdup(glob->glob_buffer);
+  if(!*globbed)
+    return CURLE_OUT_OF_MEMORY;
+
+  return CURLE_OK;
+}
+
+CURLcode glob_match_url(char **result, char *filename, URLGlob *glob)
+{
+  char *target;
+  size_t allocsize;
+  char numbuf[18];
+  char *appendthis = NULL;
+  size_t appendlen = 0;
+  size_t stringlen = 0;
+
+  *result = NULL;
+
+  /* We cannot use the glob_buffer for storage here since the filename may
+   * be longer than the URL we use. We allocate a good start size, then
+   * we need to realloc in case of need.
+   */
+  allocsize = strlen(filename) + 1; /* make it at least one byte to store the
+                                       trailing zero */
+  target = malloc(allocsize);
+  if(!target)
+    return CURLE_OUT_OF_MEMORY;
+
+  while(*filename) {
+    if(*filename == '#' && ISDIGIT(filename[1])) {
+      unsigned long i;
+      char *ptr = filename;
+      unsigned long num = strtoul(&filename[1], &filename, 10);
+      URLPattern *pat =NULL;
+
+      if(num < glob->size) {
+        num--; /* make it zero based */
+        /* find the correct glob entry */
+        for(i=0; i<glob->size; i++) {
+          if(glob->pattern[i].globindex == (int)num) {
+            pat = &glob->pattern[i];
+            break;
+          }
+        }
+      }
+
+      if(pat) {
+        switch(pat->type) {
+        case UPTSet:
+          if(pat->content.Set.elements) {
+            appendthis = pat->content.Set.elements[pat->content.Set.ptr_s];
+            appendlen =
+              strlen(pat->content.Set.elements[pat->content.Set.ptr_s]);
+          }
+          break;
+        case UPTCharRange:
+          numbuf[0] = pat->content.CharRange.ptr_c;
+          numbuf[1] = 0;
+          appendthis = numbuf;
+          appendlen = 1;
+          break;
+        case UPTNumRange:
+          snprintf(numbuf, sizeof(numbuf), "%0*lu",
+                   pat->content.NumRange.padlength,
+                   pat->content.NumRange.ptr_n);
+          appendthis = numbuf;
+          appendlen = strlen(numbuf);
+          break;
+        default:
+          fprintf(stderr, "internal error: invalid pattern type (%d)\n",
+                  (int)pat->type);
+          Curl_safefree(target);
+          return CURLE_FAILED_INIT;
+        }
+      }
+      else {
+        /* #[num] out of range, use the #[num] in the output */
+        filename = ptr;
+        appendthis = filename++;
+        appendlen = 1;
+      }
+    }
+    else {
+      appendthis = filename++;
+      appendlen = 1;
+    }
+    if(appendlen + stringlen >= allocsize) {
+      char *newstr;
+      /* we append a single byte to allow for the trailing byte to be appended
+         at the end of this function outside the while() loop */
+      allocsize = (appendlen + stringlen) * 2;
+      newstr = realloc(target, allocsize + 1);
+      if(!newstr) {
+        Curl_safefree(target);
+        return CURLE_OUT_OF_MEMORY;
+      }
+      target = newstr;
+    }
+    memcpy(&target[stringlen], appendthis, appendlen);
+    stringlen += appendlen;
+  }
+  target[stringlen]= '\0';
+
+#if defined(MSDOS) || defined(WIN32)
+  {
+    char *sanitized;
+    SANITIZEcode sc = sanitize_file_name(&sanitized, target,
+                                         (SANITIZE_ALLOW_PATH |
+                                          SANITIZE_ALLOW_RESERVED));
+    Curl_safefree(target);
+    if(sc)
+      return CURLE_URL_MALFORMAT;
+    target = sanitized;
+  }
+#endif /* MSDOS || WIN32 */
+
+  *result = target;
+  return CURLE_OK;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_urlglob.h b/ap/lib/libcurl/curl-7.54.1/src/tool_urlglob.h
new file mode 100644
index 0000000..82d9d46
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_urlglob.h
@@ -0,0 +1,77 @@
+#ifndef HEADER_CURL_TOOL_URLGLOB_H
+#define HEADER_CURL_TOOL_URLGLOB_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 "tool_setup.h"
+
+typedef enum {
+  UPTSet = 1,
+  UPTCharRange,
+  UPTNumRange
+} URLPatternType;
+
+typedef struct {
+  URLPatternType type;
+  int globindex; /* the number of this particular glob or -1 if not used
+                    within {} or [] */
+  union {
+    struct {
+      char **elements;
+      int size;
+      int ptr_s;
+    } Set;
+    struct {
+      char min_c;
+      char max_c;
+      char ptr_c;
+      int step;
+    } CharRange;
+    struct {
+      unsigned long min_n;
+      unsigned long max_n;
+      int padlength;
+      unsigned long ptr_n;
+      unsigned long step;
+    } NumRange;
+  } content;
+} URLPattern;
+
+/* the total number of globs supported */
+#define GLOB_PATTERN_NUM 100
+
+typedef struct {
+  URLPattern pattern[GLOB_PATTERN_NUM];
+  size_t size;
+  size_t urllen;
+  char *glob_buffer;
+  char beenhere;
+  const char *error; /* error message */
+  size_t pos;        /* column position of error or 0 */
+} URLGlob;
+
+CURLcode glob_url(URLGlob**, char *, unsigned long *, FILE *);
+CURLcode glob_next_url(char **, URLGlob *);
+CURLcode glob_match_url(char **, char *, URLGlob *);
+void glob_cleanup(URLGlob* glob);
+
+#endif /* HEADER_CURL_TOOL_URLGLOB_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_util.c b/ap/lib/libcurl/curl-7.54.1/src/tool_util.c
new file mode 100644
index 0000000..875411e
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_util.c
@@ -0,0 +1,126 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#include "tool_util.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#if defined(WIN32) && !defined(MSDOS)
+
+struct timeval 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.
+  **
+  ** GetTickCount64() is available on Windows version from Windows Vista
+  ** and Windows Server 2008 up to nowadays. The resolution of the
+  ** function is limited to the resolution of the system timer, which
+  ** is typically in the range of 10 milliseconds to 16 milliseconds.
+  */
+  struct timeval now;
+#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
+  ULONGLONG milliseconds = GetTickCount64();
+#else
+  DWORD milliseconds = GetTickCount();
+#endif
+  now.tv_sec = (long)(milliseconds / 1000);
+  now.tv_usec = (milliseconds % 1000) * 1000;
+  return now;
+}
+
+#elif defined(HAVE_CLOCK_GETTIME_MONOTONIC)
+
+struct timeval 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 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 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 tvdiff(struct timeval newer, struct timeval older)
+{
+  return (long)(newer.tv_sec-older.tv_sec)*1000+
+    (long)(newer.tv_usec-older.tv_usec)/1000;
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_util.h b/ap/lib/libcurl/curl-7.54.1/src/tool_util.h
new file mode 100644
index 0000000..fda1e61
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_util.h
@@ -0,0 +1,37 @@
+#ifndef HEADER_CURL_TOOL_UTIL_H
+#define HEADER_CURL_TOOL_UTIL_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+struct timeval 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 tvdiff(struct timeval t1, struct timeval t2);
+
+#endif /* HEADER_CURL_TOOL_UTIL_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_version.h b/ap/lib/libcurl/curl-7.54.1/src/tool_version.h
new file mode 100644
index 0000000..b4a23e4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_version.h
@@ -0,0 +1,34 @@
+#ifndef HEADER_CURL_TOOL_VERSION_H
+#define HEADER_CURL_TOOL_VERSION_H
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 <curl/curlver.h>
+
+#define CURL_NAME "curl"
+#define CURL_COPYRIGHT LIBCURL_COPYRIGHT
+#define CURL_VERSION "7.54.1"
+#define CURL_VERSION_MAJOR LIBCURL_VERSION_MAJOR
+#define CURL_VERSION_MINOR LIBCURL_VERSION_MINOR
+#define CURL_VERSION_PATCH LIBCURL_VERSION_PATCH
+#define CURL_ID CURL_NAME " " CURL_VERSION " (" OS ") "
+
+#endif /* HEADER_CURL_TOOL_VERSION_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_vms.c b/ap/lib/libcurl/curl-7.54.1/src/tool_vms.c
new file mode 100644
index 0000000..cc30fe0
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_vms.c
@@ -0,0 +1,219 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef __VMS
+
+#if defined(__DECC) && !defined(__VAX) && \
+    defined(__CRTL_VER) && (__CRTL_VER >= 70301000)
+#include <unixlib.h>
+#endif
+
+#define ENABLE_CURLX_PRINTF
+#include "curlx.h"
+
+#include "curlmsg_vms.h"
+#include "tool_vms.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+void decc$__posix_exit(int __status);
+void decc$exit(int __status);
+
+static int vms_shell = -1;
+
+/* VMS has a DCL shell and and also has Unix shells ported to it.
+ * When curl is running under a Unix shell, we want it to be as much
+ * like Unix as possible.
+ */
+int is_vms_shell(void)
+{
+  char *shell;
+
+  /* Have we checked the shell yet? */
+  if(vms_shell >= 0)
+    return vms_shell;
+
+  shell = getenv("SHELL");
+
+  /* No shell, means DCL */
+  if(shell == NULL) {
+    vms_shell = 1;
+    return 1;
+  }
+
+  /* Have to make sure some one did not set shell to DCL */
+  if(strcmp(shell, "DCL") == 0) {
+    vms_shell = 1;
+    return 1;
+  }
+
+  vms_shell = 0;
+  return 0;
+}
+
+/*
+ * VMS has two exit() routines.  When running under a Unix style shell, then
+ * Unix style and the __posix_exit() routine is used.
+ *
+ * When running under the DCL shell, then the VMS encoded codes and decc$exit()
+ * is used.
+ *
+ * We can not use exit() or return a code from main() because the actual
+ * routine called depends on both the compiler version, compile options, and
+ * feature macro settings, and one of the exit routines is hidden at compile
+ * time.
+ *
+ * Since we want Curl to work properly under the VMS DCL shell and Unix
+ * shells under VMS, this routine should compile correctly regardless of
+ * the settings.
+ */
+
+void vms_special_exit(int code, int vms_show)
+{
+  int vms_code;
+
+  /* The Posix exit mode is only available after VMS 7.0 */
+#if __CRTL_VER >= 70000000
+  if(is_vms_shell() == 0) {
+    decc$__posix_exit(code);
+  }
+#endif
+
+  if(code > CURL_LAST) {   /* If CURL_LAST exceeded then */
+    vms_code = CURL_LAST;  /* curlmsg.h is out of sync.  */
+  }
+  else {
+    vms_code = vms_cond[code] | vms_show;
+  }
+  decc$exit(vms_code);
+}
+
+#if defined(__DECC) && !defined(__VAX) && \
+    defined(__CRTL_VER) && (__CRTL_VER >= 70301000)
+
+/*
+ * 2004-09-19 SMS.
+ *
+ * decc_init()
+ *
+ * On non-VAX systems, use LIB$INITIALIZE to set a collection of C
+ * RTL features without using the DECC$* logical name method, nor
+ * requiring the user to define the corresponding logical names.
+ */
+
+/* Structure to hold a DECC$* feature name and its desired value. */
+typedef struct {
+  char *name;
+  int value;
+} decc_feat_t;
+
+/* Array of DECC$* feature names and their desired values. */
+static decc_feat_t decc_feat_array[] = {
+  /* Preserve command-line case with SET PROCESS/PARSE_STYLE=EXTENDED */
+  { "DECC$ARGV_PARSE_STYLE", 1 },
+  /* Preserve case for file names on ODS5 disks. */
+  { "DECC$EFS_CASE_PRESERVE", 1 },
+  /* Enable multiple dots (and most characters) in ODS5 file names,
+     while preserving VMS-ness of ";version". */
+  { "DECC$EFS_CHARSET", 1 },
+  /* List terminator. */
+  { (char *)NULL, 0 }
+};
+
+/* Flag to sense if decc_init() was called. */
+static int decc_init_done = -1;
+
+/* LIB$INITIALIZE initialization function. */
+static void decc_init(void)
+{
+  int feat_index;
+  int feat_value;
+  int feat_value_max;
+  int feat_value_min;
+  int i;
+  int sts;
+
+  /* Set the global flag to indicate that LIB$INITIALIZE worked. */
+  decc_init_done = 1;
+
+  /* Loop through all items in the decc_feat_array[]. */
+  for(i = 0; decc_feat_array[i].name != NULL; i++) {
+
+    /* Get the feature index. */
+    feat_index = decc$feature_get_index(decc_feat_array[i].name);
+
+    if(feat_index >= 0) {
+      /* Valid item.  Collect its properties. */
+      feat_value = decc$feature_get_value(feat_index, 1);
+      feat_value_min = decc$feature_get_value(feat_index, 2);
+      feat_value_max = decc$feature_get_value(feat_index, 3);
+
+      if((decc_feat_array[i].value >= feat_value_min) &&
+         (decc_feat_array[i].value <= feat_value_max)) {
+        /* Valid value.  Set it if necessary. */
+        if(feat_value != decc_feat_array[i].value) {
+          sts = decc$feature_set_value(feat_index, 1,
+                                       decc_feat_array[i].value);
+        }
+      }
+      else {
+        /* Invalid DECC feature value. */
+        printf(" INVALID DECC FEATURE VALUE, %d: %d <= %s <= %d.\n",
+               feat_value,
+               feat_value_min, decc_feat_array[i].name, feat_value_max);
+      }
+    }
+    else {
+      /* Invalid DECC feature name. */
+      printf(" UNKNOWN DECC FEATURE: %s.\n", decc_feat_array[i].name);
+    }
+
+  }
+}
+
+/* Get "decc_init()" into a valid, loaded LIB$INITIALIZE PSECT. */
+
+#pragma nostandard
+
+/* Establish the LIB$INITIALIZE PSECTs, with proper alignment and
+   other attributes.  Note that "nopic" is significant only on VAX. */
+#pragma extern_model save
+#pragma extern_model strict_refdef "LIB$INITIALIZ" 2, nopic, nowrt
+const int spare[8] = {0};
+#pragma extern_model strict_refdef "LIB$INITIALIZE" 2, nopic, nowrt
+void (*const x_decc_init)() = decc_init;
+#pragma extern_model restore
+
+/* Fake reference to ensure loading the LIB$INITIALIZE PSECT. */
+#pragma extern_model save
+int LIB$INITIALIZE(void);
+#pragma extern_model strict_refdef
+int dmy_lib$initialize = (int) LIB$INITIALIZE;
+#pragma extern_model restore
+
+#pragma standard
+
+#endif /* __DECC && !__VAX && __CRTL_VER && __CRTL_VER >= 70301000 */
+
+#endif /* __VMS */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_vms.h b/ap/lib/libcurl/curl-7.54.1/src/tool_vms.h
new file mode 100644
index 0000000..6656a59
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_vms.h
@@ -0,0 +1,47 @@
+#ifndef HEADER_CURL_TOOL_VMS_H
+#define HEADER_CURL_TOOL_VMS_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 "tool_setup.h"
+
+#ifdef __VMS
+
+/*
+ * Forward-declaration of global variable vms_show defined
+ * in tool_main.c, used in main() as parameter for function
+ * vms_special_exit() to allow proper curl tool exiting.
+ */
+extern int vms_show;
+
+int is_vms_shell(void);
+void vms_special_exit(int code, int vms_show);
+
+#undef exit
+#define exit(__code) vms_special_exit((__code), (0))
+
+#define  VMS_STS(c,f,e,s) (((c&0xF)<<28)|((f&0xFFF)<<16)|((e&0x1FFF)<3)|(s&7))
+#define  VMSSTS_HIDE  VMS_STS(1,0,0,0)
+
+#endif /* __VMS */
+
+#endif /* HEADER_CURL_TOOL_VMS_H */
+
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_writeout.c b/ap/lib/libcurl/curl-7.54.1/src/tool_writeout.c
new file mode 100644
index 0000000..5d92bd2
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_writeout.c
@@ -0,0 +1,369 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+#define ENABLE_CURLX_PRINTF
+/* use our own printf() functions */
+#include "curlx.h"
+#include "tool_cfgable.h"
+#include "tool_writeout.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+typedef enum {
+  VAR_NONE,       /* must be the first */
+  VAR_TOTAL_TIME,
+  VAR_NAMELOOKUP_TIME,
+  VAR_CONNECT_TIME,
+  VAR_APPCONNECT_TIME,
+  VAR_PRETRANSFER_TIME,
+  VAR_STARTTRANSFER_TIME,
+  VAR_SIZE_DOWNLOAD,
+  VAR_SIZE_UPLOAD,
+  VAR_SPEED_DOWNLOAD,
+  VAR_SPEED_UPLOAD,
+  VAR_HTTP_CODE,
+  VAR_HTTP_CODE_PROXY,
+  VAR_HEADER_SIZE,
+  VAR_REQUEST_SIZE,
+  VAR_EFFECTIVE_URL,
+  VAR_CONTENT_TYPE,
+  VAR_NUM_CONNECTS,
+  VAR_REDIRECT_TIME,
+  VAR_REDIRECT_COUNT,
+  VAR_FTP_ENTRY_PATH,
+  VAR_REDIRECT_URL,
+  VAR_SSL_VERIFY_RESULT,
+  VAR_PROXY_SSL_VERIFY_RESULT,
+  VAR_EFFECTIVE_FILENAME,
+  VAR_PRIMARY_IP,
+  VAR_PRIMARY_PORT,
+  VAR_LOCAL_IP,
+  VAR_LOCAL_PORT,
+  VAR_HTTP_VERSION,
+  VAR_SCHEME,
+  VAR_NUM_OF_VARS /* must be the last */
+} replaceid;
+
+struct variable {
+  const char *name;
+  replaceid id;
+};
+
+
+static const struct variable replacements[]={
+  {"url_effective", VAR_EFFECTIVE_URL},
+  {"http_code", VAR_HTTP_CODE},
+  {"response_code", VAR_HTTP_CODE},
+  {"http_connect", VAR_HTTP_CODE_PROXY},
+  {"time_total", VAR_TOTAL_TIME},
+  {"time_namelookup", VAR_NAMELOOKUP_TIME},
+  {"time_connect", VAR_CONNECT_TIME},
+  {"time_appconnect", VAR_APPCONNECT_TIME},
+  {"time_pretransfer", VAR_PRETRANSFER_TIME},
+  {"time_starttransfer", VAR_STARTTRANSFER_TIME},
+  {"size_header", VAR_HEADER_SIZE},
+  {"size_request", VAR_REQUEST_SIZE},
+  {"size_download", VAR_SIZE_DOWNLOAD},
+  {"size_upload", VAR_SIZE_UPLOAD},
+  {"speed_download", VAR_SPEED_DOWNLOAD},
+  {"speed_upload", VAR_SPEED_UPLOAD},
+  {"content_type", VAR_CONTENT_TYPE},
+  {"num_connects", VAR_NUM_CONNECTS},
+  {"time_redirect", VAR_REDIRECT_TIME},
+  {"num_redirects", VAR_REDIRECT_COUNT},
+  {"ftp_entry_path", VAR_FTP_ENTRY_PATH},
+  {"redirect_url", VAR_REDIRECT_URL},
+  {"ssl_verify_result", VAR_SSL_VERIFY_RESULT},
+  {"proxy_ssl_verify_result", VAR_PROXY_SSL_VERIFY_RESULT},
+  {"filename_effective", VAR_EFFECTIVE_FILENAME},
+  {"remote_ip", VAR_PRIMARY_IP},
+  {"remote_port", VAR_PRIMARY_PORT},
+  {"local_ip", VAR_LOCAL_IP},
+  {"local_port", VAR_LOCAL_PORT},
+  {"http_version", VAR_HTTP_VERSION},
+  {"scheme", VAR_SCHEME},
+  {NULL, VAR_NONE}
+};
+
+void ourWriteOut(CURL *curl, struct OutStruct *outs, const char *writeinfo)
+{
+  FILE *stream = stdout;
+  const char *ptr = writeinfo;
+  char *stringp = NULL;
+  long longinfo;
+  double doubleinfo;
+
+  while(ptr && *ptr) {
+    if('%' == *ptr && ptr[1]) {
+      if('%' == ptr[1]) {
+        /* an escaped %-letter */
+        fputc('%', stream);
+        ptr += 2;
+      }
+      else {
+        /* this is meant as a variable to output */
+        char *end;
+        char keepit;
+        int i;
+        if('{' == ptr[1]) {
+          bool match = FALSE;
+          end = strchr(ptr, '}');
+          ptr += 2; /* pass the % and the { */
+          if(!end) {
+            fputs("%{", stream);
+            continue;
+          }
+          keepit = *end;
+          *end = 0; /* zero terminate */
+          for(i = 0; replacements[i].name; i++) {
+            if(curl_strequal(ptr, replacements[i].name)) {
+              match = TRUE;
+              switch(replacements[i].id) {
+              case VAR_EFFECTIVE_URL:
+                if((CURLE_OK ==
+                    curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &stringp))
+                   && stringp)
+                  fputs(stringp, stream);
+                break;
+              case VAR_HTTP_CODE:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &longinfo))
+                  fprintf(stream, "%03ld", longinfo);
+                break;
+              case VAR_HTTP_CODE_PROXY:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_HTTP_CONNECTCODE,
+                                     &longinfo))
+                  fprintf(stream, "%03ld", longinfo);
+                break;
+              case VAR_HEADER_SIZE:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_HEADER_SIZE, &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_REQUEST_SIZE:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_REQUEST_SIZE, &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_NUM_CONNECTS:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_REDIRECT_COUNT:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_REDIRECT_COUNT, &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_REDIRECT_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_REDIRECT_TIME,
+                                     &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_TOTAL_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_NAMELOOKUP_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_NAMELOOKUP_TIME,
+                                     &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_CONNECT_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_CONNECT_TIME, &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_APPCONNECT_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_APPCONNECT_TIME,
+                                     &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_PRETRANSFER_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_PRETRANSFER_TIME,
+                                     &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_STARTTRANSFER_TIME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_STARTTRANSFER_TIME,
+                                     &doubleinfo))
+                  fprintf(stream, "%.6f", doubleinfo);
+                break;
+              case VAR_SIZE_UPLOAD:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_SIZE_UPLOAD, &doubleinfo))
+                  fprintf(stream, "%.0f", doubleinfo);
+                break;
+              case VAR_SIZE_DOWNLOAD:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD,
+                                     &doubleinfo))
+                  fprintf(stream, "%.0f", doubleinfo);
+                break;
+              case VAR_SPEED_DOWNLOAD:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_SPEED_DOWNLOAD,
+                                     &doubleinfo))
+                  fprintf(stream, "%.3f", doubleinfo);
+                break;
+              case VAR_SPEED_UPLOAD:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_SPEED_UPLOAD, &doubleinfo))
+                  fprintf(stream, "%.3f", doubleinfo);
+                break;
+              case VAR_CONTENT_TYPE:
+                if((CURLE_OK ==
+                    curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &stringp))
+                   && stringp)
+                  fputs(stringp, stream);
+                break;
+              case VAR_FTP_ENTRY_PATH:
+                if((CURLE_OK ==
+                    curl_easy_getinfo(curl, CURLINFO_FTP_ENTRY_PATH, &stringp))
+                   && stringp)
+                  fputs(stringp, stream);
+                break;
+              case VAR_REDIRECT_URL:
+                if((CURLE_OK ==
+                    curl_easy_getinfo(curl, CURLINFO_REDIRECT_URL, &stringp))
+                   && stringp)
+                  fputs(stringp, stream);
+                break;
+              case VAR_SSL_VERIFY_RESULT:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_SSL_VERIFYRESULT,
+                                     &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_PROXY_SSL_VERIFY_RESULT:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_PROXY_SSL_VERIFYRESULT,
+                                     &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_EFFECTIVE_FILENAME:
+                if(outs->filename)
+                  fprintf(stream, "%s", outs->filename);
+                break;
+              case VAR_PRIMARY_IP:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_PRIMARY_IP,
+                                     &stringp))
+                  fprintf(stream, "%s", stringp);
+                break;
+              case VAR_PRIMARY_PORT:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_PRIMARY_PORT,
+                                     &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_LOCAL_IP:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_LOCAL_IP,
+                                     &stringp))
+                  fprintf(stream, "%s", stringp);
+                break;
+              case VAR_LOCAL_PORT:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_LOCAL_PORT,
+                                     &longinfo))
+                  fprintf(stream, "%ld", longinfo);
+                break;
+              case VAR_HTTP_VERSION:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_HTTP_VERSION,
+                                     &longinfo)) {
+                  const char *version = "0";
+                  switch(longinfo) {
+                  case CURL_HTTP_VERSION_1_0:
+                    version = "1.0";
+                    break;
+                  case CURL_HTTP_VERSION_1_1:
+                    version = "1.1";
+                    break;
+                  case CURL_HTTP_VERSION_2_0:
+                    version = "2";
+                    break;
+                  }
+
+                  fprintf(stream, version);
+                }
+                break;
+              case VAR_SCHEME:
+                if(CURLE_OK ==
+                   curl_easy_getinfo(curl, CURLINFO_SCHEME,
+                                     &stringp))
+                  fprintf(stream, "%s", stringp);
+                break;
+              default:
+                break;
+              }
+              break;
+            }
+          }
+          if(!match) {
+            fprintf(stderr, "curl: unknown --write-out variable: '%s'\n", ptr);
+          }
+          ptr = end + 1; /* pass the end */
+          *end = keepit;
+        }
+        else {
+          /* illegal syntax, then just output the characters that are used */
+          fputc('%', stream);
+          fputc(ptr[1], stream);
+          ptr += 2;
+        }
+      }
+    }
+    else if('\\' == *ptr && ptr[1]) {
+      switch(ptr[1]) {
+      case 'r':
+        fputc('\r', stream);
+        break;
+      case 'n':
+        fputc('\n', stream);
+        break;
+      case 't':
+        fputc('\t', stream);
+        break;
+      default:
+        /* unknown, just output this */
+        fputc(*ptr, stream);
+        fputc(ptr[1], stream);
+        break;
+      }
+      ptr += 2;
+    }
+    else {
+      fputc(*ptr, stream);
+      ptr++;
+    }
+  }
+
+}
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_writeout.h b/ap/lib/libcurl/curl-7.54.1/src/tool_writeout.h
new file mode 100644
index 0000000..8d3f645
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_writeout.h
@@ -0,0 +1,28 @@
+#ifndef HEADER_CURL_TOOL_WRITEOUT_H
+#define HEADER_CURL_TOOL_WRITEOUT_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 "tool_setup.h"
+
+void ourWriteOut(CURL *curl, struct OutStruct *outs, const char *writeinfo);
+
+#endif /* HEADER_CURL_TOOL_WRITEOUT_H */
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_xattr.c b/ap/lib/libcurl/curl-7.54.1/src/tool_xattr.c
new file mode 100644
index 0000000..f49fd57
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_xattr.c
@@ -0,0 +1,90 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  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 "tool_setup.h"
+
+#ifdef HAVE_FSETXATTR
+#  include <sys/xattr.h> /* header from libc, not from libattr */
+#  define USE_XATTR
+#elif defined(__FreeBSD_version) && (__FreeBSD_version > 500000)
+#  include <sys/types.h>
+#  include <sys/extattr.h>
+#  define USE_XATTR
+#endif
+
+#include "tool_xattr.h"
+
+#include "memdebug.h" /* keep this as LAST include */
+
+#ifdef USE_XATTR
+
+/* mapping table of curl metadata to extended attribute names */
+static const struct xattr_mapping {
+  const char *attr; /* name of the xattr */
+  CURLINFO info;
+} mappings[] = {
+  /* mappings proposed by
+   * http://freedesktop.org/wiki/CommonExtendedAttributes
+   */
+  { "user.xdg.origin.url", CURLINFO_EFFECTIVE_URL },
+  { "user.mime_type",      CURLINFO_CONTENT_TYPE },
+  { NULL,                  CURLINFO_NONE } /* last element, abort loop here */
+};
+
+/* store metadata from the curl request alongside the downloaded
+ * file using extended attributes
+ */
+int fwrite_xattr(CURL *curl, int fd)
+{
+  int i = 0;
+  int err = 0;
+
+  /* loop through all xattr-curlinfo pairs and abort on a set error */
+  while(err == 0 && mappings[i].attr != NULL) {
+    char *value = NULL;
+    CURLcode result = curl_easy_getinfo(curl, mappings[i].info, &value);
+    if(!result && value) {
+#ifdef HAVE_FSETXATTR_6
+      err = fsetxattr(fd, mappings[i].attr, value, strlen(value), 0, 0);
+#elif defined(HAVE_FSETXATTR_5)
+      err = fsetxattr(fd, mappings[i].attr, value, strlen(value), 0);
+#elif defined(__FreeBSD_version)
+      err = extattr_set_fd(fd, EXTATTR_NAMESPACE_USER, mappings[i].attr, value,
+                           strlen(value));
+      /* FreeBSD's extattr_set_fd returns the length of the extended attribute
+       */
+      err = err < 0 ? err : 0;
+#endif
+    }
+    i++;
+  }
+
+  return err;
+}
+#else
+int fwrite_xattr(CURL *curl, int fd)
+{
+  (void)curl;
+  (void)fd;
+
+  return 0;
+}
+#endif
diff --git a/ap/lib/libcurl/curl-7.54.1/src/tool_xattr.h b/ap/lib/libcurl/curl-7.54.1/src/tool_xattr.h
new file mode 100644
index 0000000..56bd9e4
--- /dev/null
+++ b/ap/lib/libcurl/curl-7.54.1/src/tool_xattr.h
@@ -0,0 +1,28 @@
+#ifndef HEADER_CURL_TOOL_XATTR_H
+#define HEADER_CURL_TOOL_XATTR_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 "tool_setup.h"
+
+int fwrite_xattr(CURL *curl, int fd);
+
+#endif /* HEADER_CURL_TOOL_XATTR_H */